본문으로 건너뛰기

버그 제보

이상한 점을 알려 주시면 고칠게요. 지금 보고 있는 페이지와 브라우저 정보가 함께 담겨요.

페이지:

모든 글

SSAFY 관통 프로젝트 회고: 영화 서비스로 10주

4분 읽기
목차3개 항목

SSAFY(삼성 청년 SW 아카데미) 1학기 동안 매주 진행한 관통 프로젝트는 "영화 정보·추천 서비스"라는 하나의 주제를 따라, 배운 기술을 차곡차곡 쌓아 올리는 구조였습니다. 첫 주에는 JSON 파일을 읽는 파이썬 스크립트였던 것이, 마지막 주에는 Vue SPA가 되었습니다. 이 글은 10개의 프로젝트를 한눈에 돌아보는 회고입니다.

여정 한눈에 보기

단계프로젝트만든 것핵심 기술
1. 데이터pjt01영화 JSON에서 필요한 정보만 추출·가공파일 입출력, json, dict.get
pjt02TMDB API로 인기/추천 영화 목록 만들기requests, API, sorted + lambda
2. 화면pjt03영화 커뮤니티 페이지 레이아웃HTML/CSS, Bootstrap 그리드·컴포넌트
3. Djangopjt04TMDB 데이터를 보여주는 영화 메인·랜덤 추천 페이지Django URL–View–Template, DTL
pjt05영화 정보 CRUD 게시판Model, ORM, migration, admin
pjt06ModelForm 기반 게시판 + 이미지 업로드ModelForm, 유효성 검사, Media 파일
pjt07회원가입·로그인과 댓글이 있는 게시판Django Auth, 커스텀 User, 1:N 관계
4. APIpjt08영화·배우·리뷰 REST API 서버DRF, Serializer, 1:N·M:N 관계
5. 추천·비동기pjt09인기 영화 추천, 좋아요·팔로우추천 로직, 커스텀 템플릿 필터, axios(AJAX)
6. 프론트pjt10영화 목록·랜덤 추천·보고 싶은 영화 SPAVue, Vuex, Vue Router, TMDB API

단계별로 정리한 개념

프로젝트 기록은 따로 남기지 않고, 배운 개념을 주제별 지식 노트로 옮겨 정리했습니다.

단계정리한 노트
데이터파이썬 데이터 분석 프로세스 (JSON·API·정렬)
Django 서비스, CRUD, 인증Django (Form과 ModelForm, User와 인증, 모델 관계)
REST APIREST API 설계, DRF Serializer와 관계 표현
추천·비동기AJAX와 HTTP 요청, Template과 Static 파일
Vue SPAVue 상태 관리: Pinia(옛 Vuex), SPA와 CSR·SSR

전체를 돌아보며

  • 쌓이는 재미: 파이썬 문법, HTML/CSS, Bootstrap, Django, JavaScript가 하나씩 더해지면서, 이전 프로젝트의 결과물이 다음 프로젝트의 재료가 되었다. 배운 것을 총동원해야 풍부한 결과물이 나온다는 걸 체감했다.
  • 구조를 지키면 빨라진다: Django의 URL → View → Template 순서(그리고 Model/Form)를 의식적으로 지키기 시작하면서 오류가 줄고 속도가 붙었다. 프로그래밍은 기계와의 대화라 절차가 중요하다.
  • 데이터 관계가 설계의 핵심: 1:N(댓글), M:N(배우·좋아요·팔로우)을 어떻게 모델링하느냐가 View와 API 구조를 결정했다.
  • 페어 프로그래밍: pjt07부터는 VS Code Live Share로 짝과 기능을 번갈아 구현했다. 설명하면서 코드를 쓰다 보니 내가 이해하지 못한 부분이 금방 드러났다.
  • 진로 고민: 백엔드는 어려울 거라 생각했는데 Django가 의외로 재미있었고, 프론트엔드도 즐거워 갈팡질팡했다. 결국 사용자와 가장 가까운 곳에서 일하고 싶다는 생각에 프론트엔드를 더 깊이 공부하기로 했다.
  • 외우지 말고 이해하기: 참고 코드를 따라 쓰다 event.preventDefault() 한 줄을 빠뜨려 한참 헤맨 경험 이후, 코드 한 줄 한 줄의 동작을 이해하려고 노력하게 되었다.
  • #회고
  • #SSAFY
  • #Django
  • #Vue

댓글

GitHub 계정으로 댓글을 남길 수 있어요.