https://00pen.tistory.com/87

 

Django Rest framework 와 React로 포트폴리오 만들어보기(2)

https://00pen.tistory.com/85 Django Rest framework 와 React로 포트폴리오 만들어보기(1) 노마드코더(nomad coder) 에어비앤비 클론 코딩 후기 2달에 걸친 풀스택 에어비앤비 클론 코딩을 드디어 끝냈내요. 이..

00pen.tistory.com

처음에 계획할 때 8월 15일까지 끝내겠다고 했는데 계획은 반은 지켜지고 반은 안 지켜졌다고 할 수 있을 것 같다. 왜냐하면 오류없이 8월 15일까지 만들기는 만들었다. 근데 테스트를 하면 할 수록 조그만한 오점들이 계속 나오는 것 같다. 그래서 직접 테스트하거나 Django Restframework 에서 제공하는 test 모듈로 TDD를 진행하는 중이다.

 

프로젝트를 끝내면서 느낀 점은 크게 두가지다.

첫 번째는 기획/계획이 굉장히 중요했다는 것. 아이디어이 생각난 후에 이틀 정도 구상한 후 프로젝트를 만들기 시작하였는데 만들면서 Django의 model 부분 즉, Database에 저장될 스키마, 가 여러 번 수정되었다. 그러면서 오류도 많이 생기고 고치는데도 시간이 꽤 소요되었는데 이래서 데이터베이스를 설계하는 사람이 따로 필요한 건지 알게 되었다.

두 번째는 빌드는 빠른데 오류/예외들을 처리하는 것이 더 오래 걸리겠다는 것. 찾아보니 QA 분들이 정석루트를 해피패스라고 부르는 것을 알게 되었는데 나는 해피패스 외에 적은 예외만 처리해 왔다는 것을 알게 되었다. 아주 완벽하게 서비스를 만드려면 대충 다 만들고 Quanlity Assurance에 시간을 많이 투자해야할 것 같다는 생각을 하게 되었다.( 작은 프로젝트에서는 그냥 만들고 일부 사용자들이 사용해보고, 피드백을 받아 고치는 것도 좋다는 것을 알게 됨. )

 

이제 Django를 어느 정도는 다룰 수 있게 되었다고 생각한다. 하지만 공부하면 할 수록 부족하다는 것이 느껴져 Django도 dbshell과 서버에 deploy하는 것을 더 배우고, 네트워크랑 데이터베이스도 계속 공부해봐야겠다. 아무튼 개인 프로젝트를 만들면서 재밌었고, 끝내서 보람찼다.

 

 

Frontend 결과물 예시: https://qhqnf.github.io/asset-dashboard-fe/#

asset dashboard

Frontend github: https://github.com/qhqnf/asset-dashboard-fe

Backend 결과물 api 문서: http://asset-dashboard-dev.ap-northeast-2.elasticbeanstalk.com/swagger/

Backend github: https://github.com/qhqnf/asset-dashboard

 

노마드코더(nomad coder) 에어비앤비 클론 코딩 후기

2달에 걸친 풀스택 에어비앤비 클론 코딩을 드디어 끝냈내요. 이 코스를 통해 python과 Django를 배울 때는 재밌어서 하루도 빠짐없이 코딩을 했습니다. 5월에는 천천히, 6월에는 2배 정도 빠르게 했�

00pen.tistory.com

약 5개월에 걸쳐 nomad coder을 통해 풀스택 개발자로 성장하기 위해서 강의도 많이 들었고, 이제는 정말 직장에서 일을 하면서 돈도 벌고, 기업에서 경험을 쌓아야 겠다는 생각에 나만의 웹사이트나 앱을 만들어 포트폴리오를 만들어보고자 생각이 들었습니다.

계획은 자신의 자산 상태를 여러 그래프로 보여주는 Dashboard를 만드는 것입니다. 에어비앤비 클론 코딩을 할 때는 오직 Django로만 풀스택 개발을 했지만 기업에서는 대부분 백앤드와 프론트앤드를 나누어 개발하는 것이 일반적이기 때문에 그에 맞추어 Django (+ Rest Framework)로 백앤드 API 서버를 만들고, React와 Redux를 이용해 프론트엔드를 만들 예정입니다.

저는 2주일 안에 끝내는 것으로 잡고 싶었으나 주변 개발자님들의 말을 들어보면 그렇게 마음대로 되지는 않을 거라는 말을 들어 3주~4주를 목표로 잡았씁니다. 지금은 이미 백앤드 API 서버를 만들고 있는 중이고, 시작한지 3주가 되는 날은 8월 15일이네요.

 

프로젝트명은 asset-dashboard.

지금까지 진행상황은...

 

7월 25일 - 간단하게 머리 속 계획을 그림으로 그려보고, Django와 더불어 필요한 것들 설치

