アプリケーション開発再入門[設計編] - 事前準備
ルール
怠惰な性格なので、自分を縛るためのルールを記載する。
- 1つの記事に対して1つのスクラップを作成する
- スクラップ作成→記事にまとめるというサイクルを最低でも月に1回回す。
利用ツール
開発・設計のためのツールを定義。一旦以下でやってみてどうしても使いづらかったら変更する。基本は最後までやり切って、メリデメ出した後で変更する。苦しみながらやり切るスタイル
成果物 | 利用ツール |
---|---|
ユースケース | Notion |
概念モデル | Notion(mermaid) |
画面設計 | Notion(Miro) |
DB設計 | Notion(mermaid) |
インフラ構成図 | Notion(Miro) |
プロジェクト管理 | GitHub |
全般
基本的にはNotionを使い倒してみようという試み。
画面設計というかモックはNotionでどう見えるのかわからないので、プロジェクトのリンクだけ置く形になるかも。それ以外の遷移図や入力項目一覧みたいなものはNotionで十分やれそう。
懸念
懸念点としてはGitのコード管理とどう連携するかという部分。
mermaidのコードをGitで管理しようと思うとじゃあ全部でGitでよくね?となりそう。面倒くさがりなので。
逆にmermaidはNotionで、それ以外のコードはGitで、としようとしても、コード書くのはVSCodeなので管理が重複する。VSCodeで書いてgitにプッシュしたものをNotionにコピペみたいなことはできる限りやりたくない。面倒くさがりなので。
画面設計
画面設計をMiroにするかFigmaにするか、インフラ構成図をdraw.ioにするかMiroにするか迷ったけど、ツールはできるだけ少ない方が好みなのでMiroで統一してみる。
開発計画
全般
とりあえず小さく作ってみて、どんどん大きくしていきたい。
最終的にはk8s上でマイクロサービスとして展開してCI/CDパイプラインの整備なんかもしたい
夢は大きく。
使用言語など
基本的にはGoを使う予定
クラウド系の技術はGoで開発されていることも多く、オペレーターを作成したりAPIの呼び出しもできるみたいなので、覚えておいて損はなさそうなので(未学習のため合わなかったらC#で書く)
フロントエンドはとても苦手なので、最低限の見た目にする。
けど流行っているのでReactは使う。
サービス
現職が教育業界なので、教育サービス向けのCRMを作成する
これが意外とない。実務で使えるレベルを作ろうとすると頓挫・失踪すると思うので最低限の認証のシステム仕組みと、ユーザー管理の階層構造と、教育業界向けっぽく学年の管理くらいは入れたい。