Giter Site home page Giter Site logo

nodejs_2week's People

Contributors

gitakkkk avatar

Watchers

 avatar

nodejs_2week's Issues

안녕하세요 잘보고갑니다

안녕하세요 항해 3기 황창환입니다

작지만 조금이나마 도움이 되고자 코멘트 남깁니다!

  1. 비즈니스 로직이 돌아가는 라우터들이 여기저기 흩어져있습니다! 한폴더 안에 여러개 파일로 분류를 하는게 조금 더 좋을 것 같습니다.
    (이를테면 Lookup.js가 있는데 app.js에서도 게시물과 관련되어있는 라우터들이 보입니다. 그리고 Lookup.js가 아닌 post.js, user.js등 분류를 하는것이 조금 더 보기 좋은 파일구조가 되지 않을까 싶습니다!)

  2. 1번과 연결되어 api의 end-point가 조금 통일되지 않아보입니다. REST API에 대해서 검색해보시고 공부해보시면 더 좋게 보일 듯 싶습니다!

  3. res.send와 res.json을 혼용해서 사용하시고 계신데 어차피 객체로 response를 보낸다면 res.json이 조금 더 좋은 선택이 될 수 있습니다.

참고:https://haeguri.github.io/2018/12/30/compare-response-json-send-func/

  1. 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기 수료생 이용우입니다. 서비스 잘 보고 갑니다.

몇 가지 궁금한 점이 있어 질문드립니다.

  1. .gitignore를 이용하여 업로드 할 파일을 예외 처리할 수 있습니다.
    • node_modules 파일은 package.json 파일을 이용하여 설치할 수 있으므로 업로드 하지 않아도 됩니다.
    • 이후 보안 설정 파일과 프로젝트 실행에 상관없는 파일을 예외 처리하는 것이 좋을 것 같습니다.
    • 참고: .gitignore-적용하기
  2. 모든 Router 정보들이 lookup.js 파일에 정의되어 있는 것 같습니다.
    • Router의 각 역할별로 별도의 파일을 만들어 관리하는 것이 프로젝트를 분석하는데 효율적일 것 같습니다.
    • 사용자 정보는 users.js, 게시글 정보는 posts.js 와 같이 별도의 파일로 분리하는 것이 어떤 파일이 언제 실행되는지 이해하기 쉬울 것 같습니다.
  3. 예외 처리 되지 않은 라우터들이 많은 것 같습니다.
    • 예외 처리되지 않은 라우터에서 에러가 발생할 경우 서버가 멈추거나, 종료될 수 있습니다.
    • 에러 상황은 언제든지 발생할 수 있으므로 예외 처리를 추가하면 좋을 것 같습니다.
    • 참고: expressjs Exception
  4. app.js 파일에서 작성한 라우터를 별도의 파일로 분리하면 좋을 것 같습니다.
    • app.js 파일에서는 서버를 시작하기 위한 정보에 대해 나타내는 것이 다른 사람이 코드를 보았을 때, 이해하기 수월합니다.
    • 게시글 삭제, 수정에 관한 내용을 routes/posts.js 파일을 만들어 분리하면 더 깔끔한 아키텍처가 될 것 같습니다.

과제 수행하시느라 고생많으셨습니다!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.