PHP 5.5.0 released.

移行が進まない5.3系のサポート期限もこれから1年半後となるんですかね。
WindowsXPが対象OSから外されました。これで化石PCを渡されても笑顔で「無理っす」と断れます。

新機能

新機能は、例外のtry-catchブロックでfinallyが使えるようになった。どんどんJavaです。
empty()が変数だけでなく任意の式に対応したのは、偶に関数ぶち込んでエラー吐いて?となるので便利かも。
それ以外は平易な文法が売りの言語をワザワザ自分で壊してるようにしか思えない。

元がPerlの代行にプログラミング初心者でも簡単に実装できるのが始まりな訳で、大規模なシステムを想定してないプログラミング言語、たぶん。
下位互換とオブジェクト指向言語からのリスペクトの狭間で自壊していく運命なのか。今後が気になります。

後、さり気なく
>ClassName::class で、 ClassName クラスの完全修飾名を取得できるようになりました。
なんてあって、誰も使ってない事でお馴染みの(自分統計)namespaceを使う日が来そうです。か?

なんでも良いからIDEが完全一致で補完できるような仕様にしてください。

日本ではオープンソース界隈やベンチャー企業が運営しているWEBサービス以外では余り見ないrubyですが、
生みの親である まつもとゆきひろ氏 の公演を読むとプログラマはrubyって素敵かもってなります。

Ruby開発が教えてくれたこと

既に2年近く前ですが、丁度私の誕生日だったりするのが運命を感じなくもありません。(こじつけ)
まともなプログラマーならrubyが言語仕様的に優れているのは一目瞭然です。

初心者への壁が低いPHPは誰にでも出来る印象と事実、ある程度の壁を越えなければ習得、1つのシステムを作る事ができないプログラミング言語と違い、エンジニアは玉石混交です。
しかも石のが多い。フリーランスで仕事を請ける身として実感できるのはJavaとPHPで単価が違う事です。
確かにJavaは基幹系システム、PHPはWEB系システムという切り分けと、上記の学習コストから試算された単価なのかもしれません。
ですが実際はどうでしょう?

今、割と多い構成は基幹部分はJava、ユーザー側はPHPというシステムです。
大規模な開発になれば、PHPのようなフワフワした言語仕様にイライラするのは当然。

それなら単価がどうあれrubyに移行した方が幸せじゃない?と思うのは当然です。
しかもこれが日々変化を求められるWEBサービスなら尚更。

PHPにも、これまでの資産(システム)があるので、そう簡単にはなくならないでしょうが、COBOLやFORTRANのように変えがそう簡単にきかない基幹システムに利用されている訳ではないので、数年でひっくり返る可能性は十分にあります。

TwitterがRubyから移行した事で有名になったScalaしかり、そういう時期に入ったのかもしれません。

追記
Rails、あんたなんか嫌いよ – Rails での OO 設計について

RubyはRubyで大変らしく、gem関連はredmineのインストールで散々ヤラれてましたが、使う側も大変なんだなあと。

変数に型がないということの利点について考える

開発言語は道具のひとつに過ぎないので、○○だから優れているとか、そういう話じゃないと思うんですがね。
私はPHPの雑な言語仕様に慣れているけど、これが10人以上の開発者が関わるならJavaとか型があった方が良いなと考えます。
開発言語の理解度やスキルに差がある場合、言語仕様レベルで品質を担保できる仕組みがあった方が楽だから。それだけです。
フレームワークを使うのも半分はこれが理由で、コーディング規約やデザインパターンで統一性が確保できるハズだからです。
極論ですが、別に自分のソースだけではなく全員のソースレビューをする(できる人材が居る)会社なら道具なんて尚更何でも良いです。

PHPに限っていえばis_string、is_intとかある時点で当初は?となりましたが。
それも入力値のバリデーション用と考えるか、functionで毎度、引数の型判定から例外を投げるようにするかで変わってきますし。
毎度書くとエラー処理が冗長化されるので最終的なDB処理のfunctionのみで書くのか、それすらせずにSQLエラーで返ってくるのを待つのか。

それは求めるモノによるので、使い分ければいいじゃないって元の話に戻るのでした。

Eclipse4.2 PDTをインストール

すっかりSublimeText2に乗り換えたつもりでいましたが、PCがパワーアップしてEclipseが超速起動、メモリも16GBで湯水のごとく余っている。
あのタブ切り替えのモッサリ感とかどうなったのかなーと、4.2に再チャレンジ。

Javaもセキュリティホールで緊急アップデート勧告が出ていたので、この際64bit版にそろそろ移行しようではないかと。

後はいつもお世話になっている日本語化+各種プラグイン詰め合わせ済みのPleiades版Eclipse4.2の64bit、PHP Standard Editionをダウンロードして解凍するだけ!とは行かない。

PHP アプリケーション開発のために Eclipse に入れてるプラグインと設定。

こちらはモッサリ時のEclipse4系で3.8で我慢されておりますが、上で入れた4.2はサクサク動く上に、記載されているプラグインも概ね入ってます。
・AnyEdit
・EGit
・Eclipse Color Theme

・Marketplace Client
なんて面白そうなプラグインが出てるんですなー。

後は設定など参考にさせていただきました。

ちょっと古いですが、プラグインとしてはインストールできました。
DB設計の神ツール「ERMaster」なら、ここまでできる
動作は未確認です。

追記
Eclipse4.2 SR2がリリースされています。
15 個のパフォーマンス問題が改善! Eclipse 4.2 Juno SR2 リリース

・XML エディター切り替えが超遅い
・エディター開閉時のオブジェクト・リーク
・ビュー開閉時のメモリー・リークいっぱい
・何にもしてないのに毎秒数百のオブジェクト割り当て
・エディターの後選択の概念の実装忘れてた
・パーツ活性化時に後選択イベントを 2 回送出
・オーバーライドした IContributionManager#getVisible が 2000~1万回呼ばれてる
・アクション・バー破棄してない
・CTab 描画の改善
・URI 指定のファイル検索が遅い
・行移動が超遅い
・コンテキスト・マネージャー呼びすぎ
・ポップアップ・メニューのリスナー・リーク

私の環境では割りとサクサク動いてたのはリソースが湯水のようにあったからでしょうか・・・。