開発中のオンラインゲームに関することを書き綴っています.プログラミング関係の話題が多いですが,よかったら見て行ってください.

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
-------- : スポンサー広告 :
Pagetop

オブジェクト指向の罠 【雑記】

皆さんこんにちは.内藤工場長です.
今回はゲームとほぼ無関係の雑記です.華麗にスルーしてください.(っ_`;)


オブジェクト指向とは,プログラムの各部を部品として分け(オブジェクト化),個々を独立した物(オブジェクト)として扱う考え方です.
近年のプログラミングになくてはならないもので,エラーを減らしたり,保守性を向上させたりするため,時に万能であるかのようにも紹介されます.

優秀なオブジェクト指向ですが,実際にはいくつか問題を抱えています.
本日は皆さんご存知の『ご飯』を例に,それらの問題をご紹介したいと思います.


【1.どこまで分けるか】
山盛りの白米,『ご飯』.早速ですが,これをオブジェクト化してみましょう.
当然,『ご飯』は『ご飯粒』で構成されています.私ならこれだけで細分化を終わりにします.ところが,ある人は『ご飯粒』が『分子』で構成されていることに着目するかもしれません.さらに,またある人は『分子』が『原子』で構成されていることに着目するかもしれません.はたまた,別のある人は『原子』が『素粒子』で構成されていることに着目するかもしれません.
このように,人によってどの程度まで細分化して考えるか異なってきます.しかし,物として扱えるように設計されているため,この問題はあまり深刻ではないかもしれません.

【2.どのように分けるか】
先ほどはご飯を大きさから細分化してみましたが,別の観点からも同様のことを行えます.
例えば,『ご飯』の構成要素を『味』と『風味』,『栄養』のように考えることもできるからです.
このように,人によってオブジェクトの分け方が違ってきます.細分化の問題に比べて,こちらは大変重要です.考え方の違う人が設計したオブジェクトは,大変使い難くなってしまうからです.

【3.ご飯粒を移動させる】
ご飯を食べるときも困ったことが発生します.
ご飯粒のそれぞれが独立した物であるため,ご飯を一気に食べられないのです.
そのため,コンピュータはご飯粒を1つずつ食べなければいけません.
コンピュータは高速ですので,多くの場合は問題ありませんが,時にゲームや学術プログラミングでは致命的になってきます.


上の3つのように,オブジェクト指向はまだ色々と問題を抱えています.
オブジェクト指向の良さを引き出すためには,これらの問題を意識しながら付き合う必要がありそうです.

2009-07-11 : ゲーム関係 : コメント : 0 : トラックバック : 0
Pagetop
コメントの投稿
非公開コメント

Pagetop
« next  ホーム  prev »

プロフィール

内藤工場長

Author:内藤工場長
 20代前半の男性で,愛知県に在住しています.HNはリネージュ2をプレイしていたときに生産職で,リアル苗字が内藤だったことに由来します.
 大学では情報工学を勉強し,独学でゲームプログラミングも覚えました.画像はサークル活動で作ったゲームのスクリーンショットです.
 中々半人前を抜け出せませんが,ゲームで起業しようと模索中です.
こんな私でも応援して下さってる方々がいらっしゃいます.感謝~~~

検索フォーム

ブロとも申請フォーム

この人とブロともになる

QRコード

QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。