WIL 21.03.22~21.03.28

조상균·2021년 3월 27일
0
post-thumbnail
post-custom-banner

👉 Node.js로 간단한 CRUD 사이트 완성!

노드 공부를 시작하면서 바로 CRUD가 가능한 사이트를 만들기 시작했는데, 금요일에 시작하여 화요일쯤 완성하여 AWS 배포까지 마무리했습니다. 이전에 파이썬 Flask를 활용해 CRUD를 만들어 본게 많은 도움되었습니다. 최대한 Rest한 API를 만드려 했고 프론트와 백엔드를 나누고 싶어 템플릿 엔진을 사용하지 않고 요청을 통해서 보여지도록 만들었습니다. 앞으로 실시간 댓글과 토큰 인증 로그인을 추가할 예정입니다.


👉 익숙하지 않은 자바 스크립트 문법

node.js를 통해 자바 스크립트를 처음 맛보았고 CRUD 만들기에 바빠 기초 문법을 볼 시간이 없었습니다. 그동안 봐왔던 C언어와 자바, 파이썬 등 여러 문법이 비슷하지만 많이 낯설게 다가왔는데, 콜백 함수와 프로미스, await, async를 보았을 때 이게 무엇인지 어떻게 쓰는건지 감이 잘 오지 않았습니다.
기본적인 CRUD를 완성하고 나서야 천천히 JS 기초를 다지는 시간을 가지게 되었는데 구조적인 부분은 클래스나 상속과 같은 부분이 자바와 비슷하다고 느껴졌으며 함수나 리스트, 오브젝트를 사용하는 부분은 파이썬, 그 외의 나머지 부분은 정말 새로웠습니다. 특히 오브젝트에서 같은 이름을 가진 인자 하나를 생략한다던지, ... 과 같은 스프레드 문법은 보는 순간 머릿속에서 물음표가 떴습니다..😣

파이썬도 최근 알고리즘 문제를 풀면서 익숙해질 수 있었는데 Node.js로 취업을 하고 싶으므로 앞으로 JS를 사용하여 알고리즘 문제를 풀어보고 익숙해질 생각입니다. 배열을 다루는 내장 함수는 아직 너무 어려운 존재입니다. 활용은 어렵지만 그래도 코드를 보고 어느정도 이해할 수 있는 수준은 된 것 같아요.


👉 Socket.io와 Sequelize 사용법 익히기

토이 프로젝트를 하면서 Socket.io를 사용해봤는데 실시간으로 눈에 보이는 통신을 할 수 있는게 꽤 재밌게 다가왔습니다. 아직 Socket 함수를 잘 몰라 단순히 접속하고 메세지를 클라이언트에 보내는 수준밖에 안되지만 당장은 실시간 댓글, 조만간 더 공부하여 실시간 채팅까지도 만들어 볼 생각입니다.

Node.js에 Mysql을 연결하는 작업을 하려 Sequelize를 처음 사용해보았습니다. Java 프로젝트에서 SQL 쿼리문을 사용하여 만들어봐서 나름 자신있었지만 Sequelize를 사용해보면서 많이 다르다는 것을 느꼈습니다.😥 ORM이란걸 처음 사용해봐서 낯설면서 어렵게 다가왔고 Sequelize를 사용하여 DB 설계와 생성, 데이터 입출력 모든게 어려웠습니다. 쿼리는 실행 즉시 성공, 실패를 알 수 있지만 요령이 없어서 그런지 일단 다 만들어놓고 잘 돌아가길 비는 수 밖에 없었던 것 같아요. 도커 서버 재설치하고 코드 여러줄을 고친 후에야 잘 돌아가는 걸 확인했는데 많이 사용해보고 익숙해져야 한다고 생각들었습니다.

다음주도 화이팅!!👊

profile
백엔드 개발을 공부하고 있습니다.
post-custom-banner

0개의 댓글