私は興味がありますが、なぜ大規模なオープンソースPHPプロジェクトでも、MVCパターンを使用していないようです。大きなオープンソースPHPプロジェクトでMVCを使用しないのはなぜですか?
答えて
phpBBとPHPMyAdmin(とPHPlist、SquirrelMailなど)は、すべてPHP3とPHP4に由来する非常に古いコードベースです。ほとんどの場合、MVCやOOなどのテクニックを使用するように書き直されていません。 PHP5より前のPHPコーディング規則は主に手続き型であり、アプリケーションロジックがプレゼンテーションとデータベースロジックと混在していることを見つけるのは非常に一般的でした。
実際、PHP言語は、それ自体がテンプレート言語であるため、プレゼンテーションとロジックの混在を奨励します。 OOサポートが改善されるにつれて、これらのコーディング方法はますます落胆しています。
しかし、Drupal、WordPress、Facebook APIなどの新しくまたは急速に開発されたコードベースでは、最新のパターンを使用しています。
MVCは1979年に最初に記述されました。私の意見ではあまり現代的なものではありません:) –
1979年のMVCパターンは、デスクトップソフトウェアのGUIとそれらがインターフェースとなるデータのやりとりを記述しています。ウェブ。あなたは本質的に異なるパターンについて話しています。また、PHPが1979年に存在しなかったことと、わずか10年前に同じオブジェクト指向のフレームワークを持っていなかったことも考慮する必要があります。 –
@ Karl fair enough :)しかし、2000年代前のPHPコーディング規約は、MVCではありませんでした。 –
これらのほとんどは既に非MVCのPHPをベースにしていました。私はMVC symfonyのサポーターですが、なぜ彼らがMVCになるようにコードベースを変更したのか分かります。
- 1. ユニットテストとモック(MVCプロジェクトではない)を使ったオープンソースのC#プロジェクト
- 2. D2009のジェネリックは大きなプロジェクトで使用できますか?
- 3. MVCコントローラでSystem.IO.Fileメソッドを使用できないのはなぜですか?
- 4. ASP.net MVCでサーバーコントロールを使用できないのはなぜですか?
- 5. 大きなプロジェクトでのFirebirdの使用
- 6. 大きな整数を使用しないで大きな力
- 7. ILoggerFactoryをASP.NET MVC 5(mvc coreではなく)プロジェクトで使用できますか?
- 8. 大きなプロジェクトにDotNetNuke MVCモジュールを使用する
- 9. Statefull ServerなぜRuby、PHP、Java、ASP.NET、...では使用できないのですか?
- 10. なぜ角2のプロジェクトが大きいですか
- 11. オープンソースのVmware Vagrant Pluginがないのはなぜですか?
- 12. MVCがError.aspxを使用していないのはなぜですか?
- 13. PHPでMVCフレームワークがリクエスト間で持続しないのはなぜですか?
- 14. なぜビジュアルスタジオビルドではなく、メイクファイルを使って大きなプロジェクトをビルドするのですか?
- 15. MVCモデルバインディング:イテレータプロパティにバインドできないのはなぜですか?
- 16. 「?」を使用できないのはなぜですか?オペレーター?
- 17. strerrorを使用できないのはなぜですか?
- 18. $ session_start()を使用できないのはなぜですか?
- 19. 「TermDocumentMatrix」を使用できないのはなぜですか?
- 20. なぜ私はasfreq()を使用できないのですか?
- 21. ASP.NET Core MVCアプリケーションで素晴らしいフォントを使用できないのはなぜですか?
- 22. @HeadMappingがSpring MVCで利用できないのはなぜですか?
- 23. なぜNinject MVC NinjectHttpApplicationがCreateControllerFactory()用にIControllerFactoryを使用しないのですか
- 24. cordovaでクロスウォークプラグインを追加したionic2プロジェクトでWebRTC APIを使用できないのはなぜですか?
- 25. なぜPHPがMalayalamフォントを使用できないのですか?
- 26. HTML PHP - 専門的なURLとhtmlファイル内にphp includeを使用できないのはなぜですか?
- 27. 大規模なプロジェクトでMVCが適用されなくなるのはいつですか?
- 28. PHPコードをコンパイルできないのはなぜですか?
- 29. phpバッチファイルを実行できないのはなぜですか?
- 30. Html.Helpersを使用してASP.NET MVCフォームで `name`属性を指定できないのはなぜですか?
新しいシステムに例を挙げましょう(つまり、過去3〜4年で書かれています) –
あなたが参照しているプロジェクトをリストアップできますか? – Matt
@Matt phpBBはPHPMyAdminだけでなく、心に湧きます。 –