정글일지 47
날짜
2023년 6월 7일 수요일
계획
- node.js 서버 구현 공부
- mongoDB 연결해보기
- skyoffice 서버 공부
- 게임 기능 공부
- 프로젝트 계정 깃허브 개설
- 프로젝트 아이디어 재설정 및 구체화
- 출제용 알고리즘 문제 DB 찾아보기
TIL
Node.js & express.js 를 통한 서버 구현 및 MongoDB 연결
terminal (나는 window라 powershell)에서 원하는 디렉토리에 npm init을 실행시켜 package.json 파일을 만들었다. 내용에는 내가 할 project에 관한 정보가 나와있고 내가 가져온 dependencies(mongoose, express 같은)가 나와있다. scripts에 "start":"node index.js" 코드를 추가시켜 index.js가 처음 시작되는 파일로 설정하였다.
VScode terminal에서 npm install express --save를 작동시켜 express도 node_modules 와 package-lock.json도 추가시켰다.
| |
index.js를 다음과 같이 작성하였다.
MongoDB에서 복사해온 코드 뒤에 userNewUrlParser: true, useUnifiedTopology:true, useCreateIndex: true, useFindAndModify: false를 추가해야 했는데, 현재 버전에서는 지원하지 않는다고 한다. 실행 시 오류가 발생해서 삭제하였더니 잘 작동되었다.
npm run start를 통해 실행시켰다.
Model 과 Schema
Schema
작성한것이 누구인지, 작성을 할 때 post의 이름이 무엇인지, 이름의 type은? 이름의 최고 길이는? 등 하나하나 성질과 정보를 지정해준다.
Model
Schema를 감싸주는 역할을 한다.
내 프로젝트 폴더 내의 models폴더를 만들고 내부에 User.js 파일을 만들었다. 이 내부에서 Schema를 설정해 주었다.
| |
결과
- 아이디어 방향은 어느정도 가닥이 잡혔다. 말해도 상관은 없지만.. 우선 적지 않겠다. 나쁘지 않아 보이지만, 내일 코치님에게 피드백을 받아보면 어찌될지 모른다. 최대한 구체적으로 정하고 가야 값진 피드백을 받을 수 있을듯
- express와 mongoDB의 연결이 생각보다 어렵다. 빨리 체득해야 하는데.. 서버를 만든다는 개념이 뭔지 아직 가닥을 못잡고 있다.
- 우리가 이용할 오픈소스나 api도 못 보고 있다. 속도를 올려야 할텐데 걱정이다.
회고
중이염은 아프고, 팀 프로젝트는 잘 안풀리고, 스스로 못난게 너무 미워서 스트레스가 많다. 그 스트레스로 인해 팀원들이 피해를 받는 것 같다. 코딩은 못해도 리더 역할은 잘 할 수 있을 거라 했지만 전혀 아닌것 같아 참 참혹한 심경이다. 팀원들과 개인적으로 얘기하는 시간을 가지려고 노력한다. 생각보다 내가 내 머릿속 내용을 온전하게 전달하지 못하고 있는 것, 당연하다고 생각한 것에서 발생한 오해들로 인해 시간 낭비가 많다. 최대한 많이 뱉고, 기록하고, 말해서 서로가 동일하게 이해하고 있도록 노력해야겠다.