開発時に心がけていること
組織体制
一人目のエンジニア(フロントエンド)
フロントはTypeScript / react / nextjs / redux
5月に入社して以降約半年一人でフロントエンドのコードを書いていた
バックエンドの設計に手が回らず後回しになっている状態
工夫・努力したこと
後からエンジニアが入ってきた時に読みやすい・書き換えやすいコードを意識した
アーキテクチャやオブジェクト指向について学習し、改修しやすいコードを書くように心がけた
※ 基本的なReactはオブジェクト思考プログラミングではなく"関数型プログラミング"であり、例に倣って関数型プログラミングで開発を進めた
リソースの都合上テストは諦める実装方針だが、いざテストを書くとなった時に対応できるような設計を心がけた
まだコードを書くに至っていないが、時間が取れる時に意識してCustom Hookの分離に取り掛かりたい
バグの温床になりやすい副作用関数の使い方(主にuseEffect)について改めて学習しなおし、実践した
バックエンド実装が長い間膠着状態の為、APIができたらすぐに使える状態にできるようモックデータの置き方を工夫した
後からフロントエンドの大規模な改修作業が起きない為にGraphQLを使う という事を理解して開発を勧められた
開発者間の差異を無くす事を意識してEditorConfigを使用した
バグの少ないコードを書く事を意識して静的型付け言語(TypeScript)、Lintツールを使用した
苦労したこと
reduxの管理
なんでもかんでもstoreに持たせていたのでredux以外のstateの管理方法を模索した
reactのuseContextを使ってページごとにstate管理を行う
ページを跨ぐ物に関してはreduxで管理する