170731-0806_TIL (해커톤, CBV)

|

8월 5-6일 (토-일)

  • 처음으로 무박 2일 해커톤에 참여했다. 4명의 팀원이 21시간 동안 함께 작업했는데, 배운 점도 많았고 느낀 점도 있었다.
  • 팀원 중 한 명이 개인적으로 준비하던 프로젝트에 기능을 추가하는 식으로 진행했다.
  • 개발환경을 맞추고 runserver 하는 데 시간이 한참 걸렸다.
  • 새로운 코드 구조가 익숙하지 않아서 model, view, form 파일이 어디 있는지 몇 번이나 찾아봤다.
  • 다른 사람의 코드를 이해하고 원하는 코드를 추가하기가 것이 쉽지 않다는 것을 알았다.
  • github을 사용해서 여러 명이 함께 협업한 것은 처음이었다. 브랜치에서 작업을 하고 PR을 보내고 머지, 풀 작업을 하면서 각자 따로 작업했던 부분들이 하나로 합쳐지는 신기한 경험을 했다.
  • 그동안 git은 CLI 환경에서 작업했었는데 sourcetree에도 익숙해져야겠다는 생각이 들었다. 특히 conflict가 발생했을 때 좀 더 편하게 확인할 수 있는 것 같다. 생활코딩 sourcetree 강의를 들어봐야지. 그리고 CLI 환경에서도 동일한 작업을 할 수 있도록 같이 연습하고 싶다.
  • pycharm의 디버깅 모드를 처음 사용해봤다. 지금까지는 오류가 발생하면 오류메시지를 참고해서 python shell을 통해서 확인해보거나, template에 값을 출력해보는 식으로 원인을 찾았었다. 이제는 브레이킹 포인트를 걸고 코드를 한 줄씩 실행하면서 값이 어떻게 전달되는지 확인할 수 있게 됐다.
  • pycharm django 개발 환경을 설정을 연습했다. atom보다 설정해야 하는 내용이 많지만 한번 해놓고 나면, 환경변수를 설정하거나 디버깅을 할 때 편리한 것 같다. 까먹기 전에 설정했던 환경들 정리
    • Project Interpreter : 가상환경 추가
    • Languages & Frameworks > django : Django project root, settings, manage script, 환경변수
    • Languages & Frameworks > Python template Languages
    • Run/Debug Configurations : Django Server 추가
  • 유저간 쪽지 교환기능 구현을 위해서 3rd party app을 사용했다. 최신 버전을 설치하려고 github 링크를 사용해서 설치를 하고, 수정을 원하는 부분은 상속 후 코드를 오버라이딩 하는 방식으로 사용했다.
     # pip 설치 (github 주소를 통한 최신버전 설치)
     pip install git+https://github.com/arneb/django-messages.git#egg=django-messages
     # requirements.txt 설정
     -e git+https://github.com/arneb/django-messages.git@b6bd11a767c9a5bf31fec6e1980a28b3734ea432#egg=django_messages
    

8월 3일 (목)


8월 2일 (수)

  • Two Scoops of Django 8장 함수 기반 뷰, 클래스기반뷰 9장 함수 기반 뷰의 모범적인 이용을 읽었다.
  • 두숟갈 스터디에 참여했다.
  • 파이썬 데코레이터에 대해서 강의를 듣고 공부했다.
  • 3개월 전에 못풀었던 데코레이터 퀴즈를 드디어 풀었다!

내일 할 일

  • 스터디 프로젝트 ListView, DetailView 작성하고 PR 보내기
  • django-messagesapp 활용해보기
  • 해커톤 모델링 피드백하기
  • 개인프로젝트 리팩토링 (WishBook 모델 수정, api 코드 수정)
  • test 관련 공부하기

8월 1일 (화)

  • CBV를 활용하여 개인 프로젝트 리팩토링
    • ListView 를 활용하여 책 전체 리스트 뷰를 수정했다.
    • MonthArchiveView를 활용하여 월별 희망도서 신청이력 뷰를 추가했다.

내일 할 일

  • 두숟갈 스터디 참여하기
  • TSD 8, 9장 읽고 공부하기

7월 31일 (월)

  • Django Model Syntax 글을 읽었다.
  • 해커톤을 앞두고 팀원들과 무엇을 구현할지 이야기했다.
    • 개요 : 중고서적 거래 매칭 서비스
    • 주요기능
    • 살래요, 팔래요 게시판 (도서 api 사용)
    • 매칭 거래 발생시 알람기능 (이메일 + 알람 메시지, 텔레그램)
    • 유저간 메시지 교환 기능 (찾아보니 이런게 있는데 어떤건지 먼저 사용해봐야겠다.)
  • CBV 강의를 들었다.

내일 할 일

  • CBV 공부하기 (TSD, 강의)
  • CBV를 활용하여 개인 프로젝트 리팩토링
  • django-messagesapp 활용해보기