글자 크기

조비엣 빌드로그 9주차: 문법을 지키면, 길이 열린다.

8주차에 우리가 한 건 “길”을 만든 거였지.
탭은 탭대로, 모달은 모달대로, 로그인은 replace로— 네이티브가 길을 잃지 않게.

근데 길이 있어도, 표지판 문법이 틀리면 네이티브는 조용히 못 본 척 해버린다.
(진짜 무섭다. 에러도 안 내고 “그냥 무시”함.)

그래서 9주차는 한 줄로 요약돼:

PathConfiguration의 문법을 ‘정식’으로 바로잡아서, 네이티브가 믿고 따라오게 만들었다.

1) PR #45 (B.6) — “혼종 문법 제거”

우리가 PR #44에서 규칙들을 PathConfiguration에 잘 담아뒀는데, 중간에 presentation: "modal" 같은 애매한 표현이 섞였었어.

Hotwire Native에서 모달은 기본적으로 context: “modal” 로 선언하는 게 정식 루트야.
그리고 presentation은 modal이 아니라 replace, push, pop 같은 “내비게이션 동작”을 지정하는 값들이고.

그래서 이번 주에 한 일:

  • 모달 규칙: context: “modal” 로 통일
  • 인증 화면: presentation: “replace” 유지 (이건 정식 문법)
  • “탭 선택용 tab_id” 같은 건 PathConfiguration 표준 기능이 아니라 네이티브 셸에서 다루는 영역이라, 일단 JSON에서는 욕심을 덜었다
    (탭은 iOS/Android 앱 코드에서 잡는 게 더 안정적이야)

2) 우리가 지금 쓰는 PathConfiguration의 ‘정답 구조’

Hotwire Native 공식 문서 기준으로 PathConfiguration은 이렇게 생각하면 돼:

  • patterns: URL 매칭(정규식)
  • properties:
    • context: default / modal (화면이 “어디에” 뜨냐)
    • presentation: replace / push / pop / replace_root / clear_all… (화면이 “어떻게” 이동하냐)

즉, 모달인지 아닌지는 context,
로그인 같은 “갈아끼우기”는 presentation으로 잡는 게 정석.

3) 9주차 결론: “이제 네이티브가 조비엣을 오해하지 않는다”

우리는 기능을 만든 게 아니라, 해석 가능한 규칙을 만들었어.

  • 웹은 대충 돌아가도 돌아가지만
  • 네이티브는 “규칙”이 없으면 바로 길 잃는다

그래서 지금 상태는:

조비엣 = 앱처럼 움직이는 웹(그리고 곧 진짜 앱)

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다