こんにちは、読者の皆様!この記事は、最初のWebアプリケーションを作成することを決定したすべてのデータサイエンティストを対象としています。この出版物では、コードリストは掲載しません。インターネット上には、さまざまなフレームワークで記述されたサービスを構築する実際的な例がたくさんあります。しかし、プロセスのロジック、ソリューションのアーキテクチャ、そして最も重要なこととして、スペシャリストが最初に遭遇する困難についての理論的な記事はほとんどありません。私はこのニッチを埋めて、誰かに役立つかもしれない私の個人的な経験を説明することにしました。
特にこの記事では、FlaskとDashで2つの同じ例を用意し、GitHubに投稿しました。これらは、Habrと呼ばれる抽象的なIT市場の単位経済指標の計算と出力を示しています(そして、今ではすべての企業がeコマースに従事し始めているのでなぜそうではありません:)。
添付資料の段階的な要約の形で会話を構築することを提案します。その過程で、私が個人的に最も困難または興味深いと感じた瞬間に注意を向けます。そしてもちろん、私がバックエンド開発者として犯した間違いに確実に焦点を合わせます。
「OPP:方法がわからない場合は、服用しないでください!」 OPPに関して言えば、何らかの理由で、私は自動的にDjangoとそのクラスを思い浮かべます。しかし、新進のデータサイエンティストやデータアナリストの仕事を見ると、まったく異なる状況がわかります。クラスは、クラス自体のために使用されます。すべてのコードは、言語のこの構造に単純にマージされます。この「モンスター」は何の責任がありますか?すべてのために!エラーを検索する方法やコードを書き直す方法は明確ではありません。個人的に、私はこの問題についてそのような意見を持っています。 OPPをいつ、どのように、そしてなぜ使用するかがわからない場合は、小規模な開発には手続き型機能スタイルを使用することをお勧めします。
「恥ずべきことですが、均一です。一人で作業している場合でも、統一された名前空間形成システムを開発します。これにより、第一に、コードの可読性が向上し、第二に、関数が別のページでどのように命名されているかを正確に覚えておく必要がないため、書き込みが高速化されます。
「プッシュしなくても、コミットします。」GitHubアカウントをお持ちでない場合でも、バージョン管理システムを使用して練習してください。これは、仮説をテストするための追加のシートを作成せずに、補助ブランチで実験を実行できるため、非常に便利です。私はしばしばこの推奨を無視しますが、無駄です。
“ .” ? , . , PHP, Ruby, C#:
Flask – HTML+CSS
Django – HTML+CSS
Flask Rest API/FastAPI/Django Rest Framework – HTML+CSS+ Javascript (Vue, React, Angular)
Dash ( Flask) – Dask ( React)
, .
, , – Dash
. , - – Flask
, . , , - – FastAPI – Vue.js
Flask Dash .
, , 6 -, -. , . , .
Flask , , html css . Bootstrap4 , , .
Dash , app.py. , . . asset. - . , , .
“ .” . . , , , . . . etl- .
“ .” . - . etl-, , . , . , , .
“ SQL- , .” . sql. . . . SQLite.
“Pandas , .” , , . Python.
“ , YAML-.” yaml - data scientist- Youtube. . .
“ Docker.“ . Windows, Docker. Windows 10 , Docker Toolbox. , - Docker GitHub. Windows 8.1, , . , . Debian 10. , . , Apache Airflow, .
. , . , . . , Linux. . , Dash docker-, . , , , .
“ , .” . , , . , , , , .
. Dash, . . , app.py 127.0.0.1, 0.0.0.0.
. . .
それで全部です。すべての健康、幸運、そしてプロとしての成功!