타입클래스는 여러 타입에서 같은 식별자를 사용하는 애드혹 다형성을, 모듈 시스템은 프로그램을 명시적으로 분해하고 조합하는 모듈식 추상화를 주목적으로 함 타입클래스는 + 같은 기호를 여러 타입에 재사용하되 공통된 의미를 유지하려는 장치임. 법칙과 테스트 또는 증명을 함께 두면 구현이 그 의미를 따르는지 확인할 수 있음 모듈은 캡슐화와 매개변수화를 통해 함수보다 큰 단위로 프로그램을 구성하고 추론하게 해 줌. 시그니처에 맞는 모듈을 입력받는 펑터로 의존성을 추상화할 수 있음 타입클래스로 모듈식 추상화를 구현할 수 있지만 인터페이스의 조합성, 함수마다 붙는 제약, 컴파일 시 인스턴스 탐색 비용에서 한계가 있음 두 기능은 양자택일 대상이 아니며 함께 지원할 수 있음. 언어 설계에서는 고품질 프로그램 작성을 위해 애드혹 다형성보다 모듈식 추상화 지원을 우선할 것을 권함 서로 다른 목적과 혼동의 원인 애드혹 다형성(ad-hoc polymorphism) 은 연산자 오버로딩 또는 타입 기반 디스패치라고도 하며, 작은 단위의 코드를 편리하게 작성하도록 같은 식별자를 여러 타입에서 재사용하게 함 +를 정수 덧셈과 부동소수점 벡터 덧셈에 함께 사용할 수 있음 벡터 타입은 임의의 라이브러리에서 정의할 수 있으므로, 언어가 모든 동작을 미리 내장할 수는 없음 모듈식 추상화(modular abstraction) 는 큰 프로그램을 효율적으로 구성하기 위한 기능으로, 프로그램을 구성 요소로 재귀적으로 분해하고 결합 관계를 명시하게 함 의존성 주입, 캡슐화, 정보 은닉이 이 기능의 일부에 해당함 두 기능을 혼동하는 데는 역사적 선택과 공통 메커니즘이 영향을 줌 프로그래밍 언어는 역사적으로 둘 중 하나를 택하는 경향이 있었음 둘 다 인터페이스를 명시하고, 코드 묶음이 그 인터페이스에 부합함을 나타내는 수단을 가짐 서로를 어느 정도 흉내 낼 수 있지만, 대체로 최적의 방식은 아님 타입클래스: 같은 기호에 공통된 의미 부여하기 타입클래스의 출발점은 오버로딩한 기호가 타입별로 구현은 달라도 의미상 같은 연산이어야 한다는 것임 +는 추상적인 덧셈을 뜻하고, 각 타입이 구체적인 구현을 제공함 반면 C++의 <<는 타입에 따라 비트 시프트나 스트림 리디렉션을 뜻하며, 두 연산은 공통된 의미가 없음 +, >>=처럼 추상 구조에 적용되는 소수의 기호를 배우고 여러 구체적인 구조에 재사용하면 기호 수와 인지 부담을 줄이면서 프로그램을 더...
Related
AnyPS5 - 에뮬레이션 없이 PS5 바이너리를 PC로 포팅하는 도구(시스템 라이브러리 87% 매핑)
17 minutes ago
0
Show GN: 추천링크·UTM으로 오프라인 소개의 성과를 추적하는 구조
1 hour ago
2
소프트웨어 팩토리 패턴 시도하기
1 hour ago
2
Show GN: 웹 변경 모니터링하는 크롬 확장프로그램
2 hours ago
3
OpenAI, 확률·선택지·점수를 반환하는 Decisions API 공개 베타 시작
2 hours ago
3
제프리 카첸버그 - 세상이 바뀌고 있다: 창의성을 위한 AI
2 hours ago
3
이 모든 것이 지나간 뒤를 위한 지속 가능한 웹 커리어
2 hours ago
3
여러 팀의 시스템을 이해하기 위한 AI 집단 지성 구축하기
2 hours ago
3
Tips
click
Popular
프로들도 줄지어 샷 점검… KLPGA 스타 사랑방 된 더헤븐CC 연습장
2 weeks ago
73
iOS 27, iPadOS 27, macOS 27
3 weeks ago
69
손흥민 선제골 발판·골대 불운…LAFC, 7경기 만에 승리
3 weeks ago
65
영림원소프트랩, 나람 통합 ERP 구축…사료 제조·물류·회계 데이터 하나로
2 weeks ago
62
'이 악문' 김영범, 자유형 50m '대회 신기록' 금메달
2 weeks ago
55
© Clint IT 2026. All rights are reserved

4 days ago
13








English (US) ·