-
1장. 위대한 소프트웨어는 여기에서 시작된다.읽은 책/OOAD 2014. 2. 15. 18:12
책이름
Object-Oriented Analysis & Design
저자
브렛 맥래프린, 게리 폴리스, 데이빗 웨스트저 / 신광연 박종걸 역
출판사
O’REILLY / 한빛미디어
쉬운 3단계로 위대한 소프트웨어 만들기
1. 고객이 원하는 기능을 해야 한다.
→ 일단 구현이 먼저다!
2. 객체지향의 기본원리를 적용해서 소프트웨어를 유연하게!
→ 각 객체가 하나의 개념을 가지고 자신의 이름이 나타내는 일만 하는지 확인하자.
( 객체가 값이 없거나 null인 속성들을 가진 채로 사용되면, 객체가 하나 이상의 일을 하고 있을 가능성이 있다.)
3. 유지보수와 재사용이 쉬운 디자인을 위해 노력하기.
→ 재사용과 소프트웨어의 변경 용이성을 생각할 단계: (클래스의 재상용과 확장이 가능하도록 만듦.)
→ 여기서는 위임을 사용하여 객체들의 의존성을 낮추어서 재사용이 쉽게 함
내용정리.
1. 문제를 해결하면서 문제를 만들지 마세요.
1. OOA&D: 우리의 코드가 고객이 원하는 일을 하고, 잘 설계되는 것을 보장하는 소프트웨어 개발 방법.
잘 설계되었다는 것은 코드가 유연하고, 수정과 유지보수, 그리고 재사용이 용이하다는 것.
2. 이름에 맞게 행동하는 클래스, 메소드를 만들자.
용어정리
1. 유연성 : 계속해서 새로 고치지 않으면서도 소프트웨어가 변하고 성장할 수 있도록한다. 프로그램을 견고하게 한다.
2. 캡슐화 : 변화하는 부분을 변화하지 않는 부분으로부터 분리할 때 사용한다.
3. 디자인 패턴 : 재사용과 관련이 있고, 다른 사람이 이미 해결한 문제를 다시 해결하지 않도록 막는 일을 담당한다.
4. 위임: 한 객체가 오퍼레이션(기능)을 다른 객체에게 넘겨주어 첫 번째 객체를 대신해서 수행하도록 하는 행위.
핵심정리
- 깨지기 쉬운 프로그램은 조금만 잘못 조작해도 문제가 발생합니다.
- 캡슐화와 위임 같은 객체지향 원리를 사용하여 유연한 프로그램을 만들 수 있습니다.
- 캡슐화는 프로그램을 여러개의 논리적 부분들로 나눕니다.
- 위임은 특정한 일을 해결하는 책임을 다른 객체에게 주는 것입니다.
- 프로젝트는 항상 고객이 원하는 것을 알아내는 것부터 시작하세요.
- 프로그램의 기본 기능을 구현한 후에 설계를 유연하게 가다듬는데 노력하세요.
- 기능과 유연한 설계가 완성되면, 디자인패턴을 사용해서 프로그램의 디자인을 개선및 재사용성이 용이하게 만드세요.
- 프로그램 중 자주 변경을 요하는 부분을 찾아서 변경되지 않는 부분과 분리해 놓으세요.
- 잘 동작하지만 설계가 엉망인 프로그램의 경우 고객은 만족 시키지만 문제를 고치느라 고통을 격을 가능성이 큽니다.
- OOA&D는 고객과 프로그래머를 모두 만족시키는 좋은 설계를 갖춘 프로그램을 만드는 방법을 제공합니다.
☞ 내가 생각하는 위대한 소프트웨어란?
기능이 구현되어 있고, 같은 동료가 보았을 때 이해하기 쉬운 소프트웨어.
'읽은 책 > OOAD' 카테고리의 다른 글
2장 요구 사항 수집. 그들에게 원하는 것을 주세요. (0) 2014.02.20