1. ホーム
  2. javascript

ジャバスクリプト モジュールパターン vs コンストラクター/プロトタイプパターン?

2023-10-04 07:56:09

質問

モジュールパターンとConstructor/ProtoTypeパターンのどちらが私の仕事に適しているか知りたいのですが。

基本的に私は控えめなjavascriptを使用しています。HTMLドキュメントには.jsファイルへの参照があります。

モジュールパターンについての私の理解。

  • INITメソッドを呼び出す(基本的にモジュールパターンを使って作成し、返すことができるパブリックメソッドである)
  • INITメソッドで、すべてのクリックイベントなどを割り当てる。

オブジェクトや継承階層などを作成する必要がないので、私の状況には最適なパターンのように思えます。

Constructor/Prototypeパターンについての私の理解。

  • オブジェクトを作成する
  • 継承を使用するため (すなわち、スーパータイプのサブタイプ)

控えめなjavascriptを提供するために、モジュールパターンが理想的であるということでよろしいでしょうか?

どのように解決するのですか?

コンストラクタ関数とプロトタイプは、クラスとインスタンスを実装するための合理的な方法の1つです。彼らはそのモデルに完全に対応しているわけではないので、一般的にはプロトタイプの観点からクラスを実装するために特定のスキームやヘルパーメソッドを選択する必要があります。( JSのクラスに関するいくつかの背景 .)

モジュールパターンは、一般的に名前空間(namespacing)のために使用されます。これは、プロトタイピングが適していることとは異なる使用例です。この2つは競合するものではなく、両方を一緒に使うことができます(例えばコンストラクタ関数をモジュール内に置いて new MyNamespace.MyModule.MyClass(arguments) ).