본문 바로가기

Effective Java/객체 생성과 파괴

(3)
#03 #02의 보충설명 - 계층적으로 설계된 클래스와 빌더패턴 지난 시간에 공부했던 builder 패턴중 마지막에 뇌정지로 인한 계층적으로 설계된 클래스와 빌더패턴 에 대해서 정리하는 시간이다. 자바로 몇년동안 개발을 해오면서 이런 소스도 분석할 줄 모르는 내 자신이 너무 한심하기도 했다. 그래서 해당 클래스의 계층적 구조화 동작 방식을 하나하나 뜯어볼 계획이다. 개인적으로 공부하면서 집중력이 많이 필요한 부분 이였기에 해당 포스팅을 보면서 이해하고 싶다면... 꼭 컨디션이 좋을때 보길 추천한다. 알아두기 어떤 클래스를 상속 받으면 상속받은 자식 클래스의 생성자에서 부모 클래스를 호출해야만 하는데 만약 부모가 기본생성자를 가지고 있다면 컴파일러는 자동으로 super()를 호출함으로써 부모의 생성자를 호출하게 된다. 이 부분을 이해 하고 있다면 Pizza 클래스의 생..
#02 생성자에 매개변수가 많다면 빌더를 고려하라 들어가기전 이번 포스팅은 책에 나와있는 예제를 보고만 넘어 가기에는 빌더패턴을 왜 ? 꼭? 써야 되는지 정확하게 이해가 되지 않았기 때문에 조금 더 깊게 생각해볼 필요가 있을 것 같다. 빌더를 고려하라는 취지는 충분히 이해 했지만 만약에 실무에서 빌더를 이용해 설계를 해야된다면 ?? 지금은 절대로 설계가 불가능 하기 때문이다. 학습 목표는 빌더 패턴을 실무에 적용할 수 있을만한 필요성을 느끼고 상황에 맞게 잘 적용할 수 있도록 코드를 작성하며 느껴보기!! 학습 요약 빌터패턴(Builder pattern)을 사용해야 되는이유 점층적 생성자 패턴 (telescoping construcor pattern) 과 자바빈즈 패턴 (JavaBeans pattern ) 빌터패턴 적용실습 계층적으로 설계된 클래스와 잘 ..
#01 생성자 대신 정적 팩터리 메서드를 고려하라 학습 요약 정적 팩터리 메서드 ( static factory method) 란? 정적 팩터리 메서드가 생성자보다 좋은 장점 다섯가지 정적 팩터리 메서드가 생성자보다 좋지않은 장점 두가지 정적 팩터리 메서드 ( static factory method) 란? 클래스의 인턴스를 얻는 전통적인 public 생성자가 아닌 객체 생성의 역할을 하는 클래스 메서드라는 의미로 요약해 볼 수 있다. 다시 말해 new 키워드가 아닌 해당 클래스의 메서드로 객체생성을 할 수 있다. 정적 팩터리 메서드가 생성자보다 좋은 장점 다섯가지 1. 이름을 가질 수 있다. - 생성자에 넘기는 매개변수와 생성자 자체 만으로는 반활될 객체의 특성을 제대로 설명하지 못한다. 하지만 정적 팩터리는 클래스와 다른 이름을 지을수 있기 때문에 이름..