ページ

2010年3月3日

プログラムのレイヤーとかインターフェースとか

いつのころからか、プログラミングするときにはインターフェースとかAPIのレイヤー構造を意識するようになっていました。アリエルの年寄り連中も常にこのあたりを意識して設計したりプログラミングしたりしています。アリエルのプログラマ達は優秀な人が多いです。業界の平均的なプログラマよりレベルが遙かに高いです。それでも、全員がインターフェースやレイヤーを意識できるわけではありません。

年寄り連中(と言っても30代後半ね)は、C/C++のようにヘッダーファイルと実際の実装が分離された仕組みで育ってきました。インターフェースやレイヤーを意識できるかどうかの違いは最初はCなどの経験のあるなしが大きいと思ってましたが、それは幻想でした。Cをやっていても意識できない子はできないのです。まあ、それでもそこそこのプログラミングができるのはすごいと言えばすごいのですが・・・。

経験の違いかと思ったりもしました。半分は正しいと思います。でも、アリエルの20前後の若者は、このあたりを意識できるので、単純に経験だけではないようです。学ぶための何かがあるんじゃないかと年寄り連中は考えました。

年寄り連中はそこで頭を絞りました。自分たちがやってきた遠い過去を思い出そうとしますが、どうすれば、もしくはいつから意識できるようになったかわかりません。プログラミングの本も、このあたりを書いてあるものは見かけません。アーキテクチャの本もちょっと違います。で、記憶の断片を寄せ集めると、MFCが良くも悪くも刺激になったんじゃないかと、冗談交じりになりました。

MFCは美しくはないし、バグも多いし、Win32 APIのC++のラッパーでしかないので、自分たちでその大体を作ろうというモチベーションになって、そこでの試行錯誤で学んでいくことが多いのではないかと。そうこうするうちにWin32 APIには何とかExとか何とかEx2とかAPIがぶざまに拡張していく様をみて、設計の難しさや一度作成したAPIの変更の難しさ、互換性をどう維持していくのかとかを学んでいったんじゃないかと、勝手に分析しています。

これが真実かどうかは分かりませんが、こんなことをやっている時間は今はないし、効率的でもないです。口で言っても実感が伴わないと頭の中の知識でしかありません。

年寄り連中は困り果てて、そのうちその辺が意識できる若者に教えを請うのかもしれません。でも、ちょっと前にちらっと探りを入れた限りでは、彼らもなぜそうなったのか、わかっていないようです。当たり前のことを当たり前にやっているだけなのかもしれません。質が悪いです。



0 件のコメント: