안녕하세요.
|
개발자 박준현입니다.

thumbnail
TypeScript - 객체지향 프로그래밍, 클래스와 오브젝트 관계

🟣 타입스크립트에서는 객체지향 프로그래밍의 클래스를 정의하고 사용할 수 있다. Object Oriented Programming 어플리케이션을 실제 세상에 존재하는 객체와 같은 단위로 쪼개고 객체들이 서로 상호 작용함으로써 시스템이 동작되는것을 객체지향 프로그래밍 이라고 한다. 연관된 변수와 함수들을 한 덩어리로 묶어서 구조화하여 표현하는 프로그래밍 스타일을 말한다. 즉, 실제 삶으로 둘러싸고 있는 사물 객체의 개념을 코드에 대입시켜 덩어리 덩어리로 묶어서 코드를 작성 한다고 생각하면 이해하기 쉬울 수 있다. 객체지향 프로그래밍에서 Class 란 ? 객체지향 프로그래밍에서 클래스와 객체는 댈래야 땔수 없는 관계이다. 객체는 클래스를 통해 만들어 질 수 있고 클래스 는 객체가 어떤 모습을 가질지를 정의 하고 묘사하는 객체의 뼈대 즉, 객체를 만들어 내는 설계도 생산 틀이라고 생각 하면 된다. 예시 위 코드를 보면 직원에 대한 정보를 담을 수 있는 변수들 과 직원의 …

May 29, 2023
TypeScript
TypeScript -함수의 타이핑, 선택적 매개변수, 기본 매개변수

함수의 타입 명시 함수의 반환 (return) 타입 함수에 최종 리턴값 함수 의 반환 타입을 명시하는 방법 void 타입 아무것도 반환 하지 않는 함수의 반환 값으로만 사용될 수 있는 타입 string 타입 함수의 return 값이 문자열 이라면 string 이라고 명시해 줄 수 있다. [] 배열 타입 반환 되는 값이 배열 타입인 경우 배열 타입을 명시해 줄 수 있다. 함수의 매개변수 타입 명시 string 타입이 명시된 후에는 streing 말고 다른 타입을 가진 인자 (argument) 는 전달 될 수 없다. 이렇게 숫자를 전달 하려고 하면 타입에 관한 에러 메세지가 나오게 된다. ⚠️ Argument of type ‘number’ is not assignable to parameter of type ‘string’ 만약 함수를 호출 할 때 첫번째 매개변수에 메시지 만을 인자로 전달 하고 싶을때에는 두번째 인자만을 지우면 될까 ? 🙅‍♂️ 아니다 두번째 인자를 그냥 지우기만 …

May 14, 2023
TypeScript
TypeScript -Any, Union Type, Type Aliases, Type Guards

Any Type any 타입은 어떠한 타입의 값이든 이 변수에 할당 될 수 있다는 뜻이다. 한마디로 타입 체크 없이 아무거나 다 상관 없다는 것이다. ⚠️ 타입스크립트에서 의 일반적인 규칙은 타입에 관한 더 많은 정보를 명시할 수록 좋다. 타입에 대한 더 많은 정보가 제공이 될 수록 명확하게 개발자의 의도를 코드로 기술할 수 있고 타입 에러들을 컴파일 시 잡아냄으로서 코드가 좀 더 깔끔하고 효과적이게 유지보수 될 수 있다. 즉, Any Type 을 쓰는 경우 최대한 피하는 것이 좋다. 만약 작업중인 코드의 타입 명시가 어려운 경우 예를 들어 써드 파티 라이브러리에서 동적 컨텐츠를 가지고 와서 프로그램 작성시 에는 변수에 타입을 알기 어렵기 때문에 타입 지정을 할 수 없는 경우 이러한 경우에만 아주 제한적으로 any 타입을 사용하는 것이 좋다. Union - 유니언 타입 어떤 타입이 변수에 들어올지는 정확히 알 수 는 없지만 변수의 타입이 무조건 숫자 혹은 문자열 이라는 것을 …

May 08, 2023
TypeScript
TypeScript - 열거형(Enum)과 리터럴 타입 (Literal)

인터페이스 내에 gender 프로퍼티의 값이 string 으로 되어 있는데, 이 값을 male or female 두가지로만 제한 하고 싶다면 단순히 property 타입을 string 으로 명시하는 것 말고 조금 더 나은 방법으로 크게 두가지 방법이 있다. 1. 열거형 (Enum) Enum 이란 연관된 아이템들을 함께 묶어서 표현 할 수 있는 수단 Enum 을 사용하기 위해서는 먼저 Enum 을 선언 해야 하는데 사용하기 위해서 Enum 키워드를 넣어주고 이름을 지어준다. 그리고 선택지로 쓸 수 있는 값을 Enum 속에 넣어 준다. 선언된 enum 을 타입으로 쓰기 위해 인터페이스 의 젠터 프로퍼티의 타입을 string 이 아닌 이넘의 이름인 GenderType 으로 바꾸어 준다. ⚠️ 여기서 짚고 넘어가야 할것은 컴파일 된 자바스크립트 코드를 확인 하면 컴파일시 사라지는 interface 와는 달리 enum 은 코드가 구현이 되어 자바스크립트 파일에 나타나게 된다 이것은…

May 06, 2023
TypeScript