전체 글
-
[TIL] Jest카테고리 없음 2024. 2. 26. 21:01
Jest : 테스트 코드의 표현이 다른 프레임워크보다 훨씬 간결 yarn 을 이용하여 모듈 설치 yarn init -y yarn add -D jest package.json 파일 내에 복사 => yarn test 로 테스트 가능해짐. "type": "module", "scripts": { "test": "node --experimental-vm-modules node_modules/.bin/jest" }, 테스트 할 파일 이름.spec.js 로 파일을 만든다. 단위 테스트 코드를 작성한다. test(): 단위 테스트를 묶어주는 함수 expect(): 특정 값이 만족되는지(정상적인지) 확인하기 위한 표현식을 작성할 수 있게 해주는 함수 ex) import { isEmail } from './validati..
-
[TIL] 테스트 코드카테고리 없음 2024. 2. 20. 21:01
테스트 코드 (Test Code) : 개발한 코드가 의도대로 동작하고 문제가 없는지 테스트하기 위해 작성하는 코드 : 코드가 멀쩡함을 증명하기 위한 것이 아니라, 결과에 대한 기대치를 설정하고 검증하기 위한 것 F.I.R.S.T 단위 테스트 원칙 : Fast — 유닛 테스트는 빨라야 한다. : Isolated — 다른 테스트에 종속적인 테스트는 절대로 작성하지 않는다. : Repeatable — 실행할 때마다 같은 결과를 만들어야 한다 . : Self-validating — 스스로 결과물이 옳은지 그른지 판단할 수 있어야하며, 특정 상태를 수동으로 만들어야 동작하는 테스트는 작성x : Timely — 유닛 테스트는 프로덕션 코드가 테스트를 성공하기 직전에 구성되어야 한다. 테스트 종류 1) 단위 테스트 ..
-
[TIL] 아키텍처 패턴 (Architecture Pattern)카테고리 없음 2024. 2. 19. 20:50
: 소프트웨어의 구조를 구성하기 위한 가장 기본적인 토대를 제시 1) MVC 패턴 (Model View Controller Pattern) : UI 가 필요한 어플리케이션에서 많이 사용 Model : 데이터, 비즈니스 로직 담당 View : UI 담당 Controller : 클라이언트의 요청을 모델과 뷰로 전달 2) 계층형 아키텍처 패턴 (Layered Architecture Pattern) : 시스템의 서로 다른 기능을 여러 계층으로 분할하여 관리 : controller, service, repository 계층으로 분리 : 각 계층이 높은 응집도(Cohesion)를 가지며, 다른 계층과는 결합도(Coupling)를 최소화 하는 것 : 상위 계층은 하위 계층을 사용할 수 있지만, 하위 계층은 독립적으로..
-
[TIL] 0216 객체 지향 프로그래밍 (OOP), SOLID카테고리 없음 2024. 2. 16. 20:57
객체 (Object) : 현실 세계의 물체 혹은 개념을 소프트웨어 적으로 옮긴 것으로, 정보 + 행동(method) 으로 구성된다. 객체 지향 (Object-Oriented) : 객체 도출, 각각의 역할 명확히 정의하는 것에 초점을 맞추는 방법론 : 크고 복잡한 시스템도 효과적으로 분해와 구성이 가능하여, 효율적으로 관리할 수 있다. 객체 지향적 소프트웨어 1) 캡슐화, 다형성, 상속을 지원 2) 데이터 접근 제한 (Access modifier) 가능 절차 지향 소프트웨어 프로그래밍 패러다임 ( Programming Paradigm ) : 프로그래밍의 방식이나 관점을 바탕으로 효율적이고 명확한 코드를 작성하는 방법 1) 구조적 프로그래밍 : 가장 처음 적용된 패러다임 2) 함수형 프로그래밍 : 함수 중심..
-
[TIL] HTTP 상태 코드카테고리 없음 2024. 2. 15. 20:28
1XX : Information responses / 정보 : 요청을 받았으며 프로세스를 계속 진행 100 Continue : 진행 중, 현재까지의 진행상태에 문제가 없음. 101 Switching Protocol : 클라이언트가 보낸 Upgrade 요청 헤더에 대한 응답에 들어가며, 서버에서 프로토콜을 변경할 것임을 알려줌 : 해당 코드는 Websocket 프로토콜 전환 시에 사용 102 Processing(WebDAV) : 서버가 요청을 수신하여 처리하고 있지만, 아직 제대로 된 응답을 알려줄 수 없음. 2XX : Successful responses / 성공 : 요청완료 200 OK : 요청이 성공적 201 Created : 요청이 성공적, 새로운 리소스가 생성 : POST 요청 또는 일부 PUT ..
-
[TIL] 0213 EJS카테고리 없음 2024. 2. 13. 20:33
EJS (Embedded JavaScript Template) : 일반 JS 로 HTML 마크업을 생성할 수 있는 간단한 템플릿 : 스크립트 내용을 하나의 요소처럼 사용할 수 있고, 서버에서 보낸 변수를 가져와 사용할 수 있음. : ejs라는 파일 안에 HTML 문법과 EJS 문법을 사용하여 동적인 화면을 제공할 수 있음. : node.js 에서 구축한 서버에서 데이터를 받아 바로 뿌려주고 싶은 경우 사용하면 좋음. : html 일부만 ejs 로 대체해주면 되기에 편리함. yarn 이나 npm 을 이용하여 ejs 설치 yarn add ejs npm i ejs app.js 에 ejs 설정 추가 app.set('view engine', 'ejs'); app.set('views', '/views'); *** ..