본문 바로가기
카테고리 없음

[JS] 모듈방식의 프로그래밍

by hbIncoding 2024. 8. 26.

1. 모듈방식의 프로그래밍이란

  • 소프트웨어를 작고 독립적인 구성 요소인 "모듈"로 나누어 개발하는 접근 방식
  • 각 모듈은 특정 기능을 담당하고, 다른 모듈과 명확하게 정의된 인터페이스를 통해 상호작용한다.
  • 모듈화는 코드의 재사용성, 유지 보수성, 가독성, 테스트 용이성을 크게 향상시킨다.
  • 모듈화의 특징
    • 독립성 : 모듈은 독립적으로 개발, 테스트, 배포 될 수 있다. 하나의 모듈을 수정해도 다른 모듈에 큰 영향을 주지 않도록 설계된다.
    • 캡슐화 : 모듈은 내부 구현을 숨기고, 외부에 필요한 인터페이스만 노출하여 코드의 안정성을 높이고, 의도치 않은 변경으로 인한 오류를 줄여준다.
    • 재사용성 : 한 번 작성된 모듈은 다른 프로젝트에서도 쉽게 사용가능하여 효율성 증가
    • 유지보수성 : 모듈 단위로 코드를 관리하여 버그 수정이나 기능 개선이 훨씬 간편해진다.
    • 조직화 : 코드가 모듈로 잘 조직화되어 프로젝트 구조를 쉽게 이해 가능하고, 협업도 원활해진다.

2. 모듈방식의 예시

  • express를 활용한 디렉토리 구조
📦public
 ┣ 📂css
 ┃ ┣ 📜nomalize.css // 일관된 스타일을 위해 nomalize.css 설정
 ┃ ┗ 📜styles.css
 ┣ 📂fonts
 ┣ 📂images
 ┗ 📂js
📦views // 정적 레이아웃 관리
 ┣ 📜header.ejs
 ┣ 📜index.ejs
 ┗ 📜main.ejs
📦src
 ┣ 📂core
 ┣ 📂layer // Model-Controller-Service 구조를 통해 기능별 관리 및 계층 분리
 ┃ ┣ 📂controller
 ┃ ┣ 📂model
 ┃ ┗ 📂service
 ┣ 📂routes
 ┣ 📂utils
 ┣ 📜app.js
 ┣ 📜constants.js
 ┗ 📜index.js