4

익스프레스 + 엠버 + 소켓 입출력 프로젝트 파일 구조 그래서 나는 최근 노드에 들어가기 시작했습니다, 그리고 익스프레스 프레임 워크를 사용하여 몇 가지 프로젝트 작업을 시작했다. 나는 그것을 좋아한다 - 문법은 대화 형 jQuery 개발자라는 사실에 정말 호소한다.노드 - MVC 개발

그러나 프로젝트 파일 구조의 측면에서 나는 우둔한 것처럼 보일뿐 아니라 아마도 비례하지 않는 것으로 보입니다.

저는 github에서 기본적인 프로젝트를 보았습니다 : https://github.com/KingScooty/node-express-3.0-html5-boilerplate 저를 위해 아주 잘 작동합니다.

이제는 Ember.js을 통합하려고합니다. 그러나, 나는 어떻게 디렉토리를 구조화할지 모른다. 나는이의 라인을 따라 뭔가를 생각하고 있어요 :

project 
├── app 
│   ├── collections 
│   ├── models 
│   └── views 
├── node_modules 
├── public 
│   ├── css 
│   ├── img 
│   └── js 
├── routes 
└── server 
    ├── environment 
    └── logs 

소켓을 설정은 서버 폴더에 이동 IO, 모든 노드 서버 설정 및 환경 설정 설정 (개발/준비/생산)과 함께. 정적 파일과 jQuery가 공개되며 MVC app의 장점은 app 폴더에 있습니다.

하지만 응용 프로그램 폴더와 별도로 공용 폴더를 가지고 있다고 생각하지 않습니다. MVC 폴더 구조에서 다양한 JS 파일을 포함하는 방법에 대해서도 언급 할 것입니다.

(프런트 엔드 MVC 개발은 난에 대해 거의 아는 일이지만,이 내가 아니라 내 노드 환경에 통합하는 동안 배우고 노력하고있어입니다) 누군가가 가리킬 수있는 경우

나 프런트 엔드 MVC 개발을위한 올바른 경로에 노드/소켓 io 전원 백 엔드를 사용하는 동안, 그것은 악한 것입니다!

건배.

-S

답변

6

그래서 익스프레스에 대한 것은 정말 코드에 구조 어떤 종류를 적용하지 않는다는 것입니다. 이것은 혼합 된 축복의 일종입니다. JSON API와 같은 단순한 작업에는 유용하지만 전체 MVC 프레임 워크와 UI를 다루기 시작하면 더 복잡해집니다.

following post이 도움이 될 수 있습니다.

저는 개인적으로 GeddyRailwayjs (현재는 CompoundJS)을 살펴 보시기 바랍니다. 이 두 가지 모두 전체 프로세스에 대한 추가 구조를 제공합니다.

더 광범위한 list of options here을 살펴볼 수도 있습니다.

+1

Geddy에 대한 링크가 끊어집니다. 지금 http://geddyjs.org/이어야합니다. – guaka

+1

감사합니다. 몇 개의 링크가 깨진 것 같습니다. 그들은 이제 모두 고쳐 져야합니다. –

10

Sails.js는 Express 경로와 동일한 방식으로 Socket.io 메시지를 RESTful하게 라우팅하는 고유 한 구별을 갖는 노드 용 MVC 프레임 워크입니다.

또한 프론트 엔드 구성 요소 인 Mast가 번들로 제공됩니다. Mast는 Meteor과 비슷한 기능을 제공하여 클라이언트에서 직접 데이터베이스와 대화 할 수 있습니다. 보다 복잡한 기능을 제공해야하는 경우 백엔드에 컨트롤러를 추가하기 만하면됩니다.여기

더보기 : https://github.com/balderdashy/sails