Page 5 -
P. 5

K O T L I N






                          적 인  프 로 그 래 밍 에 서 는  상 태  공 유 가  일 어 날  때 마 다  매 번  같 은  용 례 를  재 구 현 해  왔 지 만,  그 렇 게  하
                          는  대 신  구 체 적  용 례 를  추 상 화 하 고  캡 슐 화 해 서  구 현 한  다 음 에  그  구 현 을  완 전 히  테 스 트 함 으 로 써
                          여 러  번  재 사 용 해 도  아 무  문 제 가  없 게 끔  만 들  수  있 다.

                          이  책 에 서 는  상 태  변 이  공 유 를  추 상 화 하 고  캡 슐 화 하 는  방 법 을  배 운 다.  이 에  따 라  같 은  상 태  공 유
                          기 법 을  오 직  한  번 만  작 성 하 면  된 다.  그  후  필 요 할  때 마 다  이 미  작 성 한  구 현 을  재 사 용 하 면  된 다.



                          제 어  흐 름 과  제 어  구 조  추 상 화

                          프 로 그 램 에 서  상 태  변 이 를  공 유 하 는  것  다 음 으 로  일 반 적 인  버 그 의  원 인 에  제 어  구 조 를  들  수  있
                          다.  전 통 적  프 로 그 램 은  루 프 나  조 건  테 스 트  같 은  제 어  구 조 로  구 성 된 다.  이 런  구 조 는  잘 못  사 용 하
                          기  쉬 워 서  프 로 그 래 머 들 은  가 능 하 면  최 대 한  세 부  제 어 를  추 상 화 하 고  싶 어  한 다.  가 장  좋 은  예 로

                          대 부 분  언 어 에  존 재 하 는  f o r  e a c h   루 프 를  들  수  있 다( 자 바 에 서 는 f o r  e a c h   루 프 를  여 전 히  그 냥 f o r
                          라 고  부 른 다).

                          그  외 에  w h i l e 이 나  d o  w h i l e ( 또 는 r e p e a t  u n t i l ) 을  제 대 로  사 용 하 지  못 해  생 기 는  문 제 도  흔 하 다.
                          특 히  언 제  조 건 을  검 사 해 야  하 는 지  제 대 로  알 지  못 하 는  경 우 가  많 다.  또  다 른  문 제 로 는  컬 렉 션 에
                          대 한  루 프 를  수 행 하 는  도 중 에  컬 렉 션 의  원 소 를  변 경 하 는  것 을  들  수  있 다.  이 런  경 우 는  단 일  스 레
                          드  상 에 서  상 태  변 이 를  공 유 함 으 로 써  생 기 는  문 제 와  부 딪 칠  수  있 다!  제 어  구 조 를  추 상 화 하 면  이

                          런  유 형 의  문 제 를  완 전 히  없 앨  수  있 다.


                          올 바 른  타 입 의  사 용

                                                 2
                          전 통 적  프 로 그 래 밍 에 서 는  단 위 를  고 려 하 지  않 고  i n t 나  S t r i n g 과  같 은  일 반 적 인  타 입 을  사 용 해  양
                          을  표 현 하 는  경 우 가  많 다.  그  결 과  킬 로 미 터 에  리 터 를  더 하 거 나  시 간 에  금 액 을  더 하 는  등  값 의  타






                          2     역 주   k g , m /s   등 의  측 정  단 위 나  원,  달 러  등 의  금 액  단 위 를  뜻 한 다.





                                                                                                       0 1 3
   1   2   3   4   5   6   7   8   9   10