9
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AngularAdvent Calendar 2022

Day 3

お勧めのフォルダ構成について(ナレッジ)

Last updated at Posted at 2022-12-02

はじめに

本記事はAngular Advent Calendar 2022の3日目の記事になります。
約4年Angularの開発を行っており、
その中での個人的ベストと感じたフォルダ構成について
ナレッジ含め共有します。

そもそもフォルダ構成のベストプラクティスを公式は公開しているか?

残念ながら、フォルダ構成について公開されておらず、
各々のプロジェクトに任せるとのことです。。
そのため、各種案件に参加するたびにフォルダ構成にバラツキが発生する。。

構成の考え方

AngularはモジュールのLazy Loadが存在するため
モジュール単位での構成を立てるのが良いかと思います。

実際の構成

.vscode ・・・ VsCodeの各種設定ファイルを管理
src
 └app
  └ modules
    └ 各種モジュールフォルダ
     └ components
     └ models
     └ servies
    └ shared・・ 共通モジュール

  └ shared
   └ models
  └ utils・・各種ユーティリティ機能を管理

assets ・・・ 静的ファイルを管理
 └css
 └i18n
 └images

environments ・・・ 環境設定ファイルを管理

フォルダ構成を適切に管理するツール

npmパッケージにls-lintがあります。
ls-lintは所定のフォルダに拡張子単位で正しいファイル名で配置しているかを
チェックしてくれます。

公式URL
ls-lint

Angularの構成管理出力ツール

余談になりますが、Angularのソースを元にAngularの構成を出力するnpmパッケージがあるので紹介します。

・モジュールの依存度
・Router情報
・ドキュメントのカバレッジ
・クラスやディレクティブの情報など

詳しくは以下でご参照ください。
Compodoc

最後に

フォルダ構成は、その時々のプロジェクトに合った構成がありますので
あくまで参考にしてもらえればと思います。
もしくはもっといい構成があれば、教えてください。

明日は、Jialipassionさんです

9
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?