はじめに
前々回「ため息が出るDB設計書」、前回「画面設計ってどんな要素が必要だろう」の最後としまして今度はコンポーネント設計について記載します。
https://qiita.com/jun2/items/f4be237fed04c88dc1f5
https://qiita.com/jun2/items/5e0c0090cba9b05ab5ee
大きな内容は画面設計と共通なので、共通モジュールとして開発した場合のコンポーネントについて、もう少し詳細に「書いた方がいいと思うもの」を書きたいと思います。
設計する規模も小さいので短めです。
nuxt.jsペースとなります。
書いた方がいいと思うもの
- 概要
どんなコンポーネントなのか?このコンポーネントを使うとどんなことができるのか?
- 見た目
- props
プロパティ名、型と説明 - defineExpose
何が公開されている変数関数なのか - emit
何が発生するとどんな通知が来るのか。引数があるのであればその型 - event
概要の詳細として、発生イベントに対する詳細説明 - dependency
依存している他のコンポーネント、他のプロジェクトファイルなど
ここでも何をテストすべきなのか?と考えながら書くことが重要と考えます。
また、利用する側が実装を見ることなく実装できるような説明となっているか?という点も考慮が必要です。
上記はatoms - moleculesくらいの設計内容だと思います。
これよりも大きな規模だと画面設計書のエッセンスも入れながら記載した方が良さそうです。
終わりに
全3回で設計について考えていることをアウトプットしてまいりました。
昔先輩に「良い設計書はそのままテスト仕様書になる」と教えられ感銘を受けたことからずーーっと後輩指導にも同じことを言い続けております。
少しでも賛同いただける方がいらっしゃれば幸いです。