SPICY SPACE BLOG

愛犬家WEBエンジニアの日常。

フレームワークを勉強する利点

↓こちらのブログを読みました。

今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」

たしかにその通り。僕はRailsどころかRubyさえ使ったことは無いですが、SQLをあんな簡易に自動生成してくれるなんて便利!と思った反面、ちゃんと理解して使わんと大変なことになりそうだと感じました。

が、しかしフレームワークを勉強する利点もあると思います!
僕が今現在進行中でFuelPHP"勉強してます"ので、少し反論をw
PHPエンジニア3年目という、そろそろ脱初心者したい僕がフレームワークを勉強して良かったなと思う点は以下の3点です。

1.必須の処理が何があるか把握できる。

例えば一般的なwebフォームのバリデートの処理。PHP超入門書では「本当はちゃんと入力チェックして下さいね」みたいなことしか書いていません。
フレームワークで用意されている実装されているバリデートのクラスを見れば、ああこれをやればいいのね!と分かります。

ちなみにFuelPHPのバリデーションはこんな感じで使いますよ。

$val = Validation::forge();
$val->add('password', 'Your password')->add_rule('trim')
    ->add_rule('required')
    ->add_rule('min_length', 3)
    ->add_rule('max_length', 10);

僕がはじめて自分で作ったバリデート関数ではtrim関数を実行していませんでした笑
つまり、初心者にとって未知の処理を把握できるのは利点じゃないでしょうか。

2.上級者が書いた安心なコードを見れる、使える。

当たり前ですが、フレームワークの開発者は超上級者です。その言語に精通したプロフェッショナル達が作り上げたモノです。
初心者は上記の僕のようなキケンなオレオレバリデート関数を実装してしまいがちですが、フレームワークに用意されているものを使っておけばとりあえずは安心です。
また初心者はその処理の中身をちゃんと追うことで、この関数はどのように使うのが正しいのか、プロが書いたコードを参照できます。

3.クラスの継承の便利さを実感できる

僕は最初にクラスの継承について勉強したとき、どういう用途で使えばいいのかよくわかりませんでした。
フレームワークの中身を見てこういう風に使っているんだというのを知れたし、フレームワークを実際に使って開発して行く中で便利さも実感できました。ここではじめて継承をちゃんと理解できたのだと思います。

まとめ

とまぁ長ったらしく書きましたが、要はちゃんとフレームワークの中身を見ればそれなりに得るものがあるのでは。
全くの初心者の人がいきなり使い始めるのはもちろんNGだが、ある程度のタイミングでフレームワークに触れるのはむしろいいんじゃないでしょうか。