프로젝트

김포공항 착석 사용 중

웹 판에서 앱으로, 그리고 42편짜리 목록을 한 줄로 줄인 두 판

42편을 한 줄로 줄였더니 레이아웃은 세 배가 됐다.

먼저 웹 판이 있었다. 계산은 그때 이미 맞았고, 막힌 것은 그 아래 칩 세 줄이었다 — 마감 시각, 어느 편을 고르나, 착석 기준. 아침에 그걸 다 고르고 나온 시각을 시계 앱에 다시 옮겨 적어야 했다. 고르는 자리와 알람이 붙는 자리가 갈리면 결국 안 쓴다 — 그래서 앱으로 옮겼다.

옮기고 나서도 v0.1 은 시간표를 그대로 들고 온 것이었다. 아침에 필요한 건 42편 중 하나를 고르는 일이 아니라 「몇 분 뒤에 나가면 되나」 한 줄이었다.

42편 → 1편첫 화면이 내놓는 답
148 → 426줄레이아웃 XML. 답을 줄이니 화면은 늘었다
3편웹 판에서 가져와 회귀 시험에 박은 값
지금의 앱 첫 화면. 「3분 뒤」 한 줄이 가장 크다
지금 첫 화면. v0.1 은 이 자리에 42편짜리 목록이 있었다.

개발 과정

9/8 (화)웹 판에서 앱으로웹 판9/8 (화)옛 판 값을 시험에9/21 (월)목록에서 답 하나로42편 → 1편9/21 (월)다음 편으로
밀어서 보기
웹 판 첫 화면. 나갈 시각 아래에 칩 세 줄
9월 8일

웹 판에서 앱으로

막힘
웹 판으로 시각을 고른 뒤 시계 앱을 열어 다시 맞춰야 했다. 두 번 손이 가면 결국 안 쓰게 된다
한 것
계산 로직만 코틀린으로 옮기고 앱 안에서 고르는 즉시 알람이 걸리게 했다
결과
미리 계산한 표 대신 원본 입력을 자산으로 넣어, 환승 도보 시간과 밀림을 앱에서 바꿀 수 있다
축 위 그림 둘이 판이 바뀐 자리다 — 웹 판에서 앱으로, 그리고 목록에서 답 하나로. 가운데 둘은 계산이 바뀐 것이라 화면이 그대로다.

배운 점

  • 고르는 자리와 실행되는 자리를 붙인다. 웹 판이 못 쓰인 이유는 계산이 틀려서가 아니라 고른 뒤에 할 일이 하나 더 있었기 때문이다.
  • 옮겨 쓰는 일에는 옛 판의 값을 시험에 박는다. 눈으로 훑어서는 반올림 한 자리를 못 잡는다.
  • 답을 줄이면 화면 코드는 늘어난다. 목록 하나를 걷고 답 하나를 세우는 데 레이아웃이 세 배가 됐다. 단순한 화면이 단순한 코드는 아니다.

산출물