ひ孫

犬のこととか書いていきたい

FuelPHP2.0への不安

結構よさそうなので気になっているFuelPHP。
でも2.0(https://github.com/fuelphp)を見るとなんかちょっと雲行き怖くなる。

ファイル名のルール変更(lowercase揃えじゃなくなる)

とりあえず気になるのがこれ。
今のコーディングルール(http://docs.fuelphp.com/general/coding_standards.html)だと

File Naming
All file names must be all lower case. No exceptions.

つまり例外なくぜーんぶ小文字にしろってなっている。しかし
https://github.com/fuelphp/fuelphp/wiki/Coding-Standards をみると

File name

The casing of filenames and directory names inside the classes directory should match the classnames/namespaces exactly. All other files and directories are fully lowercase by convention but will follow the casing you configure/input.

classesディレクトリ下のファイルは名前空間にそろえて大文字にせよ。それ以外は慣例に従って小文字にせよってことらしい

全部小文字ってルールは気に入っていた部分なのにだいぶ残念。
多分使い分けるとき忘れてしまいそう。あとwindowsの環境で動作させたかったりすると大文字小文字の問題が出てウワーってなりそう。
PSR-0というautoloader用の規約のためっぽいのでそれに慣れれば気にならなくなるもんなんだろうか?

Validate::forge() → $this->app->forge('Validate')

今のfuelphpだとだいたいの関数がstaticになってて、例えばValidationの呼び出しの時は

<?php
    $validate = Validate::forge()

みたいにstaticにしているのをやめるということっぽい。

staticだとテストがやりづらいとかそういう理由っぽいけど
komodo editなんかだとうまく補完効いてくれるのがありがたかったので残念。

http://fuelphp.com/blog/2012/03/why-the-20-changes
ここを見ると
「IDE用に@var書くよ」
とか
「Validate::forge()みたいなのもLegacyとして使えるよ」(それってほぼ非サポートって意味じゃないの・・?)
ということを言っているけど、@var書かれたところでIDE側はそれがValidateなのかViewなのかとかは判断不能。
なので結果IDEにはやさしくないフレームワークになりそうな予感がしている。
(IDEに頼るのはゆとりだけど、本家のブログのコメント欄でも議論されてるから思ってるのは僕だけではなさそう)


$this->app->forge_validate()とか $this->app->forger->validater()とか
HMVCの利点生かして自分で拡張してやればちょっと使いやすくなったりするかな、とかは思っていたりする。


でもViewModelがPresenterって名前になるとかは良いのですぐにでも取り込んで欲しい。