개발환경은 간단하게 Ubuntu 16.04(WSL로 윈도우에서 사용), VS Code로 했고, pipenv로 가상환경을 꾸려서 함

 

7월 26일 - 일단 백엔드 API에 필요한 주식정보(현재가, 종목코드) 가져오는 crawler 코드 먼저 짬

https://00pen.tistory.com/84

 

Marketdata.krx 종목코드, 현재가격 가져오기

주식데이터를 가져오는 방법으로는 증권사 api도 있고, github에 올려져 있는 여러 코드들도 있지만 Django 백앤드에 필요한 상장주식코드(ETF 포함)만 가져오는데 무겁게 하기 싫어 코드를 짜보았습

00pen.tistory.com

 

7월 27일 - crawler 코드 정리하고, Django에서 db로 넘겨주도록 commad 생성, 주요 Model과 Serializer, View 생성

Github 주소  - https://github.com/qhqnf/asset-dashboard

https://00pen.tistory.com/87

 

Django Rest framework 와 React로 포트폴리오 만들어보기(2)

https://00pen.tistory.com/85 Django Rest framework 와 React로 포트폴리오 만들어보기(1) 노마드코더(nomad coder) 에어비앤비 클론 코딩 후기 2달에 걸친 풀스택 에어비앤비 클론 코딩을 드디어 끝냈내요. 이..

00pen.tistory.com

 

합격!

5월 31일 날 SQLD 시험을 봤는데 한 달만에 시험 결과가 나왔네요. 다행이 두 과목 모두 50% 이상 맞췄고, 총점 60점 이상으로 합격했네요. 사실 SQL을 직접적으로 사용하려는 목적보다 python Django를 이용하면서 데이터베이스 지식이 필요하기도 하고, 데이터를 다루는데 RDBS에 대한 기본 지식은 갖추어야 할 것 같아 자격증 공부를 해보았습니다. 기본지식을 쌓고자 하는 목적이었기 때문에 한 달만에 따고자 하는 마음가짐으로 임했습니다.

60점 이상이면 합격

 

먼저 저는 컴퓨터공학 전공자는 아니고, 프로그래밍에 관심있는 사람 정도로 생각해주시고 읽어주세요.

제 생각에 전공자가 아니더라고 한 달이면 SQLD 자격증을 딸 수 있다고 생각합니다. 왜냐하면 합격기준이 높지 않기 때문입니다. 그렇다고 문제의 난이도가 엄청 낮지는 않습니다. 그런데 왜 한 달이면 충분히 자격증을 딸 수 있느냐? 어려운 문제는 꽤나 풀기 난해하지만 쉬운 문제만 다 맞추어도 60점을 충분히 넘을 수 있기 때문입니다.

공부 방법은 먼저 이론은 SQL 자격검정 이론서 두꺼운 책을 시중에서 팔고 있지만 그걸로 공부하지는 않고, 구글이나 네이버 검색으로 정리되어 있는 것을 읽거나 dbguide.net 에서 찾을 수 있는 정보로 공부를 했는데 지금은 이 페이지가 이사를 해서 잘 안나오는 것 같습니다...

그리고 연습문제는 데이터산업진흥원에서 출판한 SQL 자격검정 실전문제집을 사서 풀어보았습니다. 이게 정말 도움이 되는게 SQLD 시험이 아래 책에서 나온 문제와 비슷하게 출제되기 때문에 저는 이 책을 세 번정도 읽어보고 합격할 수 있었던 것 같습니다.

SQL 자격검정 실전문제

지금까지 프로그래밍을 하면서 옵티마이저 같은 개념은 적용해본 적이 없는데 Django를 다루면서 데이터베이스를 이용해보니 Many-to-Many와 같은 관계나 데이터베이스의 기본지식을 알고 있는 것이 매우 도움이 된 것 같습니다. 이래서 컴퓨터공학에서 왜 데이터베이스 과목을 필수로 배우는지 이해할 수 있는 부분이었습니다.

 

2달에 걸친 풀스택 에어비앤비 클론 코딩을 드디어 끝냈내요. 이 코스를 통해 python과 Django를 배울 때는 재밌어서 하루도 빠짐없이 코딩을 했습니다. 5월에는 천천히, 6월에는 2배 정도 빠르게 했으니 아마 열심히 하시는 분이라면 6주면 끝낼 수 있지 않을까 싶습니다. (사실 AWS와 연동하는데 일주일 동안 풀지 못한 오류가 있었는데 그거 때문에 시간을 많이 잡아먹음... 혹시라도 같은 오류가 나시는 분이 있을까 글도 올림 - [Django/AWS EB] wsgiPath 오류 및 502 Bad gateway)

 

5월과 6월 장장 2달간의 코딩

 

