본문 바로가기
읽은책

타입으로 견고하게 다형성으로 유연하게

by e-pd 2023. 12. 28.

https://product.kyobobook.co.kr/detail/S000210397750

 

타입으로 견고하게 다형성으로 유연하게 | 홍재민 - 교보문고

타입으로 견고하게 다형성으로 유연하게 | 타입과 다형성 잘 배우고 잘 쓰는 법 최근 몇 년간 프로그래밍 언어 세계를 살펴보면 타입 그리고 타입과 관련된 검사 기능이 강화되는 추세다. 그런

product.kyobobook.co.kr

 

타입이라는 주제로 정말 많은 이야기를 할 수 있다는 점이 재미있었습니다. 

제네릭, 가변성 부분은 개발하면서 활용에 필요한 기능이지만

잘 쓰기위해서는 언어의 이해가 필요합니다.

책에서는 타입을 설명하면서 이런 부분들을 이해하는 것을 돕고 있습니다.

 

메모

pg. 11 

정적 타입 언어: 프로그램을 실행하기 전에 타입이 올바르게 사용되었는지 확인하는 언어.

 

pg. 16

타입 검사: 작은 부분의 정보를 알아내고, 큰 부분을 구성하면서 작은 부분이 올바른지 검사 반복.

 

pg. 60

타입 검사기가 거부할때 해결하는 방법, 1. 다형성, 2. 무시하기

 

pg. 84

구조에 의한 서브타입. 클래스내에 어떤 필드와 메서드가 있는지를 고려.

 

pg. 106 

최대타입:  모든 값을 포함(any)

최소타입: 어떤 값도 속하지 않는다.(nothing)

계산을 끝내지 못함.

 

pg. 140

함수타입은 매개변수 타입의 서브타입 관계를 뒤집음.

 

pg.152

제네릭스: 매개변수를 통한 다형성

 

pg.169

힌들리-밀너 타입 추론: 정의할때부터 타입 추론

 

pg.274

List1<T> 출력=> 공변

List2<T> 출력, 입력 => 무공변

int => T 출력 => 공변

T => T 입력 => 반공변

 

 

pg.312

함수선택방법

 

pg.323

메서드 선택 방법

 

pg.342

타입 클래스: 특정 타입을 위한 어떤 함수가 포함된다는 것을 표현.

인터페이스와 typeclass 차이. 인터페이스의 경우는 구체적인 타입이 필요하다.

 

pg.362

카인드: 타입의 타입. 예를 들어 List<Int>같은 경우, List는 타입이지만 추가적인 타입을 나타내어야한다.

'읽은책' 카테고리의 다른 글

개발자가 반드시 정복해야 할 객체 지향과 디자인패턴  (0) 2023.12.31
엘레강트 오브젝트  (0) 2023.12.31
인플루엔서  (1) 2023.12.23
일머리 문해력  (1) 2023.12.23
스트리트 코더  (0) 2023.12.22