Web開発では、Struts、Rails等MVCフレームワークの上に乗っかって、ビジネスロジック等のみ記述することが多く、オブジェクト指向があんまりわかってない人が書いても、それなりのものが出来上がるようになってきていると感じるのですが、どう思いますか。
「オブジェクト指向設計の技術」の定義が分からないのですが、MVCについては、そもそもSmalltalkから派生しており、スーパークラスの存在を前提とした技術です。したがって、クラスを理解していないとMVCフレームワークを扱うことはできません。
その意味では、サブルーチン型言語しか知らない技術者が、いきなりMVCフレームワークを扱うことは困難だと思います。
多くのMVCフレームワークを使った経験があるわけではないので、外しているかもしれませんが・・・
そもそも、MVCフレームワークが動く言語を使って、クラス内のメソッドを呼べなければ、そもそも
MVCフレームワークを使いこなすことはできないでしょう。しかし、オブジェクト指向できちんと
クラス分けして設計したりすることがたとえできなくても、クラス内のメソッドを呼べる程度の知識
とMVCフレームワークさえ使えば、それなりのWebサイトは確かにできるでしょう。
それはまぁ、昔からC++を手続き型言語として使っていた人は山ほどいたわけで、オブジェクト指向
を理解せずにオブジェクト指向言語でプログラムを書いている人がいっぱいいるのは、いまに始まっ
た話じゃありませんよね。
オブジェクト指向のデザインパターンや、きちんとしたオブジェクト指向の概念とか、ORマッパーとは
何ぞやとか、RDBってどういう仕組みで動いているっだ何だみたいな話は、知っていなくてもフレーム
ワークのマニュアルに書いてあることだけをやっているなら、必要はないですよね。
ただ、パフォーマンスを上げるためにフレームワークからあえて外れたことをやろうしたり、フレーム
ワーク自体に手を入れることを考えたりする時には、そういった知識がないと判断のしようがないです
から、フレームワークのフレームからいつまでも抜け出せないですよね。
そういう意味で、MVCフレームワークを使ってWeb開発をするにしても、持っておくべき知識だと思います。
数年後に、フレームワークとともに捨て去られるエンジニアになりたくなければ。
コメント(0件)