C.W.K.
Stream
Lesson 04 of 04 · published

고정 표면이 플러그인 OS 를 이겨

~11 min · fixed-surfaces, reuse, window-model

Level 0Finder 에서 길 잃음
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"네 계층을 재사용하는 여섯 기능은 제품이야. 여섯 개 비공개 엔진을 가진 여섯 기능은 늪이야."

화면 위의 모양

추상화 전에 창을 그려봐. 위엔 커스터마이즈 가능한 툴바. 접히는 왼쪽 레일: 장치·공유 볼륨·즐겨찾기·최근 항목의 소스 리스트 위에 얹힌 선택 바구니 드롭 스택. 그다음 브라우저 분할 — Pane A 랑 Pane B, 각각 자기 탭 스트립, 브레드크럼, 리스트-또는-아이콘 브라우저, 크기 조절되는 Preview/Info 인스펙터 독을 가져. 딱 한 페인이 활성; 각 페인마다 딱 한 탭이 활성. 그 기하는 고정이야. 스스로 재배치 안 하고, 사용자가 패널을 볼트로 못 붙여.

여섯 패밀리, 네 계층

1.x 로드맵은 여섯 개 고정 기능 패밀리를 더해: 소스 리스트 조작감, 명명된 워크스페이스 프리셋, 배치 이름변경, 선택 바구니, 크기 브라우저, Finder 태그/색 라벨 편집. 이것들이 전이(metastasize)되지 않게 지키는 규율은 이거야: 각각은 똑같은 네 canonical 계층의 새 클라이언트 — 워크스페이스, 위치 참조, 열거, 오퍼레이션 엔진 — 이고 절대 자기만의 새 엔진이 아냐.

그게 사주는 것

배치 이름변경은 이름변경 경로를 발명 안 해; 평범한 불변 오퍼레이션 플랜을 제출해. 선택 바구니는 바이트를 스테이징 안 해; 순서 있는 위치 참조를 저장해. 크기 브라우저는 두 번째 디렉토리 카탈로그를 안 지어; 취소 가능한 스캔을 파생시켜. 프리셋은 디렉토리 내용을 캐시 안 해; 참조를 스냅샷해. 전부 똑같이 검증된 계층으로 흐르니까, 오퍼레이션 엔진에서 고친 버그 하나가 여섯 기능 전부에 대해 한 번에 고쳐져 — 그리고 어느 것도 코어가 못 하는 방식으로 파일을 잃을 수 없어.

고정 표면은 canonical 경계를 물려받아. 새 기능은 워크스페이스·위치·열거·오퍼레이션 계층을 재사용해서 자리를 벌어 — 포크해서가 아니라. 모든 미래 추가에 대한 테스트: 두 번째 브라우저 진실, 두 번째 변형 경로, 모듈 생명주기를 도입해? 그렇다면 아무리 쓸모 있어 보여도 거부야.
트랙 클리어. 이제 넌 논지(겉모습보다 믿을 수 있는 변형), 가족 배치(파일 워크벤치, 자기 브레인 없음), 좁은 범위(쓸모 있는 30%), 재사용 규율(고정 표면, 네 계층)을 쥐었어. 이 뒤 전부는 '절대 파일을 안 잃는다' 를 참으로 만드는 기계 장치야.

Code

고정된 창 기하·text
  +----------------------------------------------------------+
  |  toolbar: navigation / view / dual + inspector / actions |
  +--------+-------------------------+-----------------------+
  | basket |  Pane A                 |  Pane B (collapsible) |
  | -------|  tab strip + breadcrumb |  tab strip + bcrumb   |
  | source |  list or icon browser   |  list or icon browser |
  | list   |  Preview / Info dock    |  Preview / Info dock   |
  +--------+-------------------------+-----------------------+

  One pane active. One tab active per pane. Geometry is fixed.
각 1.x 패밀리는 재사용하지, 포크 안 함·text
  FAMILY                 REUSES (never a new engine)
  ------                 ---------------------------
  workspace presets      workspace + location refs
  Batch Rename           operation engine (normal plans)
  Selection Basket       ordered location references
  Size Browser           enumeration (cancellable scan)
  tags / color labels    operation engine (metadata plans)
  source-list ergonomics workspace + mount observation

  Zero new mutation paths. Zero module lifecycles.

External links

Exercise

Waygate 에 있어야 한다고 생각하는 일곱 번째 기능을 설계해봐. 이제 테스트를 적용해: 워크스페이스·위치·열거·오퍼레이션 계층을 재사용해서 지을 수 있어, 아니면 새 엔진이 필요해? 새 엔진이 필요하면 필요 없어질 때까지 다시 설계하거나 — 안 어울린다고 결론 내려.
Hint
진짜 좋은 파일 매니저 기능 대부분('최근 이동' 뷰, 중복 찾기, 빠른 필터)은 새 엔진이 아니라 열거 + 저널의 새 클라이언트로 드러나. 테스트를 실패하는 것들 — 플러그인 로더, 내장 터미널 — 이 바로 안전 스토리를 깰 것들이야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.