(노드 입문편 개인 과제중)
일단 오늘 하고자 하는 부분까지는 끝마쳤다.
API 부분까지 강의 진도를 나가고 프로젝트 폴더 구조와 app.js, router 모듈 파일 두 개(posts.js, comments.js)를 대강 만들어놓았다. 내일 MongoDB와 어떻게 연결하는지와 배포 부분을 듣고 마저 하면 된다.
- Node.js의 세 가지 특성 - 논 블로킹 I/O, 싱글 스레드, 이벤트 루프. 더 깊이 조사해보고 싶다.
- REPL 환경은 입력 코드의 결과값을 즉시 볼 수 있어 편리한 개발 환경이다. 자바스크립트에게는 Node.js와 웹 브라우저의 콘솔이 REPL 환경이다.
- 그냥 IDLE이 거의 이 개념 아닌가..?
- 제어권을 넘기지 않으면(=블로킹 환경) 비동기 처리가 가능한 환경이어도 비동기 처리를 수행하지 못한다. 논 블로킹은 비동기 처리의 전제조건 같은 것. ⇒ 더 깊은 조사가 필요함
- 프로미스 객체를 이리저리 조금 연습했다.
- async 비동기 함수와 await 연산자
- Node.js의 node_modules 폴더가 파이썬 가상환경 venv 폴더같은 거구나! 공유하거나 배포할 때 포함시키지 않는다는 점까지 유사하다.
- package.json 파일은 뭔가 requirement.txt 같은 느낌이고…
- Node.js의 Router와 모듈 exports를 실험하여 적어놓았다.
- 미들웨어란 무엇인가? 동작 방식이 이해되지 않는다.
어제 결심했던 대로, 이번주 전략은 ‘일단 과제를 만들자. 마쳐놓고 돌아와서 복습하자’이다. 여태껏 이 정도로 완전한 탑다운 방식으로 공부한 적이 없는데 이것도 새로운 도전이다.
그래서 오늘 노트 정리를 거의 안 하고 강의를 죽죽 들었다. 심지어 강의 노트를 전부 다 정독하지도 않았다. 돌아와서 자세히 보아주겠다는 (마음의) 약속을 남기고, 과제에 필요한 부분이 언제 등장하나 귀를 쫑긋 세우고 듣다보니 나름 재미가 있었다. 마침내 과제 비슷하게 라우터를 작성하고 모듈을 분리하는 등의 내용이 등장할 땐 설레기까지 했다. 어제 급하게 세운 전략이긴 하지만 흥미도도, 진행도도 괜찮게 가고 있는 것 같다.
Uploaded by N2T