1. 이진수와 2의 보수법 이진법(이진수) 이진법: 0과 1로 모든 수를 표기하는 방법 이진수: 0과 1만으로 표현된 수 1을 넘어가는 시점에 자리올림 숫자가 너무 길어진다는 단점 십육진법(십육진수) 십육진법: 1~9와 A~F로 모든 수를 표기(A==10, B==11, C==12, D==13, E==14, F15) 15(F)를 넘어가는 시점에 자리 올림 십진법 보다 이진수를 표현하기가 좋다. (2의 4제곱이므로) 2의 보수법 0과 1만으로 음수를 표현하는 방법 중 하나 어떤 수 n을 그보다 큰 2의 n제곱에서 뺀 값 모든 0과 1을 뒤집은 뒤, 1을 더한 값으로도 표현 가능 CPU 내부의 정보, 플래그(flag) 플래그: CPU가 명령어를 실행하는 과정에서 참고할 정보의 모음 음수 플래그가 세팅 되어 있..
1. 소스 코드에서 명령어로 컴퓨터는 명령어를 이해한다. 소스 코드는 실행되기 전 명령어(+데이터)로 변환되어 실행된다. 소스 코드: 사람(개발자)가 이해하기 편한 언어 (고급 언어) 명령어와 데이터: 컴퓨터가 이해하기 편한 언어 (저급 언어) 즉, 고급 언어로 작성된 소스 코드는 내부적으로 저급 언어로 구성된 명령어와 데이터로 변환된다. 저급 언어의 두 종류 기계어 (machine code) 어셈블리어 (assembly language) : 기계어를 사람이 이해하기 편하게 변환시킨 언어 고급 언어에서 저급 언어로 변환되는 대표적 방식 컴파일 소스 코드 전체가 컴파일러에 의해 검사, 목적 코드로 변환 C/C++, Rust 대표적인 컴파일러는 gcc, clang, Visual Studio, etc 인터프리..
프로그램을 이루는 두 정보(0과 1로 이루어진 정보) 명령어: 컴퓨터를 동작시키는 실질적인 정보 데이터: 명령어의 대상 (재료) 컴퓨터의 네 가지 핵심 부품 CPU: 명령어 해석, 실행 담당하는 장치 메인 메모리 & 캐시 메모리: 실행 중인 프로그램 저장하는 장치(전원이 꺼지면 삭제) 보조기억장치: 보관할 프로그램을 저장하는 장치(전원이 꺼져도 저장 유지) 입출력장치: 컴퓨터 내외부와 정보를 주고받는 장치
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 { ..
01. Swagger swagger란 RESTful 웹 서비스를 문서화하고 테스트하기 위한 강력한 도구와 프레임워크 백엔드 개발자와 프론트 엔드 개발자 간의 협업을 용이하게 하며 API 엔드포인트, 요청 및 응답 형식, 매개변수, 보안 등에 대한 자세한 문서를 생성하는 데 도움을 준다. API 개발 및 관리가 훨씬 효율적이며, BE와 FE 협업을 간소화 할 수 있다. 02. 주요 기능 API 문서 생성: API에 대한 자동화된 문서를 생성할 수 있다. 문서에는 엔드포인트, HTTP 메서드(GET, POST, PUT, DELETE 등), 요청 및 응답 형식, 매개변수, 예제 요청 및 응답 등이 자세하게 나와 있다. API 테스트: Swagger UI를 통해 API를 테스트할 수 있다. 사용자는 문서에서 제..
01. HTTP의 특징 비연결지향(Connectionless) HTTP는 클라이언트의 Request를 통해 서버에 데이터 요청, 서버의 Response를 통한 데이터 주는 형태로 이루어져있다. 이 과정이 끝나면 연결을 끊는 특성이 있는데, 현재 HTTP 1.1 번전에서는 connection을 계속 유지하고 요청에 재활용하는 기능이 추가되었다. HTTP header에 Keep-alive 옵션을 주어 커넥션을 재활용하게 한다. HTTP 1.1 버전에서는 Default 옵션이다. 상태없음(Stateless) Connection을 끊는 순간 클라이언트와 서버의 통신이 끝나며 상태 정보는 유지하지 않는 특성이 있다. 02. 쿠키와 세션 HTTP의 특징을 보완하기 위해서 쿠키와 세션을 사용하게 되었다. ==> 비연..