ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptのモジュール化とは何か、そのメリット・デメリット_基礎知識
現在、backbone、emberjs、spinejs、batmanjs などの MVC フレームワークが浸透しています。 CommonJS、AMD、NodeJS、RequireJS、SeaJS、curljs、およびその他のモジュラー JavaScript が登場します。 Web フロントエンドは大規模なフロントエンドに進化しており、Web フロントエンドは非常に急速に発展しています。
1) モジュール性とは何なのか見てみましょう。
モジュール化は、システムを独立した機能部分に分離し、モジュールのインターフェイスを厳密に定義し、モジュール間の透明性を確保する方法です。 JavaScript のモジュールは、一部の C、PHP、および Java で共通です。
C は、.h ファイルをインクルードするために include を使用します。PHP は、.php ファイルをインクルードするために require_once を使用します。
java は、パッケージをインポートするために import を使用します
Thisにはモジュラーのアイデアがあります。
2) モジュール性の長所と短所:
a>長所:
保守性
1. 柔軟なアーキテクチャ、焦点の分離
2 。モジュール間の結合と分解が便利
3. 単一モジュール機能のデバッグとアップグレードが便利
4. 相互に干渉することなく複数人で共同作業
テスト容易性
1. 単体テストに分割可能
b>欠点:
パフォーマンスの低下
1. システムの階層化、呼び出しチェーンが非常に長くなります
2. モジュール間でのメッセージの送信により、多くのパフォーマンスが消費されます
3) モジュール化 は、seajs を使用して最近のプロジェクトでも使用されていますが、jquery、jquery easyui/または jquery UI コンポーネントを参照する場合、多くの jquery プラグインが使用される可能性があるため、非常に複雑な相互作用では、モジュール間に多くの依存関係が存在します。define() メソッドを使用して導入されることがあります。何か良い方法はありますか?
4) 添付ファイル:
凝集
凝集は、モジュールの内部実装を指します。これは、情報の隠蔽とローカリゼーションの概念の自然な拡張です。 module 内部コンポーネントがどの程度密接に相互に結合されているか。利点も明らかで、関連するタスクがグループ化されると非常に読みやすくなります。 設計時には、モジュールの独立性を高めるために、モジュールの凝集性を可能な限り改善する必要があります。
結合度
結合度は、モジュール間の関連度の尺度を指します。結合の程度は、モジュール間のインターフェイスの複雑さ、モジュールが入力または呼び出される場所などによって異なります。凝集性とは対照的に、設計時には疎結合システムを追求する必要があります。