|
"A에는 B이다 " 보다 "A에는 B가 있다"
디자인 원칙 : 상속보다는 구성을 활용한다. 지금까지 봐 왔던 것처럼, 구성을 이용하여 시스템을 만들면 유연성을 크게 향상시킬 수 있다. 단순희 알고리즘군을 별도의 클래스의 집합으로 캡슐화할 수 있도록 만들어주는 것 뿐 아니라, 구성요소를 사용하는 객체에서 올바른 행동 인터페이스를 구현하기만 하면 실행시에 행동을 바꿀 수도 있게 해준다. 사부와 제자... 사부 : 지금까지 네가 배운 객체지향 토에 대해서 얘기해 보거라. 제자 : 사부님, 객체지향 도에서는 재사용을 약속해 준다고 배웠습니다. 사부 : 계속해 보거라... 제자 : 사부님, 상속을 이용하면 모든 훌륭한 것들을 재사용 할 수 있기 때문에 개발 시간을 극적으로 단축시켜 줍니다. 사부 : 개발이 끝나기 전과 개발이 끝난 후 중 어느 쪽에서 코드에 더 많은 시가을 쓰게 되느냐? 제자 : 개발이 끝난후 입니다. 유지, 보수하는데 더 많은 시간을 뺏기게 됩니다. 심지어 다시 만들기도... 사부 : 그러면 관리의 용이성과 확장성보다 재사용성에 더 많은 노력을 기울여야 하느냐? 제자 : 음.... 사부 : 아직 배워야 할 것이 많구나. 돌아가서 상속에 대한 명상을 더 하도록 하거라. 너도 보았듯이 상속에는 상속만의 문제점이 있고, 재사용을 성취하는 데에는 다른 방법도 있느리라. 객체지향의 기초 추상화, 캡술화, 다형성, 상속 객체지향 원칙 바뀌는 부분은 캡슐화한다. 상속보다는 구성을 활용한다. 구현이 아닌 인터페이스에 맞춰서 프로그래밍 한다. 스트래티지 패턴(strategy pattern) 알고리즘군을 정의하고 각각을 캡슐화하여 교환해서 사용할 수 있도록 만든다. 스트래티지 패턴을 활용하면 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경 할 수 있다. - 이 종 화 (ingenuity.egloos.com) -
|
메모장
이글루 파인더
카테고리
전체
Agile Methodology Design Patterns JAVA Frameworks Open API DB관련 개발Tool System Web Server HTML/SCRIPT Talk Talk My Life 생활의 발견 허슬 두산! Fun Fun!!! 즐겨찾기 준비중 방명록 최근 등록된 덧글
우하하-_-' 유용해서 ..
by 미나 at 11/20 함께 생각하고 행동할 수.. by 강민철 at 10/21 신입개발자 인데 미흡한.. by seo at 10/13 유용한 정보 감사합니다.. by Nerv\\\'s at 09/23 저도 좋은글 담아갑니다.. by 풍 at 09/18 ㅎㅎㅎㅎ 저는 지금 개.. by 이종화 at 08/19 디자인패턴 공부하려는데.. by 이현승 at 07/22 좋은 글 잘 봤습니다. .. by 김진학 at 06/29 좋은글 감사합니다. 유.. by 엄성권 at 03/11 좋은 글 보고 갑니다. 제.. by 우기 at 01/10 최근 등록된 트랙백
Soma buy soma chea..
by Watson soma cheap. Buy soma online. by Buying cheap soma f.. Retin a. by Retin a and lip rhytid.. joinc wiki::소프트웨어.. by yundream의 프로그래.. 내 손안의 PC - 자바가 .. by 上善若水 저도 agile에 관심이 많.. by lovelove님의 이글루 JUnit 4로 뛰어들기 by 고안해 내는 재능 inheritnace vs dele.. by Bullshit Life framework = framewor.. by 고안해 내는 재능 Struts iBATIS Spring by 고안해 내는 재능 포토로그
이전블로그
이글루링크
라이프로그
| |||