니꼴라스와 함께한 첫 풀스택 클론 코딩의 후기를 말해보자면 먼저 하고 싶은 말은 처음에는 어렵습니다. 처음에는 코드를 같이 써보고도 어떻게 돌아가는지 이해가 되지 않습니다. 근데 강의를 들어보면 같은 문제를 여러가지 방식으로 풀어주거나 비슷한 걸 여러 개  같이 만들어보는데 이렇게 여러 번 반복하다보면 갑자기 이해가 됩니다. 예를 들어 Django에서는 template(html)과 view와 url을 같이 쓰는데 대충 설명해보자면 template는 유저가 보는 화면을 구성하는 것이고, view는 그걸 돌리는(?) 방식이고, url는 www.naver.com 같이 주소라고 보시면 됩니다. 처음에는 이 세가지가 어떻게 연결되는지 잘 이해가 되지 않는데 여러 번 만들다 보면 이해가 됩니다.

 

내 home view

 

두 번째로 느낀 것은 코코아톡 강의나 바닐라JS강의를 들을 때는 몰랐는데 AWS에 배포를 하고 누군가가 내가 만들걸 볼 수 있게 되었을 때 굉장한 보람을 느꼈습니다. 그래서 강의 중 이 배포 부분이 가장 어렵고, 가장 보람을 느끼게 되는 부분이 아닐까 싶습니다. 

마지막으로 어느정도 난이도가 있는 강의를 들었다고 생각하지만 오히려 이 강의를 들으면서 제가 얼마나 아무것도 몰랐는지 느끼게 되었습니다. Django라는 framework가 굉장히 편리하게 만들어져 있음에도 불구하고, 이걸 정말 전문적으로 이용하기 위해서는 이제 wsgi랑 서버에 대해서도 알아야 하고, 실제 실무에서는 백엔드와 프론트엔드를 나누어 놓기도 하는데 그러기 위해서 API 특히, Django REST API(DRF)에 대해서도 알아야 하고, 그리고 이번에 만든 것은 굉장히 정적인데 이걸 멋지게 만들려면 Javascript를 이용해 사용자의 이벤트를 잡아줘야 하고, 등등.

결론적으로 이 에어비앤비 클론 코딩 강의는 코딩을 하면서 보람을 많이 느끼게 한 강의라고 생각하고, 클론 코딩 강의이기 때문에 부담없이 천천히 배울 수 있는 강의라고 생각합니다.

강의와 별개로 혼자 만들어본 My reservation
끝!

저는 이제 정말 장고를 잘 이용하기 위해서 노마드 코더에서 REST API 강의를 수강해보겠습니다ㅋㅋ

https://00pen.tistory.com/74

 

nomad coder(노마드 코더) 코코아톡 후기(1)

퀀트(Quant) 및 데이터 사이언티스트(data scientist)의 역량을 키우기 위해서 코딩을 배워보기 시작했습니다. 처음엔 원래 그냥 파이썬 공부로 시작하려고 먼저 워니님의 유튜브 채널을 통해 속성으로 파이썬 복..

00pen.tistory.com

진도

하루하루 조금씩 코딩을 하다보니 진도를 많이 빼진 못했지만 HTML 부분은 실전+이론 모두 다 끝냈네요. 이정도 해보니까 조금 HTML의 감은 잡히는 것 같습니다. 실전 코코아톡 클론 코딩이 니꼬 쌤이 코딩하면서 설명하는 걸 듣고, 똑같이 따라 코딩을 해보는 것인데 처음에는 이렇게 똑같이 따라하는 클론 코딩이 도움이 될까? 하는 생각이 들었습니다. 하지만 HTML 강의를 끝까지 들은 지금은 어느새 동영상을 보지 않고 듣기만 해도 어디에 어떤 코드를 쓸지가 어느정도 상상이 가는 갑니다.

Settings

이게 Setting.HTML을 끝낸 모습입니다ㅋㅋ. HTML을 코딩하면 마구잡이로 개체들이 들어가 있는 것처럼 보이고, CSS까지 코딩을 하면 개체들이 위치를 잡고, 예쁘게 변하는 형식입니다. 이제 CSS를 배워서 웹페이지의 모습처럼 만들어보고 싶은 마음이 듭니다.

HTML,CSS,Javascript를 잘 설명한 그림

그냥 니꼬쌤이 하는 설명 들으면서 하라는대로 하니까 굉장히 편하고, 배우는데 부담이 되지 않는 것이 가장 큰 장점입니다. 그러나 시험 같은 것이 없으니 혼자서 빨리 진도를 빼지 않는 것이 단점인 것 같습니다. 제 생각에 빨리 하면 이 강의를 1~2주면 다 끝낼 것 같은데 저는 HTML부분만 하는데 일주일하고도 반이 걸렸네요...

아무튼 재밌게 듣고 있으니 마지막 CSS부분도 다 들어보고 마지막 후기를 남겨 보도록 하겠습니다.

감사합니다.

+ Recent posts