名前空間について
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
ヒューマンリソシア株式会社はコラム「名前空間について」を公開しました
PHPer上級者になるために知っておきたいこと
vol.66 ‐ 『名前空間について』
投稿日時:2015/02/09 10:02
カテゴリ: PHPer上級者になるために知っておきたいこと
今回から、装いも新たに「名前空間」についてお話を進めて行きたいと思います。
「名前空間(namespace)」について、まずは概念を簡単におさらいをしておきましょう。
本来的には「集合を分割する事でクラス名とかがぶつからない(衝突しない)ようにする」ための概念、
が、名前空間になります。
例えば、クラス名ないし関数名で、
・sort
・log
・schedule
・db_connect(またはdbConnect /DbConnect)
なんてあたりは、割とあちこちで使われやすく、結構バッティングする事も多かったりします。
特に、共通ライブラリとかフレームワークとかフレームワークとか
(筆者も、自作のフレームワークでその手の衝突を何度経験した事か…)。
そういった時に。
例えばC言語なんかですと「相応に長い名前」を付けていったのですが、
名前空間の仕組みをもつ言語の場合「それぞれに別の名前空間」をあてておけば、
「名前空間の中で」ユニークならよいので、割と衝突が防げるんですね。
また逆に名前空間がないと。書いた通り「衝突を避ける為には相応に長い名前を付ける必要がある」ので、
結果的に「そのクラス(や関数)を使うときに、毎回、相応に長い名前をタイプする必要がある」という状況があり。
それを避けたい、という意図もあるんですね。
この続きは以下をご覧ください
http://resocia.jp/column/2992
ソーシャルもやってます!