Scribble at 2024-01-08 10:06:43 Last modified: unmodified
昨年、ここ数年ほどのあいだに変わってきた言語仕様をフォロー・アップするために PHP の本を読んだ。いま Google で "site:markupdancing.net" として PHP のようなキーワードで検索したのだが、該当する落書きが出てこないので、改めて書いておくと、PHP 8 Quick Scripting Reference: A Pocket Guide to PHP Web Scripting (Mikael Olsson, Apress, 2021) を会社で読み始めて、おおよそ3時間くらいで読了した。200ページにも満たない手軽な本ではあるから、もちろんアメリカの大学生ならもっと速く読むはずで、こんなていどで驚くようではいけない。もちろん読書の目的だとか、読む本の分野、それから自分自身に読もうとする本の内容と関わる予備知識があるかどうかによっても速さは変わる。よって、初めて読む分野の教科書だと、もっと時間がかかるのは当然だ。したがって、やみくもに「速読」のようなインチキ読書や斜め読みを推奨しているわけではない。
それにしても、こうした言語仕様のフォロー・アップをして思うことは、ウェブでもバージョン・アップするたびに最新の仕様を解説するページやブログ記事がいくつも現れるわけだが、僕はそうした仕様変更とか仕様拡張の多くは関わりがないと思っているし、なんだかんだ言っても20年以上に及ぶ PHP のプログラマとして言えることだが、せいぜい OOP の基本的な仕組みを取り入れた PHP 5 の段階から、大して設計手法は変わっていないし、変える必要もなかったし、変えるべきでもないと思っている。そうした言語仕様の変更で注意しておけばいいのは、要するにビルトイン関数や演算子の挙動とかアーギュメントの扱い(代入する項の順番が変わったりすることもある)くらいである。
実際、そうしたブログ記事をせっせと書いているのは、たいてい地方のウェブ制作会社の暇なコーダとか都内のベンチャーに入った新卒とかが殆どで、PHP を大規模に使っている企業の CTO などではない。よって、実はそんな先進的な言語仕様なんて使う案件に携わっている筈もない、末端のコーダが書いているのだ。だから、そのような記事を書いている人々は、その後の記事を見ても殆ど実装例を紹介しない。使ってもいないのだから、紹介できないのである。よって、何週間か前に C の教科書は新しい言語仕様に沿った内容のものを使うべきだと書いたが、そこで展開されている「先進的な」言語仕様なんて無理に使う必要はない。単にコンパイルさえできないほど古い仕様の C を基準にして書かれた教科書を使うべきではないというだけのことである。