問題タブ [convention-over-configur]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Models 以外のフォルダにモデルを配置することの何が問題になっていますか?
私は ASP.NET MVC の新しい学習者です。いくつかの本とコード サンプルを調べました。私が学んでいる間、私は以下の質問を思いつきましたが、以下の点を明確に理解できません.
ほとんどの本では、モデルをModels
フォルダーに配置することは構成よりも慣例であると説明されています。また、ASP.NET MVC フレームワークは、開発者がモデルをそのフォルダーに配置することを想定していると述べています。ただし、ほとんどのコード サンプルと他の多くの開発者は、別のクラス ライブラリ プロジェクト (つまりProject)Models
など、以外のフォルダにモデルを配置します。ViewModels
Services
これら2つの方法に違いはありますか?Models
モデルをフォルダーに配置した場合、ASP.NET MVC がモデルに対して行うことはありますか? それらの良い点と悪い点は何ですか? あなたのプロジェクトはどうですか?
ruby-on-rails - Railsでコントローラを単数形で命名することの欠点は何ですか?
Rails では規約に従っていることは知っています。また、コントローラーには複数形で名前を付ける必要があります。最近、私はこのフレームワークと Ruby にまったく慣れていないので、フリーランサーを雇って Rails のアプリケーションの一部を手伝ってもらいました。持っていたPortfolioController
- ポートフォリオはエントリのコンテナであるため、これはちょうどいい感じです (誰が「私はポートフォリオを持っている」と言いますか?)。フリーランサーは、それは正しくない、慣例に従わないと問題が発生する、と言い、名前を に変更しましたPortfoliosController
。PortfolioController
ではなくコントローラーに名前を付けた場合に発生する正確な問題は何ですかと何度か尋ねましたが、PortfoliosController
「問題が発生するでしょう」以外の説明はありませんでした。
それで、誰がそれらの問題が何であるか教えてもらえますか?
php - 慣習によるコーディングは柔軟性を妨げますか?
まず、私は慣習とチーム全体の遵守に 100% 賛成です。ただし、私は慣習に従ってコーディングをほぼ強制するフレームワーク (主にさまざまな PHP だけでなく、Ruby on Rails など) も検討しています。表面的にはこれは素晴らしいことのように思えるので/controller/action
、たとえば URL は直接 に変換されます。モデルは DB テーブルにちなんで命名され、システムは非常に単純なオートローダーを使用して、すべてのファイルをどこからロードするかを正確に認識します。
ただし、私たちはホワイトレーベルのプラットフォームを運営しており、ほとんどのクライアントで機能するものが他のクライアントでも機能するとは限りません. 特定の URL パターンが必要な場合があるため、ルートをカスタマイズする必要があります。ページのレイアウトを他のクライアントとはまったく異なるものにする必要がある場合もあります。そのため、ゾーン固有のバージョンのファイルが最初に存在するかどうかを常にチェックし、必要に応じてデフォルトにフォールバックするオートローダーになります。これにより、適切な名前のファイルを所定の場所にドロップするだけで済むため、開発が非常に簡単になります。しかし、これらが必要とされるケースは少数であるため、オートローダは、欠落していることがほぼ確実なファイルのチェックに膨大な時間を費やしていることがわかりました。
状況を少し改善するために、規則よりも構成を追加することを検討していたので、標準から逸脱したゾーンは構成ファイルで必要なオーバーライドを見つけ、正しいファイルに直接移動し、既存のファイル チェックをすべて削除します。 、私が収集したものはそれほど効率的ではありません(特に、一部のページでオートローダーへの数百回の呼び出しが必要な場合)。デフォルトで規則を使用し続けると思いますが、必要に応じて構成を引き継ぐことができます。
これが実用的な解決策なのか、それとも推奨される解決策なのかを知りたい
java - Convention over Configuration 機能を備えた Java 依存性注入フレームワーク
このブログ投稿では、Mark Seemann が、依存性注入フレームワークを使用して依存性を構成するためのさまざまなアプローチについて説明しています。設定より規約は、このアプローチの 1 つです。.NET の世界には、この機能を提供する複数の DI フレームワークがあります (NInject、MEF 2 など)。Java の世界で、Convention over Configuration を使用した DI フレームワークを探しています。Spring と Guice を見ましたが、どちらもこの機能を提供していないようです。