학습 결과: 단일 .tpz 파일에서 출발해 테스트를 완료한 두 모듈 제품으로 확장되는 전체 과정을 이해하고, 자신에게 적합한 개발 환경을 선택합니다.
준비물: 텍스트 편집기와 기본 터미널 조작 지식만으로 시작할 수 있습니다. 단, 마지막 실습을 진행하려면 Python 3.11 이상 환경이 필요합니다.
시작 환경 고르기
별도 설치 없이 단문 프로그램을 수정 및 실행하려면 플레이그라운드를 사용하세요. 전반부의 네 가지 언어 실습은 브라우저 환경에서도 진행할 수 있습니다. 단, 최종 실습에서 다루는 패키지와 아티팩트는 생성할 수 없습니다.
전체 학습 경로를 완주하려면 로컬 환경에 토파즈를 설치하세요. 첫 프로그램 문서에서 셸, PowerShell, npm을 통한 설치 방법을 안내합니다. 실행 명령은 모든 운영체제에서 topaz로 동일합니다.
다섯 가지 실습을 마치는 데 소요되는 시간은 보통 1시간 안팎입니다. 각 페이지의 준비 상태 검사 구간에서 잠시 중단한 뒤 나중에 이어 진행할 수 있습니다. 각 실습을 마칠 때마다 학습 계획 프로그램은 항상 실행 가능한 상태로 유지됩니다.
이미 다른 프로그래밍 언어를 쓸 줄 아는 독자는 다른 언어에서 오셨다면 문서를 먼저 참고할 수 있습니다. 무엇이 그대로 옮겨오고 무엇이 다른지 확인한 뒤 필요한 실습만 골라 볼 수 있습니다.
완성할 프로그램
모든 실습은 동일한 예제 프로그램을 단계별로 확장하는 방식으로 진행됩니다.
- 첫 프로그램 — 학습 계획 값을 작성한 뒤
check와run을 실행하고, 정적 타입 진단 항목을 수정합니다. - 값과 함수 — 추론 타입·명시적 타입·함수 및 상태 변경이 필요한 단일 값을 추가합니다.
- 데이터와 제어 — 학습 작업을 명목 데이터 구조로 정의하여 컬렉션에 저장하고,
if·match·for제어 구문을 적용합니다. - 실패와 리소스 — 올바르지 않은 입력을
Option·Result·?로 처리합니다.defer문으로 리소스 해제를 보장하며, 의도적으로 발생시킨fault를 관찰합니다. - 첫 애플리케이션 — 소스 코드를
src/main.tpz와src/plan.tpz모듈로 분할하고 테스트를 추가합니다. 이후 의존성을 잠그고 검증한 패키지로부터 Python 제품을 빌드합니다.
최종 단계에서는 .tpz 파일이 존재하지 않는 별도 디렉터리에서 빌드된 제품을 실행합니다. 이 시점에는 토파즈 프로젝트 구성 요소나 컴파일러가 요구되지 않습니다. 패키지 레지스트리·브라우저 생명주기·HTTP 호스팅·백엔드 내부 구조는 입문 이후에 선택적으로 학습할 주제입니다.
선택: 플레이그라운드인가, 로컬 도구인가?
단순히 "이 표현식을 실행했을 때의 결과"를 확인하려는 목적이라면 플레이그라운드를 선택하세요. "테스트를 통과한 애플리케이션과 저장 가능한 아티팩트 완성"이 목표라면 로컬 환경을 설치하는 편이 적절합니다. 브라우저에서 먼저 시작한 뒤 최종 실습 직전에 로컬 환경으로 전환해도 학습 흐름을 그대로 유지할 수 있습니다.
직접 해보기
실습을 진행할 환경을 직접 정해 보세요. 지금 즉시 로컬 설치를 진행해야 할까요?
정답 보기
언어 문법을 빠르게 파악하려는 목적이라면 플레이그라운드로 충분합니다. 첫 애플리케이션 실습에서는 파일 생성·특정 테스트 실행·Python 번들 빌드가 이루어지므로, 해당 과정으로 넘어가기 전 로컬 환경을 구성해야 합니다. 전 과정을 한 번에 완주할 계획이라면 처음부터 로컬 환경에서 시작하는 편이 단순합니다.
다음 단계로 넘어갈 준비
진행에 앞서 적절한 시작 환경을 선택할 수 있어야 하며, 최종 결과물이 테스트를 완료한 두 모듈 구성의 Python 제품이라는 점을 이해해야 합니다. 플레이그라운드를 실행했거나 topaz 설치 준비를 마쳤다면 다음 단계로 진행할 준비가 된 것입니다.
첫 프로그램 문서로 이동하여 학습을 계속하세요. 구문 형식이 혼동될 때에는 문법 한눈에 보기를 함께 참조하세요. 해당 문서는 독립적인 참고 자료입니다.