nodejs_2week's People
nodejs_2week's Issues
안녕하세요 잘보고갑니다
안녕하세요 항해 3기 황창환입니다
작지만 조금이나마 도움이 되고자 코멘트 남깁니다!
-
비즈니스 로직이 돌아가는 라우터들이 여기저기 흩어져있습니다! 한폴더 안에 여러개 파일로 분류를 하는게 조금 더 좋을 것 같습니다.
(이를테면 Lookup.js가 있는데 app.js에서도 게시물과 관련되어있는 라우터들이 보입니다. 그리고 Lookup.js가 아닌 post.js, user.js등 분류를 하는것이 조금 더 보기 좋은 파일구조가 되지 않을까 싶습니다!) -
1번과 연결되어 api의 end-point가 조금 통일되지 않아보입니다. REST API에 대해서 검색해보시고 공부해보시면 더 좋게 보일 듯 싶습니다!
-
res.send와 res.json을 혼용해서 사용하시고 계신데 어차피 객체로 response를 보낸다면 res.json이 조금 더 좋은 선택이 될 수 있습니다.
참고:https://haeguri.github.io/2018/12/30/compare-response-json-send-func/
- https://github.com/nagitak/nodejs_2week/blob/fb06666925d9c82f825ecd5bdc615c5977dc5dcc/routes/lookup.js#L65-L113
try/catch문의 위치가 조금 명확하지 않아 router.post 안에 try/catch문이 들어가는것이 조금 더 좋을 것 같습니다.
try/catch문을 다른곳은 쓰지 않으셨는데 try/catch문을 통해서 에러 핸들링을 한다면 좋은 코드짜는데 도움이 되실 것 같습니다 :)
참고:try/catch
참고:express error-handling
그리고 서버는 닫혀있어서 실제 서비스는 이용 못해봤습니다 ㅠㅠ
넘누 고생하셨고 항해 남은기간 화이팅하세요~~
안녕하세요! 과제 코멘트 남겨드리고 갑니다!
안녕하세요! 항해99 2기 수료생 이용우입니다. 서비스 잘 보고 갑니다.
몇 가지 궁금한 점이 있어 질문드립니다.
- .gitignore를 이용하여 업로드 할 파일을 예외 처리할 수 있습니다.
- node_modules 파일은 package.json 파일을 이용하여 설치할 수 있으므로 업로드 하지 않아도 됩니다.
- 이후 보안 설정 파일과 프로젝트 실행에 상관없는 파일을 예외 처리하는 것이 좋을 것 같습니다.
- 참고: .gitignore-적용하기
- 모든 Router 정보들이 lookup.js 파일에 정의되어 있는 것 같습니다.
- Router의 각 역할별로 별도의 파일을 만들어 관리하는 것이 프로젝트를 분석하는데 효율적일 것 같습니다.
- 사용자 정보는 users.js, 게시글 정보는 posts.js 와 같이 별도의 파일로 분리하는 것이 어떤 파일이 언제 실행되는지 이해하기 쉬울 것 같습니다.
- 예외 처리 되지 않은 라우터들이 많은 것 같습니다.
- 예외 처리되지 않은 라우터에서 에러가 발생할 경우 서버가 멈추거나, 종료될 수 있습니다.
- 에러 상황은 언제든지 발생할 수 있으므로 예외 처리를 추가하면 좋을 것 같습니다.
- 참고: expressjs Exception
- app.js 파일에서 작성한 라우터를 별도의 파일로 분리하면 좋을 것 같습니다.
- app.js 파일에서는 서버를 시작하기 위한 정보에 대해 나타내는 것이 다른 사람이 코드를 보았을 때, 이해하기 수월합니다.
- 게시글 삭제, 수정에 관한 내용을 routes/posts.js 파일을 만들어 분리하면 더 깔끔한 아키텍처가 될 것 같습니다.
과제 수행하시느라 고생많으셨습니다!
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.