tl;dr:
モジュール内にのみ存在するコンポーネントへのAngular JS依存性注入を制限/リントする方法はありますか?
明らかにスパゲッティ コードである Angular JS コード ベースを継承しました。さらに、アプリは巨大ですが、ほとんどのアプリ機能は 3 つまたは 4 つのモジュール間で共有されます。
Angular はモジュール レベルで名前空間を制限しないため、チームは実質的にモジュールの境界を無視しています。これ自体は問題ではありません (Angular では許容されます)。問題は、アプリケーションの構造が初歩的であり、コンポーネントが再利用可能であることはめったになく、拡張が難しく、モジュールの置き換えについても考えないことです。
現在、お客様から、いくつかのモジュールを簡単に置き換えることができるようにアプリを拡張するように求められており、ソリューションを開発する必要があります。
私は戦略について疑問に思っており、基本的にファサードパターンとインターフェースパターンを実装するモジュール間インターフェースを導入することにより、アプリをリファクタリングするという考えを持っていました.
言い換えれば、モジュールの実装を外の世界から隠して、モジュールがデータの行き来を知らないようにするサービスが必要です。同時に、インターフェイス パターンを使用して、モジュールに渡されるデータが特定の期待を満たしていることを確認したいと考えています。
移行プロセスを簡単にし、誰もがルールを遵守できるようにしたいと考えています。Angular には、依存性注入のルールを強制する方法がなく、eslint の angular プラグインには、これらの線に沿ったものは何も含まれていません。誰もこれを試しましたか?私はグーグルで検索しましたが、何も見つかりませんでした。