アプリ使用者とアプリ提供者側との視点の違い
最近、common lispを触ってみたり、C でBTSを書いたりしているので、バランス感覚を失なっているかもしれませんが、思ったことを。
売り文句
アプリの売り文句として、RoR製とか(Pure)Java製*1とかという言葉を見るたびに、違和感を感じていました。これらはアプリ使用者に対しての売り文句になっているのだろうか?
アプリ使用者が望んでいるだろうこと
当たり前のとこですが、アプリ使用者は何製だろうと関係なくて、使い易ければcobol製だろうとbasic製だろうと関係ないはずです。同じ機能、同じ品質、同じUIのアプリなら、間違い無く速く動くほうを選ぶはずです。特に高いお金を払って手に入れるアプリならなおさらです。
アプリ提供者が気持良く開発するために切り捨てられること
write once…とか、DRYとか、オブジェクト指向とかは、激しく提供者側の視点です。アプリ使用者には望まれない極度に高度な抽象化によって、何が失なわれるのかを、正しく把握しておく必要があると感じました。別の言い方をすると、開発者が簡単に作れるようにするために、何を犠牲にしているのかを(以下同文)
自分の頭の中ですら纏まっていないので、この話は、続くかもしれません。
余談
『だ~か~らぁ~~、そういった細かなことは置いておいて。概念モデル、役
割分担を考えて、少しずつブレイクダウンしていきましょうよ~』と言っても、
すぐに『いやいや、メモリの展開がどうのこうの、データベースへのアクセス
頻度がどうのこうの』と細かなことを考えて先に進まないのだ。
Java言語で学ぶデザインパターン入門
そんな時、上のエントリを読みました。勿論 naruhito_t さんの言うように、モデリングできないで、細部のみの話に終始してしまうのは問題ですが、「40歳オーバーのプログラマ~」から、その世代ならではのノウハウを盗んでみたい。うちの会社には居ないので。でもやっぱ、できれば自分が「40歳オーバーのプログラマ~」の上に立つのは、遠慮したいかも…(とても上手に使える自信ないし)
*1:最近じゃ売りにならないか