전체 스택 프로젝트를 위한 My Express 애플리케이션 폴더 구조 및 설정
폴더 구조에 신경을 쓰는 이유는 무엇입니까?
구조에 관한 모든 것, 코드를 유지 관리할 수 있게 만들고 코드 기반에서 발생하는 버그를 쉽게 찾아낼 수 있습니다. 기여자가 코드 기반을 효율적으로 확장하는 데 쉽게 도움이 됩니다.
폴더 및 파일의 빠른 분류.
프로젝트의 루트에는
configuration
파일이 있는 config.js
폴더가 있으며 데이터베이스 URL과 같은 민감한 데이터의 보안을 손상시키지 않고 안전하고 안전하게 .env
패키지를 사용하여 dotenv
파일에 액세스할 수 있습니다. 응용 프로그램 개발에 중요한 해싱 비밀 및 기타 키.require("dotenv").config();
const config = {
env: process.env.NODE_ENV || "development",
port: process.env.PORT || 3001,
mongoUri: process.env.MONGODB_URI,
jwtSecret: process.env.JWT_SECRET || "YOUR_SECRET_KEY",
braintreeId: process.env.BRAINTREE_MERCHANT_ID,
braintreePublicKey: process.env.BRAINTREE_PUBLIC_KEY,
braintreePrivateKey: process.env.BRAINTREE_PRIVATE_KEY,
};
module.exports = config;
다음으로 애플리케이션의 MVC 아키텍처에 도달할 수 있습니다. Model-View-Controller는 애플리케이션의 핵심이며 뷰는 React를 사용하여 클라이언트 폴더에서 처리됩니다.
모델은 데이터베이스 스키마 또는 특정 데이터를 데이터베이스에 저장하려는 방식의 구조를 정의하는 곳입니다. 이 프로젝트에서는 데이터베이스에 MongoDB를 사용했습니다. 문서 모음이며 각 문서는 모델의 인스턴스입니다. 우리는 정의합니다.
컨트롤러는 데이터베이스에서 데이터를 생성, 읽기, 업데이트, 삭제하기 위해 데이터베이스와 상호 작용하는 방식입니다. 서버가 들어오는 요청을 처리하고 사용자 요청에 응답하는 모든 논리는 컨트롤러에서 처리됩니다.
마지막으로 Routes 폴더에는 쿼리 데이터에 노출하고 정보를 서버로 보내는 모든 엔드포인트가 포함되어 있으며 서버에 대한 요청이 올바른 순서로 처리되도록 미들웨어로 다른 컨트롤러 논리가 포함되어 있습니다.
모델-뷰-컨트롤러란 무엇입니까?
이것은 웹 애플리케이션에 일반적으로 사용되는 디자인 패턴이며 가장 인기 있는 디자인 패턴 중 하나입니다. MERN(Mongo, Express, React 및 Node) 애플리케이션의 View 부분은 React 라이브러리에 의해 프런트 엔드에서 처리됩니다. 노드에서 실행되는 익스프레스 기반 백엔드는 컨트롤러, 경로 및 모델이 있는 곳입니다.
다음 프로젝트에서 이 접근 방식을 사용해 보세요. 풀스택 웹 개발 프로젝트를 위한 다른 흥미로운 디자인 패턴을 공유하세요 ^_^
Reference
이 문제에 관하여(전체 스택 프로젝트를 위한 My Express 애플리케이션 폴더 구조 및 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/webzth/my-express-application-folder-structure-and-setup-for-fullstack-projects-2p6l텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)