1

さて、Flashpunk に関するさまざまなリソースを調べていたときに、世界にエンティティを追加する 3 つの方法を見つけました。

add(new Entity(10, 10));
//***************
var _entity:Entity;
//In constructor:
_entity = new Entity(10,10);
add(_entity);
//***************
FP.world.add(new Entity(10,10));

だから私の質問は、どれをいつ使うべきかということです。

ありがとうございました。

4

1 に答える 1

2
add(new Entity(10, 10));

add()これは、定義されているコンテキストでのみ機能します。私はこの特定のライブラリを使用していませんが、それが似たようなものと呼ばれるクラスにWorldあり、それを継承するものであると想定しています。

var entity:Entity = new Entity(10, 10);
add(entity);

これは、最初の例を 2 行に分割しただけです。また、特定のエンティティを世界に追加する前後に参照することもできますが、他の例では、追加したエンティティを参照する方法はありません。

FP.world.add(new Entity(10,10));

ここでは、World の現在の関連インスタンスを表すFPstatic プロパティを持つクラスがあると想定しています。world任意のコンテキストで実行できることを除いて、最初の例と同じことを行います。これを使用することは避けます。コードの予期しない場所から世界に何かを追加する言い訳としてそれを使用していることに気付くでしょう。これは、コードの可読性の低下、フラストレーション、およびはるかに困難なデバッグ体験につながります.

私の好みは例 2 です。より読みやすく、add適切なコンテキスト内で使用していることを示唆しており、作成したエンティティに変更を加えることができます。

var entity:Entity = new Entity();
entity.property = newValue;

add(entity);
于 2013-02-27T00:40:51.997 に答える