phpプログラミングをしています。
…とある他人が書いたソースコードを直していて、classAのコードがファイルXに書かれていると思ったのですが、ファイルXにはclassBも書かれていました。
1ファイルに複数のクラスを書いてはいけないというルールはないし、仕様的にも許されてはいますが、基本的に1ファイル1クラスなのに、後で別の人がつくったためにルールから外れていました。
それに加えて、ファイルXにはclassに属さないfunctionも書かれていました。カオスとまでは言いませんが玉石混合状態です。
構造化を意識して書いてくればいいのにと思う次第です。
先ほどもいいましたが、これをphpの仕様で縛ればよいのでしょうか?
例えば「1ファイルに記述できるクラスは1つまで」という仕様にするのが、
正しいかと言われれば私はそうではないと思います。
ちょっとプログラムを動かしたい時に1ファイルの中にすべてを詰め込めなければ、
なにかとやりにくいはずだから。
クラスや関数などに数の制限を入れる意味がない。
言語は柔軟に書けた方がいい。
人間社会にも言えることですが、
上から制約を設けるよりも、作法を守る人を増やしたほうがよいのは、
プログラミング言語においても同じなのです。
というわけで、昼休みのぼやきでした。
コメント