現在執筆中の書籍の隠れたコンセプトをひとつご紹介です。
CakePHP のプロマネとリードデベロッパーが新たに立ち上げた Lithium ( Lithium: the most rad php framework ) というプロジェクトがありまして、ゲームとは関係ないので詳しくは述べませんが、状況によっては追っかけてみるのも面白いと思います。
データの取得はクラスメソッド、レコードはインスタンスに対応するようになったみたいで、すっきりした印象があります。よくわからんのですが DAO のパターンに近いのでしょうか?
…と、まぁ、こういった感じで、今まで使っていた技術を交換したくなったり、状況に逆らえず交換しなければならなくなることがあります(どういう経緯かわからないけどお客さんに指定されてるとか)。ただ、今までのノウハウや資産が生きないのもよくないことと思います(例が悪かったです、 CakePHP → Lithium だったら生きそうな資産が多くあります)。なんとか一個人でも力になれる枯れさせるための活動ができないものか日々足りない脳味噌を回す日々…
そんな経緯から、どんなライブラリ、どんなフレームワーク、どんな言語を使うケースでも、「こういうの毎回書いているなぁ…」と嫌になるロジックをまとめようかと思うようになりました(ちなみに、これはゲームにも関係するのですが、このサイトではやりません)。
前ふり終わり。
「あわせて読みたい」に挙がったリンク先を訪問させていただきましたところ、なんとも熱いエントリーを発見です。
[プログラミング] C++ GUI ライブラリ – ひきぷろぐ
「あわせて読みたい」どころじゃないです。「こっちを読んでください」的な勢いです。
ライブラリを使ってしまえばかなり理想的な形に隠蔽できるのですが、解説は必要かと思っております。
…というご指摘があるかもしれません。
さも、C言語の使い手であるかのように振る舞っているが実は!?的な方には待望の一冊かもしれません。はい、私のためにある本です。
面白いですね。
ゲームプログラミングにおいて土台というのは非常に大事だと思います。今でいうところの scaffold (足場の意)というやつですね。メモ代わりにいくつか挙げておきます。
リンカとはオブジェクトコードやライブラリを結合して実行可能ファイルを生成するプログラムです。