1. TypeScript JavaScript의 상위 집합(superset)으로 정적 타입 검사를 지원해요! 더 안전하고 예측 가능한 코드를 작성할 수 있게 도와주죠. .ts 파일을 .js 파일로 컴파일하여 실행합니다. 2. 기본 타입 및 고급 타입 ☑️ JavaScript에서 파생된 기본 타입 string number boolean null undefined ☑️ 새로 추가된 타입 tuple enum any unknown 3. 타입의 집합화 ☑️ union 타입 여러 타입 중 하나를 가질 수 있는 타입을 정의할 때 사용해요. 취사선택! 사용 방법: 타입1 | 타입2 ☑️ intersection 타입 여러 타입의 조합을 가질 수 있는 타입을 정의할 때 사용합니다. 퓨전! 사용 방법: 타입1 & 타입2 4...
☑️ readonly란? let, const 두 키워드는 JavaScript에서 많이 사용되는 키워드죠. 하지만, readonly는 TypeScript에서 등장한 키워드에요! readonly는 TypeScript에서 객체의 속성을 불변으로 만드는 데 사용되는 키워드에요! 즉, 클래스의 속성이나 인터페이스의 속성을 변경할 수 없게 만들 수 있습니다. ☑️ 사용 사례 class Person { // 클래스는 다른 강의에서 자세히 설명해드릴게요! readonly name: string; readonly age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } } const person = new Person..
1) 튜플(tuple) ☑️ 튜플이란? 튜플은 서로 다른 타입의 원소를 순서에 맞게 가질 수 있는 특수한 형태의 배열입니다. ☑️ 튜플과 배열의 차이 배열은 number[], string[] 처럼 같은 타입의 원소만 가질 수 있었습니다. const testScores: number[] = [90, 85, 78, 92, “88”]; 위의 코드처럼 마지막 원소를 string 타입으로 넣으면 에러가 발생하죠! 숫자만 넣어줘야 합니다. 즉, 같은 타입의 원소만 취급할 수 있어요. 하지만, 튜플은 어떤 타입의 원소를 허용할 것인지 정의만 해주면 됩니다. 얼마든지 허용된 타입의 데이터들을 저장할 수 있습니다! ☑️ 사용 사례 const person: [string, number, boolean] = ['Sparta..
1) S(SRP. 단일 책임 원칙) → ⭐ 매우 중요 ⭐ ☑️ SRP 원칙 클래스는 하나의 책임만 가져야 한다는 매우 기본적인 원칙입니다. 특히, 5개의 설계 원칙 중 가장 기본적이고 중요한 원칙이에요! 절대 잊어버리시면 안됩니다! 예를 들어서, 유저 서비스라는 클래스가 있다고 가정을 해보죠. 이 유저 서비스에서는 유저 관련된 액션만 해야되고 다른 액션을 해서는 안됩니다. 잘못된 사례 살펴보기 class UserService { constructor(private db: Database) {} getUser(id: number): User { // 사용자 조회 로직 return this.db.findUser(id); } saveUser(user: User): void { // 사용자 저장 로직 this...
1) 변수, 그리고 타입에 대하여 변수란 ? 프로그래밍 언어에서 변수는 데이터를 저장하는 공간입니다! 변수 , 그리고 타입 변수에 저장되는 테이터는 여러가지 타입이 있을 수 있습니다 숫자, 문자열 , 논리값, 배열, 객체 등이 있습니다 타입을 이해하고 올바르게 사용하면 코드의 가동성과 안정성이 향상됩니다 2) 오류가 일어나는 가장 빈번한 사례 잘못된 타입을 사용할 경우 잘못된 타입을 사용하거나 예상치 못한 타입이 사용될 경우에는 오류가 발생할 수 있습니다! 이러한 오류는 컴파일 타임에 발생하지 않아요. 실행 시간에 발생을 하죠. 게다가 코드가 복잡해질수록 찾기 어려워집니다. 올바르게 타입을 사용한 경우 타입을 제대로 이해하면 이런 오류들을 미리 방지할 수 있어요! 타입에 대한 제대로 된 이해가 중요한 이..
