2

数時間 (再) 検索した後、通常の抽象クラスとテンプレート パターンの使用の説明可能な違いを思い付くことができません。

私が見る唯一のことは、抽象クラスを使用している間、すべてのメソッドを実装する必要があるということです。しかし、テンプレート メソッドを使用している間は、これらのいくつかの抽象メソッドを実装するだけです。

テンプレートパターンの(欠点?)利点と、テンプレートパターンと抽象クラスの主な違いを誰かに説明してもらえますか。

ps私は自分の理解/研究のためにこれをよりよく知りたいだけです

編集:迅速な対応ありがとうございます!しかし、もう少し詳しく説明します(すでに正しい方向に進んでいるため:))。私は抽象クラスが何であるかを知っています!(そして、どのメソッドを実装する必要があるのか​​?)、そしてテンプレート パターン (クラスで定義された手続き型アルゴリズムの一種のスケルトン?) の基本的な考え方を知っています。似てるからちょっと戸惑う!また、私は英語ではないので、何かを監督する可能性があります! 事前にTHNX

4

2 に答える 2

2

あなたが言ったように、テンプレートはパターンです。抽象クラスは、テンプレートを実装するために使用できる言語固有の構造です。一部の言語(PythonやJavaScriptなど)には抽象クラスの概念がありませんが、それはテンプレートを実装できないことを意味するのではなく、別のコントラクトを使用する必要があるだけです。

言語で抽象クラスを使用できることの利点の1つは、コンパイル時に必要なテンプレートメソッド(コントラクト)の実装を強制できることです。JavaScriptのような言語では、コントラクトを強制することはできず、規則/ドキュメントを介してのみ指定できます。

于 2012-04-02T18:35:32.107 に答える