Baas를 사용하는 이유는 프론트엔드에서 비교적 쉽게 데이터베이스를 사용할 수 있게해주기 때문에 사용했다.

이메일/비밀번호 로그인, 소셜 로그인(Google, GitHub 등)로그인 등 다양한 인증 방식을 손쉽게 구현할 수 있게 해준다. 복잡한 인증 로직을 직접 구현할 필요 없이, 간단한 API 호출만으로 사용자 등록, 로그인/로그아웃, 세션 관리까지 모두 처리할 수 있어 개발 시간을 크게 줄일 수 있다.

프로젝트가 커질 수록 상태관리가 복잡해지기 때문에 간단한 zustand를 사용
redux는 강력하지만 설정과 사용법이 불편하고 보일러플레이팅이 많다.
zustand는 전역상태관리의 역할만 충실 보일러플레이팅이 없다.
내가 원하는 상태만 선택적으로 업데이트할 수 있다.(선택적 구독)

form을 여러개 가지고있기 때문에 추후 유지보수하는데 이점이 있고, useState를 통해 제어 컴포넌트로 작업하면서 input에 입력할 때마다 리렌더링이 발생하기 때문에 이를 방지하기 위해 비제어 컴포넌트로 만들어 불필요한 리렌더링을 방지할 수 있기때문에 채택했다.


물론 사용할 수 있었다. 왜냐하면 form양이 많지않고 중복되는 부분이 적기 때문이다. 하지만 중복되는 부분에 대해서 유지보수를 용이하게하기위해 채택하지않았다.

'내가 왜 이 기술을 쓸까? 왜 이 라이브러리를 쓸까?'에 대한 고민을 해봤다. 지금까지는 이유도 모르고 사용했지만 프로젝트에 미치는 문제 해결, 유지보수, 보안 등을 고려해야 한다는 것을 말씀해주셔서 정리하면 좋겠다라고 생각했다.