9강 / 20강

첫 번째 작품 — 할 일 목록 앱

지금까지 배운 걸 전부 합쳐 봅시다

첫 번째 작품 — 할 일 목록 앱
화면에 보이는 목록과 뒤에 숨은 표는 사실 같은 것입니다.

이론은 충분합니다. 이제 진짜 앱을 만들어 봅시다. 세상에서 가장 유명한 연습 과제, 할 일 목록(To-Do)입니다.

먼저 설계도부터. 할 일 하나에 필요한 정보는 무엇일까요?

CREATE TABLE todo (
    id     INTEGER PRIMARY KEY AUTOINCREMENT,  -- 자동으로 붙는 번호표
    title  TEXT    NOT NULL,                   -- 할 일 내용
    done   INTEGER NOT NULL DEFAULT 0          -- 0 = 아직, 1 = 완료
);

단 세 개의 필드. 이것만으로 완전한 앱이 만들어집니다. AUTOINCREMENT는 "번호는 내가 알아서 1, 2, 3… 붙여 줄게"라는 뜻이에요.

화면의 동작 ↔ SQL 문장

여러분이 앱에서 하는 모든 행동은 SQL 한 줄로 번역됩니다. 4강의 CRUD가 그대로 돌아왔죠.

화면에서 하는 일CRUD실행되는 SQL
할 일 추가CINSERT INTO todo (title) VALUES ('수학 숙제');
목록 보기RSELECT * FROM todo ORDER BY id;
체크 표시UUPDATE todo SET done = 1 WHERE id = 3;
삭제 버튼DDELETE FROM todo WHERE id = 3;

🎮 직접 만져 보세요

아래는 진짜로 동작하는 할 일 앱입니다. 버튼을 누를 때마다 그 순간 실행된 SQL이 오른쪽에 실시간으로 나타납니다. 앱을 쓰면서 SQL을 눈으로 익히는 것이 이 레슨의 목표예요.

할 일 앱 — 모든 클릭이 SQL로 번역됩니다
불러오는 중…

같은 일을 코드로 직접

위 앱이 내부에서 무슨 일을 하는지, 진짜 SQLite로 처음부터 끝까지 실행해 봅시다. 아래 코드는 여러분의 브라우저 안에서 실제로 동작하는 SQLite입니다.

진짜 SQLite로 CRUD 한 바퀴.
Python 브라우저에서 실행
🤔 확인 문제
할 일 3번에 체크 표시를 하는 동작에 해당하는 SQL은?