본문 바로가기
Strong / Weak / Dynamic / Static type Strong / Weak / Dynamic / Static type http://nvec.egloos.com/2251285http://en.wikipedia.org/wiki/Strong_and_weak_typing -Dynamic typing 은 변수의 타입이 프로그램의 어느 시점에서든 변경이 가능하고, ( Runtime 에 결정 )Static typing 은 그렇지 않다. ( Compile time 에 결정 ) -Strong type 은 프로그램을 보고 바로 에러를 찾아낼 수 있는 것이고,Weak type 은 그렇지 않다. Strong type 은 해당 type 에 할 수 있는 일들이 명확하게 정의되어 있다.Weak type 은 사용되는 시점에 암시적으로 cast 가 될 수도 있고, ad-hoc pol.. 2017. 6. 5.
[Effective Java] 가변성을 최소화 하자. [Effective Java] 가변성을 최소화 하자. -불변 클래스는 자신의 인스턴스가 갖는 값을 변경할 수 없는 클래스. - 불변 클래스는, 가변 클래스에 비해 설계와 구현 및 사용이 더 쉽다. 에러 발생이 적으며 보안이나 사용 측면에서 더 안전하다. - 불변 클래스를 만들 때는 다음 다섯 가지 규칙을 따르자. 1. 객체의 상태를 변경하는 그 어떤 메소드도 제공하지 않는다. 2. 상속을 할 수 없도록 하자. ( class 에 final 을 주어 막을 수 있다. ) 3. 모든 필드를 final 로 지정한다. 4. 모든 필드를 private 으로 지정한다. 5. 가변 컴포넌트의 직접적인 외부 접근을 막자. 생성자와 접근자 메소드 및 readObject 메소드에서 해당 객체의 방어 복사본을 만들어 사용하도록.. 2016. 10. 24.
반응형