35
14.6
자기 타입 표기
........................................................................................................
541
14.7
구조적 타입
............................................................................................................
547
14.8
복합 타입
...............................................................................................................
552
14
.
8
.
1
타입 세분화
..............................................................................................
552
14.9
존재 타입
...............................................................................................................
554
14.10
마치며
...................................................................................................................
556
CHAPTER
15
스칼라 타입 시스템
II
15.1
경로에 의존하는 타입
...............................................................................................
557
15
.
1
.
1
C
.
this
.....................................................................................................
558
15
.
1
.
2
C
.
super
..................................................................................................
559
15
.
1
.
3
경로 .
x
....................................................................................................
560
15.2
의존적 메서드 타입
..................................................................................................
561
15.3
타입 투영
...............................................................................................................
563
15
.
3
.
1
싱글턴 타입
..............................................................................................
566
15.4
값에 대한 타입
........................................................................................................
567
15
.
4
.
1
튜플 타입
.................................................................................................
567
15
.
4
.
2
함수 타입
.................................................................................................
568
15
.
4
.
3
중위 타입
.................................................................................................
568
15.5
고계 타입
...............................................................................................................
569
15.6
타입 람다
...............................................................................................................
575
15.7
자기 재귀 타입 :
F
-바운드 다형성
..............................................................................
577
15.8
마치며
...................................................................................................................
580
36
CHAPTER
16
고급 함수형 프로그래밍
16.1
대수적 데이터 타입
..................................................................................................
581
16
.
1
.
1
합 타입과 곱 타입
......................................................................................
582
16
.
1
.
2
대수적 데이터 타입의 특성
..........................................................................
584
16
.
1
.
3
대수적 데이터 타입에 대한 마지막 고찰
.........................................................
585
16.2
카테고리 이론
.........................................................................................................
586
16
.
2
.
1
카테고리란 무엇인가
..................................................................................
587
16
.
2
.
2
펑터 카테고리
...........................................................................................
588
16
.
2
.
3
모나드 카테고리
........................................................................................
594
16
.
2
.
4
모나드의 중요성
........................................................................................
596
16.3
마치며
...................................................................................................................
599
CHAPTER
17
동시성 프로그래밍 도구
17.1
scala
.
sys
.
process
패키지
.......................................................................................
604
17.2
퓨처
......................................................................................................................
605
17
.
2
.
1
Async
....................................................................................................
609
17.3
액터를 활용해서 튼튼하고 확장성 있는 동시성 프로그래밍하기
........................................
612
17.4
아카: 스칼라를 위한 액터
..........................................................................................
612
17
.
4
.
1
액터 : 마지막 고찰
......................................................................................
627
17.5
피클링과 스포어즈
...................................................................................................
628
17.6
반응형 프로그래밍
...................................................................................................
629
17.7
마치며
...................................................................................................................
631
고급 주제 및 실전 응용
Part
4
CONTENTS
37
CHAPTER
18
스칼라를 활용한 빅데이터
18.1
빅데이터: 간략한 역사
..............................................................................................
634
18.2
스칼라로 맵리듀스 개선하기
......................................................................................
635
18.3
맵리듀스를 넘어서
...................................................................................................
641
18.4
수학을 위한 카테고리
...............................................................................................
644
18.5
스칼라 기반 데이터 도구 목록
....................................................................................
644
18.6
마치며
...................................................................................................................
646
CHAPTER
19
스칼라 동적 호출
19.1
동기를 불어넣는 예제 : 루비 온 레일즈의
ActiveRecord
................................................
647
19.2
Dynamic
트레이트를 사용해서 스칼라에서 동적 호출하기
.............................................
649
19.3
DSL
에서 고려할 점
.................................................................................................
655
19.4
마치며
...................................................................................................................
655
CHAPTER
20
스칼라 도메인 특화 언어
20.1
예제: 스칼라를 위한
XML
과
JSON
DSL
....................................................................
659
20.2
내부
DSL
..............................................................................................................
661
20.3
파서 콤비네이터를 활용한 외부
DSL
..........................................................................
667
20
.
3
.
1
파서 콤비네이터
........................................................................................
668
20
.
3
.
2
급여 계산 외부
DSL
..................................................................................
668
20.4
내부
DSL
과 외부
DSL
에 대한 마지막 고찰
.................................................................
671
20.5
마치며
...................................................................................................................
673
38
CHAPTER
21
스칼라 도구와 라이브러리
21.1
명령행 도구
............................................................................................................
675
21
.
1
.
1
scalac
명령행 도구
...................................................................................
676
21
.
1
.
2
scala
명령행 도구
.....................................................................................
680
21
.
1
.
3
scalap
와
javap
명령행 도구
.......................................................................
684
21
.
1
.
4
scaladoc
명령행 도구
...............................................................................
686
21
.
1
.
5
fsc
명령행 도구
........................................................................................
686
21.2
빌드 도구
...............................................................................................................
686
21
.
2
.
1
스칼라 표준 빌드 도구
SBT
........................................................................
687
21
.
2
.
2
다른 빌드 도구
..........................................................................................
690
21.3
IDE
나 텍스트 편집기와 통합하기
...............................................................................
690
21
.
3
.
1
텍스트 편집기
...........................................................................................
692
21.4
스칼라로 테스트 주도 개발하기
..................................................................................
692
21.5
서드파티 라이브러리
................................................................................................
693
21.6
마치며
...................................................................................................................
696
CHAPTER
22
자바 상호 운용성
22.1
자바에서 정의한 이름을 스칼라 코드에서 사용하기
........................................................
697
22.2
자바와 스칼라 제네릭스
............................................................................................
698
22.3
자바빈즈 프로퍼티
...................................................................................................
700
22.4
AnyVal
타입과 자바 기본 타입
..................................................................................
702
22.5
자바 코드로 변환한 스칼라 이름
.................................................................................
702
22.6
마치며
...................................................................................................................
702
CONTENTS
39
CHAPTER
23
애플리케이션 설계
23.1
그 동안 배운 내용 복습
.............................................................................................
703
23.2
애노테이션
.............................................................................................................
705
23.3
모듈로서의 트레이트
................................................................................................
710
23.4
디자인 패턴
............................................................................................................
712
23
.
4
.
1
생성 패턴
.................................................................................................
712
23
.
4
.
2
구조 패턴
.................................................................................................
713
23
.
4
.
3
행동 패턴
.................................................................................................
715
23.5
계약에 의한 설계를 활용해서 더 좋게 설계하기
.............................................................
717
23.6
파르테논 구조
.........................................................................................................
721
23.7
마치며
...................................................................................................................
727
CHAPTER
24
메타프로그래밍: 매크로와 리플렉션
24.1
타입을 이해하기 위한 도구
........................................................................................
730
24.2
실행 시점 리플렉션
..................................................................................................
731
24
.
2
.
1
타입에 대한 리플렉션
.................................................................................
731
24
.
2
.
2
클래스 태그, 타입 태그, 매니페스트
..............................................................
733
24.3
스칼라의 고급 실행 시점 리플렉션
API
.......................................................................
735
24.4
매크로
...................................................................................................................
739
24
.
4
.
1
매크로 예제: 불변성 강제하기
......................................................................
743
24
.
4
.
2
매크로에 대한 마지막 고찰
..........................................................................
747
24.5
마치며
...................................................................................................................
747
부록
A
참고 문헌
.....................................................................................................................................
749
찾아보기
...................................................................................................................................................
756
Get 프로그래밍 스칼라: 실용적인 스칼라 활용법을 익히는 가장 확실한 실전 바이블 (2.11.x 버전 기반) now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.