回答:
M1のフォルダーapp/code
とvendor
コードプールを見ることができますが、実際にはコードプールではありません。
M1には「コードプール」の概念はありません。
vendor
フォルダは、composerを介してダウンロードするモジュール用です。そのフォルダーにはコードを記述しないでください。 app/code
あなたの遊び場です。ここに独自の拡張機能を追加します。 vendor
フォルダー内の何かを書き換え/拡張する必要がある場合は、フォルダー内で実行できapp/code
ます。ファイルのmodule.xml
M1で行ったのと同じ方法で、モジュールのにソフト依存関係を指定していることを確認してくださいapp/etc/modules/Namespace_Module.xml
。
唯一の違いは、m2では実際には依存関係ではないということです。それらはシーケンスです。
このようにして、モジュールはvendor
フォルダからのモジュールの後にロードされます
app/code
は、遊び場ではありません;)
XM
ベンダーモジュールのLファイルをオーバーライドする場合でも、依存関係について言及する必要がありmodule.xml
ますか?
app/code
その場合、コアモジュールを取得しますが、独自のモジュールを追加することもできます。そして、github経由でm2をインストールする必要がある唯一の理由は、それをいじったり、貢献したりするためです。したがって、これは技術的にはまだapp/code
遊び場になります。
app/code/Vendor
はあなたの遊び場なので、核となるものを壊すリスクはない
app/code
あなたのプロジェクトのモジュールにとって間違いなく正しい場所です。
コードvendor
は作成しないでください(このディレクトリはソース管理では無視されません)。これは、コードがcomposerによってのみ管理され、サードパーティのモジュールまたは再利用するモジュール専用である(そして、packagistまたは独自のsatisリポジトリで公開している)ためです。 )。