これが私の推奨事項です。
Webサイト
Web サイトで TypeScript を使用している場合は、モジュールを使用して完全でスタンドアロンの機能のチャンクを囲み、1 つのファイルに保持します (管理できなくなった場合を除きます)。「モジュール a」が「モジュール b」の内部ビットにどれだけのアクセスを持っているかについては控えめにします。
生成されたすべての JavaScript を 1 つのファイルにバンドルして縮小します。
モジュールを次のように宣言します。
module MyModule {
// ...
}
そして、参照を使用して他のコード ファイルでそれらを使用できるようにします。
///<reference path="MyModule.ts" />
ウェブアプリ
Web アプリの場合、スクリプトを多用するものをどのようにするかを決定する必要があります。軽量化する場合は、Web サイトのように扱います。多くのスクリプトを作成する場合は、AMD が最適です。
AMD では、フォルダー構造を使用してコードを整理できます。ファイルはモジュールなので、module MyModule
宣言を使用する代わりに、ファイルに名前を付けますMyModule.ts
。次に、フォルダーとファイル構造を使用してコードを整理し、必要に応じてモジュールをインポートできます。
import myModule = module("./Messaging/Async/MyModule");
したがって、名前を付ける必要があることを除けば、ステートメントと考えimport
てください。using
実行時に、モジュールのロードを処理する何かが必要になります。これにはRequireJSが一般的な選択肢です。
ページに 1 つのスクリプト タグを追加するだけで、RequiresJS が読み込まれ、最上位モジュールの名前が伝えられます。
<script data-main="/Messaging/Async/MyModule" src="scripts/require.js"></script>
サーバーアプリ
サーバー アプリの場合、ほぼ確実に CommonJS を使用することになります (たとえば、nodejs ではデフォルトでサポートされています)。
サーバーがモジュールをロードすることを除いて、AMD とほぼ同じように機能します (AMD は実際には CommonJS に基づいています)。そのため、モジュールをロードするスクリプトを含める必要はありません。
ゴールデンブレット
これは本当にすべてのガイダンスです。必要に応じて、非常に大きなプログラムに Web サイト スタイルのバンドルを使用することもできます。スクリプトが一度ダウンロードされてキャッシュされることを考えると、初期費用は単純さに見合う価値があると判断できます。
そのため、特定のプログラムに合わないと判断し、別の方法でやりたいと思うまで、ガイダンスを使用してください。ガイダンスは、の原則に基づいています...
- Web サイトの http 要求の数を減らす
- Web アプリ / サーバー アプリの可読性と保守性を向上させる
- Web アプリ / サーバー アプリに必要なものだけを読み込む