[CS50] C 기초
TIL
C 언어C는 오래되고 전통적인 텍스트 기반 언어이다.#include int main(void){ printf("hello, world\n");} 여기서 int main(void)는 Scratch의 "초록색 깃발을 클릭했을 때" 블록과 같다. 프로그램의 시작을 의미한다. printf 함수printf("hello, world\n")은 Scratch의 "'hello, world'라고 말하기" 블록과 같다.텍스트는 항상 " "쌍따옴표로 감싸야 하며, 문장 끝에는 세미콜론(;)을 붙인다. 일상에서 마침표(.)를 쓰는 것과 같다. include#include 는 stdio.h 파일을 불러와 printf 함수를 사용할 수 있게 한다. C로 작성한 코드는 파일이름.c 형식으로 저장해야 한다. Word처럼 자동으로..
타입스크립트 유틸리티 타입
Frontend
유틸리티 타입은 타입스크립트가 자체적으로 제공하는 특수한 타입들로, 제네릭, 맵드 타입, 조건부 타입 등을 이용해 실무에서 자주 사용되는 타입들을 모아 놓은 것이다. 예를 들어 Readonly로 모든 프로퍼티를 읽기 전용으로 만들 수 있다.interface Person { name: string; hp: number;}const person: Readonly = { name: "devmark", hp: 30};person.name = ''; // ❌ 읽기 전용 프로퍼티 Partial로 모든 프로퍼티를 선택적으로 만들 수도 있다.const person: Partial = { name: "devmark",}; 이 글에서는 실무에서 자주 사용되는 유틸리티 타입들을 직접 구현하며 동작 원리를 이해해보려..
[TS] 조건부 타입과 infer를 활용한 타입 추론 연습
TIL
1. 조건을 만족하는 IsProductKey 타입 완성IsProductKey 타입- T가 Product의 key 중 하나일 경우 결과는 true 타입- T가 Product의 key 중 하나가 아닐 경우 결과는 false 타입interface Product { id: number; name: string; price: number; seller: { id: number; name: string; company: string; };}type IsProductKey = any;​type IsProductKey = T extends keyof Product ? true: false; 2. 조건을 만족하는 Extract 타입 구현Extract- T로부터 U만 추출하는 타입type Extr..