본문 바로가기

코드잇 스프린트 6기/TS_Study Together9

타입 별칭 vs 인터페이스 모임에서 10~15분 강의타입 별칭 vs 인터페이스둘 다 객체 타입을 정의할 수 있다는 관점에서 차이점은 모호하다. 하지만 여러 다른 관점에서는 차이점이 명확하므로 두 방법을 올바른 곳에 사용해야 한다. # 인터페이스(Interface)주로 객체의 타입을 선언할 쓰인다. 대문자로 시작해야 한다. 또한, 인터페이스를 타입으로 가지는 값은 인터페이스의 구조를 그 값으로 가지도록 강제된다. 더 읽기 쉬운 오류 메시지, 더 빠른 컴파일러 성능, 클래스와의 더 나은 상호 운용성을 위해 선호된다.객체의 속성과 속성 타입함수의 파라미터와 반환 타입함수의 스펙(파라미터 개수와 반환값 여부 등)배열과 객체를 접근하는 방식클래스optionalinterface Developer { part: 'FE' | 'BE' | 'P.. 2024. 6. 22.
모임 질문 모임일시 : 2024-06-17참여인원 : 5명, 오*택, 고*성, 장*희, 이*양, 이*훈1. useState에 초깃값으로 exam( )이라는 함수를 줬을 때와 콜백의 리턴 값으로 줬을 때의 동작의 차이를 설명해 주세요.useState 훅이 반환한 세터 함수는 리액트가 컴포넌트 내부의 상태 변화를 쉽게 감지할 수 있게 만든다. 컴포넌트는 그 UI를 반환하는 함수이므로, 상태가 변경이 되면 그에 따라 해당 컴포넌트를 다시 렌더링한다. useState()에 인자를 넣으면, 그것이 초깃값으로 설정된다. 그런데, JS의 함수는 일급 객체이므로 값으로써 사용될 수 있으므로, useState()의 인자로 사용될 수 있다. 일반 값을 인자로 넣었을 때와 달리, 함수를 인자로 넣게 되면 그 함수의 연산이 진행되어야 .. 2024. 6. 17.
두 다형성의 만남 최종 수정 : 2024-06-10두 다형성의 만남1. 제네릭 클래스와 상속전통적으로 객체 지향 언어와 서브타입에 의한 다형성을, 함수형 언어가 매개변수에 의한 다형성을 지원햇다. 하지만 최근에는 한 언어가 두 종류의 다형성을 모두 제공하는 경우가 흔하다. 두 다형성이 만나면 각 다형성이 제공하는 기능만으로 끝이 아니다. 두 가지가 함께 있을 때에만 존재할 수 있는 흥미롭고 유용한 기능들이 탄생한다. 제네릭 클래스가 있을 때 타입들 사이의 서브타입 관계는 어떻게 될까? A가 B를 상속하면 A가 B의 서브타입이라고 했다. 이 원리가 제네릭 클래스에도 그대로 적용된다.abstract class List { abstract get(idx: number): T;}class ArrayLst { get(idx: .. 2024. 6. 10.
매개변수에 의한 다형성 - 제네릭 함수 / 제네릭 타입 최종 수정 : 2024-06-08매개변수에 의한 다형성1. 제네릭 함수매개변수에 의한 다형성(parametric ploymorphism)은 타입 매개변수를 통해 다형성을 만드는 기능으로, 제니릭스(generics)라고도 부른다. 매개변수에 의한 다형성을 언어에 추가하는 것은 언어에 큰 변화를 가져오기에 상당히 어려운 일이다. 그럼에도 매개변수에 의한 다형성을 어떻게든 추가하려고 노력하는 것이다. 이것만 봐도 정적 타입 언어에 얼마나 필요한지 짐작할 수 있다. Q. 어떤 큰 변화를 가져오는가?? Any choose(Any v1, Any v2) { print(v1); print(v2); print(...); Int input = readInt(); return (input == 0) ? v1 : v2;.. 2024. 6. 8.
질문 모음 모임 일시 : 2024-05-30참여 인원 : 6명(오*택, 이*헌, 주*산, 장*희, 이*양, 이*훈) / 예비군(고재성) 1. 서브타입과 슈퍼타입의 관계는 무엇인가요?2. 추상 메서드는 무엇이고, 필요한 이유는 무엇인가요?3. 최대타입의 정의와 최대타입이 any가 아니라 unknown인 이유와 그 유용성은 무엇인가요?4. 최소타입의 정의와 never의 불편한 점은 무엇인가요?5. '이거나 타입'을 사용할 때 주의할 점과 '위치에 민감한 타입검사'의 종류는 무엇인가요?6. 함수타입에서 결과 타입은 서브타입 관계를 유지하는데, 매개변수의 타입은 서브타입 관계를 뒤집는 것에 대해 설명해주세요.마음에 들지 않지만, 우선 답할 수 있는 것은 설계가 그렇게 되어 있다는 답변을 들었다.원리의 이유에 대해서는 우선.. 2024. 5. 30.