2013-05-01 10 views
10

私は現在Flask Webフレームワークを使用してPythonでWebアプリケーションを作成しています。私は本当に1つのファイルにすべてを配置することに慣れています。他の多くのプロジェクトとは違って、クラス、ビュー、およびアイテムのディレクトリがどこにあるのかを見ています。しかし、Flaskの例では、すべてのものを1つのファイルにまとめるだけです。これは私が行っているようです。Flaskアプリケーション全体を1つのファイルに書き込むことは悪い習慣ですか?

ウェブアプリケーション全体を1つのファイルに書き込む際にリスクや問題はありますか、または機能とクラスを別々のファイルに分散する方が良いですか?

+1

ウェブアプリケーションの複雑さにもよりますが、通常は実際のアプリケーションロジックからウェブを分割します。 –

答えて

15

通常、アプリを1つのファイルに保存するのは、些細なことや教育上の目的以外ではお勧めできません。

私はので、ここでサンプルフラスコのプロジェクト構造、スケルトンやテーマに関する他の情報へのリンクです、車輪の再発明をしたくない:

そして、もちろん、すばらしいフラスコmega-tutorialを読んでください。あなたのアプリケーションがどのように成長し、論理部分に段階的に分割されるのかがわかります。

+1

これは私のものです:https://github.com/fogleman/HelloFlask – FogleBird

2

これには正解または間違いはありません。非常に小さなプロジェクトであれば、1つのファイルを管理しやすく、おそらく唯一のプロジェクトです。ただし、プロジェクトを複数のソースファイルに分割する理由は次のとおりです。

  • 変更が必要なものだけを変更してコミットします。ここで意味することは、あなたのコードがすべて入っている単一の大きなファイルがある場合、そのファイルの変更はファイル全体の保存/更新を意味します。あなたが間違いを犯したとしたら、コードベース全体が台無しになるかもしれないと想像してください。

  • 大規模なチームがあり、異なる職務と責任を持つ可能性があります。たとえば、デザイン/フロントエンド(HTML、CSSなど)のみを担当するデザイナーを持つことができます。 1つのファイルにすべてのコードがある場合、それらは心配する必要のない他のものにさらされます。また、他のことについて心配することなく、自分の部分で独立して作業することもできます。ここに複数のソースファイルを置くことで、間違いのリスクを最小限に抑えます。

  • コードベースが大きくなるにつれて管理が容易になります。 1つのファイルで100,000行のコードを調べて問題をデバッグしようと想像できますか?

-2

マイクロフレームワークなので、設計されていないため、完全なアプリケーションを構築するために使用するべきではありません。

長い間、プロジェクトを小さくして(ちょっとした書式、いくつかのテーブルや静的な内容を中心に)、大丈夫です。しかし、より大きなアプリケーションを使用したい場合は、モジュール性とコードの再利用の観点から、フレームワークの能力を「プログラム」することができます。その場合、すべてが独自のモジュールで分離された完全なフレームワークに移行することができます。

+3

マイクロは適切ではありません。実際には、創造性のためにはるかに広いスペースがあり、フルスタックフレームワークのワークフロー要件に縛られていないので、それが適切であることを意味します – Tigra

関連する問題