ITEM 18 : 값 타입과 참조 타임을 구별하라

|

ITEM 18 : Distinguish Between Value Types and Reference Types

(값 타입과 참조 타임을 구별하라)



n  요약 및 장점


1. Structs는 데이터를 저장하고, Classes는 행동을 정의한다.


2. 자바에서는 모든 사용자 정의 타입들은 참조 타입이다. 또한 모든 파라미터와 리턴값은 참조타입이다. 이것은 일관성을 유지한다는 장점이 있지만, 성능이 좋지 않다. C#에서는 struct/class 키워드를 통해서 value type reference type을 선택할 수 있다.


3.아래의 4가지의 항목을 모두 충족한다면 value type으로 생성해야만 한다.


     타입의 주요한 책임이 데이터 저장인가?

     프로퍼티에 의해 완전히 정의된 공용 인터페이스가 데이터 멤버를 접근하는가?

     타입이 절대 subclass를 갖지 않는가?

     타입이 절대 다형성을 갖지 않는가?



n  Terms


n  해석이 잘 안되거나 중요한 내용


n  단어

1.      preferring : 선호하는

2.      polymorphic: 다형성

3.      consistent :일관성

4.      far-reaching : 지대한 영향을 가져올

5.      principal : 주요한 / 교장

6.      entirely : 전적으로, 완전히, 전부

And