いくつかのオープンソース システムを調べましたが、名前空間を使用しているものはありませんでした。主な理由は何ですか?
返信内容:
1 何年も前から言われていることですが、物事が明らかになるまでにかかる時間は短いです。
2 PHP では、これらの要素は必要なく、使用する理由もありません。
3 名前空間が使用しなければならないレベルに達した場合、その質問は適切ではない可能性があります。これは拡張が複雑なので、最初の 2 つを基にして答えます。これは、2 つ買って 1 つ無料という意味では役に立たないものです。
現在、名前空間は広く使用されています。github 上の多くのオープンソース ソフトウェアも名前空間を使用しています。Symfony、larvael など、名前空間を使用すると、オートローダーとクラスの名前付けの競合を簡単に管理できます。
PHP の価値は、十分な柔軟性があることです。現時点では、PHP の名前空間は十分な柔軟性を備えていません。
1. 同社のプロジェクトはすべて低バージョンをベースに開発されており、高バージョンに切り替えると必然的にバグが発生します (コスト)
2. オープンソース アプリケーションはより多くの仮想ホストと互換性があると考えられます (市場)
3.主な理由 プロジェクトで使用する必要がない(利点)
要約すると、コストが高く、市場のサポートが少なく、明らかな利点がありません。
主な理由は、PHP 5.3 がまだ普及していないことです。しかし、私はそれを実際のプロジェクトに適用しました。
PHP 5.3 以降では、名前空間のみがサポートされています
名前空間は言うに及ばず、一部の小規模プロジェクトでは、必ずしもこれらが採用されるとは限りません。
オープンソース システムに関しては、ほとんどが下位互換性を考慮します。たとえば、多くの仮想ホストは php 5.2
です。
互換性って本当に悩ましいですね!
名前空間があってもなくても、互換性はあまり高くありません。
名前空間のあるクラス ライブラリは、名前空間のないクラス ライブラリを呼び出すことはできません。
徐々に人気が出てきますが、今でもとても便利です!
また、実際には、名前空間の登場が遅すぎたということも付け加えておきたいと思います。大規模なフレームワークでは、名前空間によって解決する必要がある問題がすでに発生しているため、より複雑なクラス名が使用されており、そのため名前空間の使用はそれほど緊急ではありません。また、一般的にPHPプロジェクトは開発規模が不十分であり、国内のPHP開発環境は技術開発への関心が低いです。
もちろん、テクノロジーは必然的に進歩します。他のプログラミング分野で広く受け入れられている名前空間のような概念は、設計において失敗する可能性はありません。広く使用されるのは時間の問題です。
5.3 でのみサポートされました。5.3 がリリースされてからどのくらい経ちますか? 5.3 以降に開始されたプロジェクトは何件ありますか?さらに、新しい機能は使用する前に全員がよく知っている必要があります