プロジェクトに適切な Web 開発フレームワークを選択するにはどうすればよいですか?まず、ソフトウェア開発のスタートアップにとって、これは単なるテクノロジーの選択というよりも、時間、人材、物的リソースなどのすべての費用を慎重に考慮する必要があります。会社が規模を拡大し、資金が問題でなくなると、選択肢が広がり、移行や再構築も実行できるようになります。原作者Ramigbtech氏は以下の10点を参考にまとめています。翻訳は次のとおりです。
1. 文法
エレガントな構文を持つ言語は間違いなくプログラミング作業をより快適にしますが、「これはテキストだ」と直感的に信じてしまうと、見た目に簡単に騙されてしまうことがあります。 ).reverse.join('') が " ".join("This istext".split(' ')[::-1]) より良いか悪いかというと、これは単なる表面的な関連付けであり、実際には次のようにする必要があります。本質的に制限があるか構文が煩雑であるかにかかわらず、私たちまたは私たちのチームは、より少ないコードで同等の作業を実行するという選択に感謝するでしょう。
2. 機能とサイズ
ルーティングのために複雑な通常のクエリを記述する必要がありますか?ルートには DSL が組み込まれていますか? ORM を使用する必要がありますか?もしかしたら、もっと他の機能が欲しいかもしれません。最初は軽いフレームを選択することをお勧めします。後で追加することもできます。
3. ドキュメント リソース
豊富なドキュメント リソースを備えたフレームワークは非常に使いやすく、半分の労力で 2 倍の結果が得られます。たとえば、CodeIgniter を学習していたとき、付属のチュートリアルとサポート用のサンプルは、首のないハエのように答えを探し回る必要はありませんでした。比較的に、ExpressJS を学ぶのは私にとってより困難でした。
4. 自動コード生成
フレームワークの自動コード生成機能により、通常はコントローラー/クラスなどを処理するだけで済み、その他の反復的なコーディング作業はフレームワークに任せることができます。現時点では自由にカスタマイズすることはできませんが、動作するプロトタイプを迅速に開発したい場合には、これは積極的な意味があります。
5. モジュール化
Django は、モジュール/アプリの処理に優れています。コードの再利用が容易になるだけでなく、優れたモジュール化された考え方を身につけるのにも役立ちます。 X モジュールが必要なくなったら、それを削除してコードをリファクタリングするだけです。
6. インフラストラクチャ
LAMP や MEAN スタック、Rails/Unicorn などを使用しているかどうかに関係なく、最も重要なことは、このアーキテクチャを十分に理解しているかどうか、また関連コンポーネントを保守する能力があるかどうかです。アプリケーションのフロントエンドとバックエンドが Javascript に関連している場合は、MEAN スタック アーキテクチャを採用するのが良い選択です。
7. コミュニティと更新速度
フレームワーク関連のコミュニティは活発ですか?担当する技術専門家はいますか?当局は技術的な問題の解決を支援するために頻繁に StackOverflow にアクセスするのでしょうか?これらの質問に対する完璧な答えを見つけるのは難しいかもしれませんが、ほとんどの場合、数字は真実です。日付、エンゲージメント、投稿の人気度はどちらも優れた指標です。さらに、セキュリティと脆弱性に注意を払うかどうかも、パッチの更新のスピードによって非常に重要になります。
8. 大きな変更点
つい最近、Angular 2.0 の大きな変更点を聞いて多くのプログラマがショックを受け、気が狂いました。完成は 2015 年後半になる予定ですが、良い仕事をするために一生懸命努力するという考えがありました。コードは過去形になるので、どうすればそれに満足できるでしょうか?もう 1 つの例は、Yii フレームワークです。新しいバージョン 2.0 のリリースは、以前のバージョンの完全な書き直しを意味します。
9. デプロイと依存関係
デプロイは簡単ですか?簡単に拡張できるのでしょうか?導入ツールを学ぶにはどのくらいの時間がかかりますか?上記の質問に答えるのに役立つ Docker のようなツールはありますが、この問題についてはまだ時間をかけて考える必要があります。
10. 人材
対応する開発人材をすぐに見つけることができますか?使用されるフレームワークは私たちの地域で普及していますか?研修は経営の一環とはいえ、スタートアップの場合は時間とお金を慎重に管理する必要があります。
最後に書きます:
中規模のWebサイトであれば、Djangoを選択します。自分のサイトの規模と、サイトにどれだけの開発労力を費やすかがまだわからない場合は、Rails を選択します。フロントエンドとバックエンドの作業をあまり分離したくない場合は、MEAN スタックを選択します。
ランプブラザーズオリジナルのPHPビデオチュートリアルCD/「PHPを詳しく解説」を無料でプレゼント
詳しくは、百度ランプブラザーズ公式サイトカスタマーサービスまでお問い合わせください。 |