以前の記事で紹介したFactoryパターンですが、派生クラスを生成したい場合、改良が必要です。
そのため今回はジェネリックを実装して派生クラスを動的に生成できるようにしてみました。
作りはとてもシンプルです。
右端のnew()はジェネリック型でクラスをnewする場合には必要です。
ここで注意点は、ジェネリック型の関数を継承するのはおすすめしません。
前回はCreateProductをBaseEnemyFactory.csにabstractとして宣言しておりましたが、今回はBaseクラス側を削除しました。
生成を一括でやってくれると便利で助かりますね。