13

私はjavascriptアプリケーションを作っています。通常、私はさまざまなモジュールを作成し、ユーザーの入力を取得したり、$(document).ready();関数内のイベントをクリックしたりします。これは、小さなアプリケーションでは問題なく機能します。しかし、私が同じパターンに従うと、クリック イベントを$(document).ready();取得すると、面倒になります。

では、巨大なアプリケーション用にこのファイルを整理するにはどうすればよいでしょうか?

前もって感謝します

4

3 に答える 3

12

この件に関して私が見つけた最高のリソースは、Addy Osmani のクリエイティブ コモンズの本、大規模な JavaScript アプリケーション アーキテクチャのパターン ですNicholas Zakas のScalable JavaScript Application Architectureの一部に基づいており、古典的なデザイン パターンと最新のワークフローに適応しています。

適度な複雑さのレベルに達すると、MVC アーキテクチャ パターンのバリエーションを使用して構築されたフレームワークを使用するメリットが得られます。Backbone.jsはフロント ランナーであり、マイクロ フレームワークです。つまり、他のものよりも手間がかかりません。他の一般的な選択肢は、 Ember.jsKnockoutJSです。

拡張機能とボイラープレートもこれらのフレームワークに基づいて構築されており、データ/モデル バインディングやスキャフォールディングなどの反復的なタスクを処理します。Backbone については、Derick Bailey の Backbone.Marionette とBackbone Auraをチェックしてください。これは、Backbone をバックボーンとして使用して構築された Osmani/Zakas アーキテクチャ モデルの、まだ生産準備が整っていない適応です。

于 2012-08-07T09:39:24.153 に答える
6

JavaScript はスクリプト言語であるため、構造は大規模な Javascript プロジェクトで最も重要な問題の 1 つです。アプリケーションの各部分が適切に分離され、「自己完結型」であることが重要です。たとえば、独自のテンプレート、ロジック、スタイル、ローカリゼーションなどを持つ独自の UI コンポーネントを 1 つのフォルダーに作成できます。このような自己完結型により、複雑なフロント エンド コードを管理しやすい方法で整理できます。

コードを整理して自己完結型にすると、他にも解決しなければならない問題があります。

  • これらの疎結合コンポーネントは、密結合とどのように相互作用する必要がありますか
  • これらの個々のパーツを最適化して、本番環境で高速にロードするにはどうすればよいですか

私は、大規模アプリケーション向けの BoilerplateJS リファレンス アーキテクチャの作成者です。

http://boilerplatejs.org

これには、Nicholas Zakas のプレゼンテーションで説明されているベスト プラクティスのほとんどが組み込まれています。コードにはモジュラー製品スイートの実装例も含まれています。JavaScript を使用して大規模なアプリケーションを実行する際に注意する必要がある懸念事項を理解することができます。

于 2012-08-28T05:57:56.987 に答える