728x90
모듈 (Module)이란 무엇인가요? Node.js에서 모듈을 사용하는 방법은 무엇인가요?
모듈 (Module)이란?
여러 기능들에 관한 코드가 모여있는 하나의 파일
- 유지보수성 : 기능들이 모듈화가 잘 되어있다면 의존성을 그만큼 줄일 수 있기 때문에 어떤 기능을 개선한다거나 수정할때 훨씬 편하게 할 수 있다.
- 네임스페이스화 : 자바스크립트에서 전역변수는 전역공간을 가지기 때문에 코드의 양이 많아질수록 겹치는 네임스페이스가 많아질 수 있다. 그러나 모듈로 분리하면 모듈만의 네임스페이스를 갖기 때문에 그 문제가 해결된다.
- 재사용성 : 똑같은 코드를 반복하지 않고 모듈로 분리시켜서 필요할 때마다 사용할 수 있다.
Node.js에서 모듈을 사용하는 방법
외장 모듈
- 개발자들이 만든 것
- npm으로 다운로드 받은 후 require로 사용
내장 모듈
- 기본으로 node.js 설치시 제공되는 모듈
모듈 불러오기
const test = require('test')
모듈 생성하기
exports / module.exports
// 첫 번째 방법 : exports에 직접 프로퍼티를 설정
exports.add = function(a, b){
return a + b;
}
exports.multiply = function(a, b){
return a * b;
}
// 두 번째 방법 : 새로운 객체에 프로퍼티를 설정 후 module.export에 할당하기
var calc = {};
calc.add = function(a, b){
return a + b;
}
calc.multiply = function(a, b){
return a * b;
}
module.exports = calc;
exports는 module.exports를 참조
일반적으로 module.exports를 통해 모듈을 생성
require 키워드는 object 를 반환합니다. 그리고 module.exports 와 exports 는 call by reference 로 동일한 객체를 바라보고 있고, 리턴되는 값은 항상 module.exports
모듈은 기본적으로 객체이고, 이 객체를 module.exports, exports 모두 바라보고 있는데, 최종적으로 return 되는 것은 무조건 module.exports 라는 것
테스트 (Testing)에 대해 어떤 것을 알고 있나요?
테스트는 소프트웨어가 예상대로 동작하는지 확인
버그, 결함을 발견하여 이를 수정하는 과정
- 단위 테스트(Unit Testing): 개별적인 함수나 모듈 등의 코드 블록 단위로 테스트를 수행하는 것으로, 가장 기본적인 테스트 방법입니다. 주로 자동화된 테스트 도구를 사용하여 실행합니다.
- 통합 테스트(Integration Testing): 여러 개의 모듈이나 시스템 구성 요소들을 통합하여 테스트를 수행하는 것입니다. 이를 통해 각 모듈이 함께 작동할 때 발생할 수 있는 문제를 찾아낼 수 있습니다.
- 인수 테스트(Acceptance Testing): 사용자의 요구사항을 만족시키는지를 확인하는 테스트입니다. 보통 사용자가 시스템을 직접 사용하며 진행됩니다.
- 성능 테스트(Performance Testing): 시스템의 성능을 측정하여 병목 현상이나 성능 저하 원인을 파악하는 것입니다. 이를 통해 성능 향상을 위한 개선 작업을 진행할 수 있습니다.
- 보안 테스트(Security Testing): 시스템이 안전하게 운영될 수 있는지를 확인하는 테스트입니다. 주로 해킹 공격 시뮬레이션 등을 통해 취약점을 찾아내고 보안에 관련된 결함을 수정합니다.
'코딩캠프 > 내일배움캠프' 카테고리의 다른 글
[ 취업대비반 ] 04.25(화) 데일리과제 9 (0) | 2023.04.25 |
---|---|
[ 취업대비반 ] 04.24(월) 데일리과제 8 (0) | 2023.04.24 |
[ 취업대비반 ] 04.20(목) 데일리과제 6 (0) | 2023.04.20 |
[ 취업대비반 ] 04.19(수) 데일리과제 5 (0) | 2023.04.19 |
[ 취업대비반 ] 04.18(화) 데일리과제 4 (0) | 2023.04.18 |