トップ 差分 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

Diary/2012-11-6

クラスのインスタンス/JavaRock

必要に迫られてクラスのインスタンスのフィールド変数アクセスについて考えている.
ちなみに今は,クラスのインスタンスに対してはメソッド呼び出しだけが許されていて
フィールド変数へのアクセスはできない.

実装案1

フィールドをインスタンス内にレジスタとして持たせる
インスタンス生成側には,そのインスタンス内のレジスタにアクセスできるように
入出力ポートとして用意する.

実装案2

フィールドを分解して,インスタンス生成側にレジスタとして持たせる

はて,どっちがいいか?

より,"クラス"をJavaに近い形で実装をしていくには,実装案1の方が楽そう.
ただ,たとえば「クラスのインスタンスの配列」みたいなものを考える場合には,
実装案1だと,ちょっと厳しい.
なぜならインタンス側は,自分が配列として生成されたものかどうか分からないから.
たくさんの「インスタンスの配列」を作った場合,
レジスタが全部スライスにマッピングされるのでリソース使用量的には厳しい...

とりあえず実装2でいくか?

できないことは,あとから考える!!...でいいのか?

いろいろ夢想してみる

よく考えたら,元のソースコードに拘る必要は,あまりないのだから同時にアクセスしない変数をメモリにおしこんで,
配列の形をしてても同時にアクセスすることで高速化できるものはLUTRAMやレジスタに格納する,
なんていう最適化も考えられるのか.