1. 컴퓨터 네트워크란? 컴퓨터와 다른 장치들이 데이터를 주고받을 수 있도록 연결하는 시스템 2. 네트워크의 기본 개념 OSI 7계층 모델 물리 계층(Physical Layer) 데이터 링크 계층 (Data Link Layer) MAC 주소: 물리적인 네트워크 인터페이스를 식별하는 데 사용되는 주소 이더넷 프레임: 데이터를 전송하기 위한 패킷 형식 네트워크 계층 (Network Layer) 라우팅: 데이터 패킷이 출발지에서 목적지까지 가는 경로를 결정하는 과정 IP 주소: 네트워크 상에서 각 장치를 식별하는 데 사용되는 주소 전송 계층 (Transport Layer) TCP 특징: 연결 지향적이며, 흐름 제어와 오류 복구 기능을 제공 UDP 특징: 연결이 없으며, 데이터 전송만을 위한 간단한 프로토콜 세..
1. RESTful API란? REST(Representational State Transfer) 웹의 기본적인 상태 전달 구조를 기반으로 한 아키텍처 스타일로, 클라이언트와 서버 간의 상태를 전송하는 방법을 정의한다. API란? 어플리케이션 프로그래밍 인터페이스는 다른 소프트웨어 시스템과 통신하기 위해 따라야 하는 규칙을 정의한다. 2. RESTful API 주요 특징 Stateless(무상태성) 서버가 이전의 모든 요청과 독립적으로 모든 클라이언트 요청을 완료하는 통신 방법을 나타낸다. 클라인언트는 임의의 순서로 리소스를 요청할 수 있으며 모든 요청은 무상태이거나 다른 요청과 부린된다. REST API 설계 제약 조건은 서버가 매번 요청을 완전히 이해해서 이행할 수 있음을 의미한다. Client-Se..
1. Path Parameter (경로 매개변수) 경로 매개변수는 URL의 일부로 전달 주로 RESTful API에서 리소스를 식별하는 데 사용 경로의 특정 부분을 변수로 대체하여 동적인 URI를 만들어낼 수 있다. 반적으로 리소스의 식별자 또는 고유한 키를 전달하는 데 사용 GET /users/{userId} GET /posts/{postId} GET /books/{bookId} 2. Query Parameter (쿼리 매개변수) 쿼리 매개변수는 URL 끝에 '?' 뒤에 추가되며 'key=value' 형식으로 전달 주로 필터링, 정렬, 페이지네이션 등과 같은 요청의 부가적인 정보를 전달하는 데 사용 URL의 끝에 위치하기 때문에 경로와는 별도로 전달 주로 데이터 필터링, 정렬, 페이지 네이션, 검색 등..
1. 소프트웨어의 가치 소프트웨어는 시간에 지남에 따라 변화하는 요구사항에 적응할 필요가 있다. 따라서 소프트웨어 개발자는 새로운 가치를 제공할 수 있고, 변환하는 요구사항에 적응할 수 있는 소프트웨어를 만들 필요가 있다. 변화에 적응하는 소프트웨어의 특징 3가지 유연성 확장성 유지 보수성 2. 의존 사전적 정의: 어떠한 일을 자신의 힘으로 하지 못하고 다른 어떤 것의 도움을 받아 의지한다. 코드에서 표현되는 의존 객체 참조에 의한 연관 관계 메서드 리턴타입이나 파라미터로서의 의존 관계 상속에 의한 의존 관계 구현에 의한 의존 관계 /* 1. 객체 참조에 의한 연관 관계 */ class Car { constructor(brand) { this.brand = brand; } startEngine() { c..
01. 데코레이터 @ApiProperty() 클래스의 속성을 문서화할 때 사용. 속성에 대한 설명, 예제 값 및 다른 정보를 제공할 수 있다. import { ApiProperty } from '@nestjs/swagger'; export class CreateCatDto { @ApiProperty() name: string; @ApiProperty({ type: Number, description: 'The age of a cat', minimum: 1, default: 1, }) age: number; @ApiProperty() breed: string; } @ApiOperation() 컨트롤러의 메서드를 문서화할 때 사용된다. 메서드의 요약, 설명 및 응답 타입을 지정할 수 있다. import { ..