내 간단한 워크플로우: 파이썬 데이터베이스 UI
나의 일반적인 프로젝트 워크플로우
몇 달째 프로젝트를 만들면서 한 가지를 깨달았다: 나는 항상 같은 순서대로 작업한다. 누군가가 가르쳐 줬기 때문도, 튜토리얼을 읽었기 때문도 아니다—그냥 자연스럽게 내가 문제를 풀어가면서 그렇게 되었다.
1. 빈 파일부터 시작하기
내가 만드는 모든 프로젝트는 같은 방식으로 시작한다: 빈 Python 파일과 아이디어 하나. UI도 없고, 데이터베이스도 없고, 구조도 없다. 핵심 아이디어를 구현하려는 나만 있다.
- 이 단계는 매우 지저분하다.
- 여기저기
print문이 가득하고, - “잠깐, 왜 안 되는 거지?” 하는 순간이 많이 있다.
- 여기저기
기본적인 기능—예를 들어, 프로그램이 실제로 의도한 대로 동작한다—을 구현하면 다음을 생각하게 된다:
“음… 그런데 이걸 어디에 저장하지?”
2. 데이터베이스 추가하기
어느 순간, 터미널에 결과를 출력하는 것만으로는 충분하지 않다. 프로그램을 닫으면 모든 것이 사라지니, 진짜 프로젝트처럼 느껴지지 않는다. 그래서 데이터베이스를 추가한다.
- 대부분 SQLite를 사용한다. 간단해서다: 파일 하나면 되고, 서버 설정이나 복잡한 것이 필요 없다.
- 여기서 SQL을 배웠다:
SELECT,INSERT등. - 실제 프로젝트에서 문제를 해결하면서 배우니 이해가 쉬웠다.
데이터가 안전하게 저장되고 필요할 때마다 꺼내 쓸 수 있게 되면, 다음 질문이 떠오른다:
“이걸 실제로 어떻게 사용 가능하게 만들지?”
3. UI 구축하기
이게 바로 재미있는 부분이다. 코드와 데이터베이스만 다루던 몇 주가 지나고, 드디어 시각적으로 프로젝트가 살아나는 모습을 볼 수 있다.
- 가끔 Tkinter를 사용한다.
- 가끔 Streamlit을 사용한다.
- 가끔은 단순한 커맨드‑라인 인터페이스만 만든다.
하지만 이 단계가 모든 것을 완성된 느낌으로 만든다. 실제로 동작하는 버튼, 데이터를 보여주는 테이블, 데이터베이스에 저장되는 입력 필드 등.
- UI는 거의 항상 가장 쉬운 파트다. 왜냐하면 여기까지 오면 이미 모든 핵심 작업이 끝났기 때문이다.
- Python이 로직을 담당한다.
- SQL이 데이터를 저장한다.
- UI는 그 둘을 연결해줄 뿐이다.
4. 이 순서가 나에게 효과적인 이유
한 번에 모든 것을 고민하지 않는다. 로직을 파악하면서 UI를 만들려 하지 않는다. 무엇을 저장할지 모른 채 데이터베이스를 고민하지 않는다. 한 번에 한 가지씩 진행한다:
- Python 먼저 – 핵심 기능을 구현한다.
- 데이터베이스 두 번째 – 데이터를 영구 저장한다.
- UI 마지막 – 결과를 보여준다.
이렇게 하면 압도당하는 느낌을 피할 수 있고, 솔직히 내 뇌가 문제를 해결하는 자연스러운 방식이다.
결론 및 피드백 요청
이것이 “올바른” 방법이라고 주장하는 것은 아니다—분명 더 좋은 워크플로우도 있다. 여러분은 어떤 워크플로우를 사용하나요? 비슷한 순서로 진행하시나요, 아니면 완전히 다르게 하시나요? 다른 사람들은 프로젝트를 어떻게 구축하는지, 특히 초보자들이 이 과정을 어떻게 풀어나가는지 궁금하다. 여러분의 이야기를 들려 주세요.