기본
사용자는 약통을 산다.
- 7일짜리, 14일짜리 등이 있다.
- 하루에 3번 먹는 것도 있다.
사용자는 처방전을 받는다.
- 병원, 의사로부터 처방을 받는다.
- 장기복용약의 경우, 다음에 올 때까지 딱 맞아떨어지는 약수를 처방받는다.
각 약들은 대응증상, 기전효과 등이 있다.
- 전체 일수, 남은 일수가 관리되어야 한다.
- 약이 다 떨어질 때쯤 병원예약을 해야 한다.
세로 화면을 만든다.
- 약통을 선택하면 해당 날짜에 먹어야 할 약들이 뜬다.
간단히 기본 시나리오를 세웠다.
그런데 너무 대충 시작했다.
약통과 약통셀과 약보관함, 약목록, 처방전 등이 헷갈리기 시작했다.
어떤 걸 합치고, 어떤 걸 나눌까 고민이 된다.
추상화
넣었다 뺐다를 해본다.
추상화를 통해 User를 확대해본다.
복잡하다. 당장은 나 혼자만 쓰자.
확대하지 않는다.
약통의 종류가 많다.
약통이란 걸 추상화 시키고, 다양한 약통을 사게 할까?
복잡하다. 나중에 고치자.
일단은 확대하지 않는다.
약통셀은 복용 스케쥴이다.
알림이 붙어야 하고, 잘 먹었는지 체크해야 한다.
...
복잡하다. 일단은 간단하게 생각하고 틀을 잡자.
아. 처방전을 생각해야 한다.
당뇨, 통풍 등 여러 개의 질환에 시달리는 경우, 처방전을 두 개 이상 받아야 한다.
평상시 복용하는 약이 있는데, 감기에 걸릴 경우 한시적으로 감기약을 먹어야 한다.
아... 시나리오가 복잡해진다.
일단 간단하게 생각하자.
정리
...
나중에 생각하자.
막무가내로 개발을 시작했으나, 코드가 복잡해지면서 Class 구조를 결정할 수 없었다.
계속 View, ViewController 등으로 나누려니 더 복잡해졌다.
고민을 하다 UML을 그리기 시작했다.
그런데 약통앱을 만들고 싶긴 했는데, 시나리오를 두루뭉실하게 시작한 탓에 자꾸 새로운 이슈들이 등장했다.
우당탕탕 그 때 그 때 고치다가 아무래도 안되겠다 싶어, 클래스다이어그램을 그리기 시작했다.
1차로 그려놓고 보니, 내가 얼마나 말이 되지 않게 코드를 상상했던 건지 보인다.
그림을 정리하면서 코드를 다시 상상했다.
이게 이렇게 되고, 저게 저렇게 되고...
뺑글뺑글 돌던 게 정리가 안된다.
며칠 동안 생각에 생각을 하고서야 정리가 된다.
소스 파일 몇 개와 Class 를 몇 개를 섞어 AI에게 물어본다.
대답이 엉성하다.
Class 몇 개를 엮어 Context를 섞어 대답해주지 못한다.
이런, 그렇게 복잡하지 않은 이 정도의 컨텍스트를 이해하지 못하는 건가?
그럴리 없다. 다만 AI에게는 옳은 방향이란 게 없다.
그래서 내가 어떻게 짜고 싶은지 명확히 말해줘야 코드를 뱉어낸다.
그런데, 어떻게 짜고 싶은지 정리하려면 내가 어떻게 짤지 결정을 해야 한다.
AI는 계속 마음에 들지 않는 답을 뱉어낸다.
초기 틀을 잡는 동안 AI 사용정도는 10% 수준이었다.
음, 그래도 없는 거보다는 낫다.
딱 초등학교 6학년 수준의 걸어다니는 백과사전이다.
음,
'프로젝트 > 개발일지' 카테고리의 다른 글
Flutter, 며칠 째 구조로 고민 중 (AI와 함께 개발) (2) | 2024.12.27 |
---|---|
두 번째 앱 개발 시작 (AI와 함께 개발) (6) | 2024.11.28 |
Flutter : 나를 괴롭혔던 SDK Version 불일치 (7) | 2024.11.06 |
Flutter로 앱개발 시작하기 (11) | 2024.11.01 |
Copilot 쓰면서 아쉬웠던 점 : Flutter 코딩하기 (2) | 2024.09.13 |
댓글