プロとしてのデータモデリング入門という書籍名はどうよ?

 まあゲームの話の前にちょっと本の話。ITエンジニアとして若い頃は色々な会社の人事というか、会社の人事って偉いんだけど、そうじゃなくて派遣技術者として会社と面談することがあるんですよね。法的には会社と会社で技術者何名とこう指定して、来た人を受け入れないといけないわけですが、慣習的に会社の誰かが来る予定の技術者をひとりずつ面談で決めるんです。そりゃ若い頃は何も知らず、人事でも無い会社で技術者を呼ぶ顧客にだいぶいびられましたよ。

 いびられた理由は今にして思うとおどおどとした感じと若いからだと分かるのですが、言われた通りスキルや知識が足りないのだと本を買って勉強していましたよね。俺は勤勉化と言われると、出社時間とかの勤怠面で遅刻するようなだらしなさと、それでいて今の自分に満足しない向上心を持っていて、ただ勤怠をあらためれば済むことを「もっと出来るようになってやる!」みたいな変なエンジンのかけ方してました。

 その前置きからのこの「プロとしてのデータモデリング入門」というプロなのか入門なのかというどっちつかずの怪しい本を選んで読む選書センス。プログラマーとしてはプロだけど、IT業界はコンピュータであってプログラミングだけで動いているという理解では、世界中にあるコンピュータネットワークの世界をミクロ視点からしか理解できない。確かにその理解を進めれば、堤防がアリの穴から決壊するように、金融でもATMの数字をピピッといじれば大金が出てくるかもしれない。しかしまあ、ATMに現金として入っている以上のお金は出てこないわけで、もっと大きなお金というのは実は札束のような実態ではなく、預金通帳や帳簿でもないかもしれない。

 そのへんの実存に際して、データモデルという考え方は必要だと最近思います。

 つまらない話はこの辺でおしまいにして、仕事で偉くなってお金をいっぱい使えるようになって、例えばはじめは100万、100万でゲームを作れるか、次は1000万。プレステとかのゲームを作るにはそれくらいいるのではないか、対策RPGやAAAタイトルとなると億単位ではないか、とまあ年食って持つ現金以上にやりたいことに見合う額も増えて行って、アキレスと亀のように永遠に追いつかない。

 それをいちど諦めて、個人開発でゲームを作り出して、段々と真の値段をあぶりだしてゆくわけですが、学問としての情報科学とかオブジェクト指向から入った俺が、まずオブジェクト指向設計で自機Fighteクラス、敵機Enemyクラス、敵20機ならEnemy(20)とかやってしまうの、そこから進まないの、実はまだオブジェクト指向していない。

 そりゃ、敵が20機は数なわけで、実装的にもEnemy(20)は配列なわけですから。

 この辺を自作インベーダーではEnemyクラスを作ってから、ビットマップの絵をひとつと20機分の座標の配列とMoveメソッド、Shotメソッド、NewとかHitという風に良くあるクラス設計を考えて作って、先日中五日ほどでひとしきり終えたわけですが、あらためて昔の上司がEnemy(20)で良いんじゃないかと持ち掛けてくるほど今のコードはチンプンカンプンになってしまっています。

 それでもういちど設計を考えると、自機、敵機以外にどこぞに司令塔があって、それがプログラマの頭の中で、初期化処理で20機用意するとかではなく、そうだそこに実存するのは編隊クラス、データモデリング風に言うと編隊エンティティ。自機、敵機、編隊(敵機20)という風にすると敵の座標を決めるのは編隊クラスという事になる。

 これはオブジェクト指向以前のプログラムのパラダイムでどういう風に実装していたのだろうなとも思うんですが、設計者の頭には少なくともそれがあり、全部自己完結するのではなく他者説明性とか視覚化を考えるとき「編隊で飛ぶように」とかは言うんだけど、実際にモデル図に編隊を書けるデザイナーって今まで俺は見たことが無いです。

 いやまあオブジェクト指向とデータモデリングはまた違うだろってツッコミもあるかとは思いますが、データ設計とか考えるうえで、このへんももういちど勉強してみようと。本の内容はモデリングと商品の受発注システムとかビジネス系の内容ですがね。

 多少の自惚れを交えて言うと、会社と仕事をした時に自分がもらえるプロとしての単価を考えたときに、その同じ人間である俺がニートで自宅開発をして幾らの時間がかかったかをそれが役立って実益となって報酬が出るのとは別に、ただ仕事としてどれくらいの価値をがあるかを時間給的にザックリはかると、遊びのプログラムに何円相当の労働を要しているか、それを過去にゲームの台や基板が幾らくらいであったかと比べると、だいたい金額的に釣り合う所まで来ていて、まあ似たようなレベルの人が同じような見積もりで作ったんじゃないかと。

 いやこれは実は麻雀作った時にも計算していて、その時に薄利多売を考えて価格カルテルにちょっと違反していたのは、俺がその業界に入れていなかったからですが、それからおよそ9年、値段も頑張りも足並みのそろう所まで来たのかなと。もちろん個人開発ですので、団体戦にかかる費用や役職も考えると、いまはまた実質ニートですが。

 いびられて嫌な仕事を辞めちまって、好きなことしている間に身に付いたことと、それでも嫌々やっていた仕事でも、その業界で出世しようと勉強したこともそれはそれで何かの糧にはなっていて。昔の本を読みなおすと歩んできた道を少し振り返れます。

 まあ、STGというと自機と敵と弾以外はステージエディタで作るものという慣習があるようですが、ラインナップされる前のゼビウスとかスターフォースとかのマップと空中敵の早回しみたいな世界線で作られているゲームって後続には滅多に無くて。

 「こういう面」と定義される前のSTGには、その頃既に編隊は実存したわけで。


🄫1999-2025 id:karmen