ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1장. 위대한 소프트웨어는 여기에서 시작된다.
    읽은 책/OOAD 2014. 2. 15. 18:12



    02920750

     책이름

     Object-Oriented Analysis & Design

     저자

     브렛 맥래프린, 게리 폴리스, 데이빗 웨스트저 / 신광연 박종걸 역

    출판사 

     O’REILLY / 한빛미디어


    쉬운 3단계로 위대한 소프트웨어 만들기


    1. 고객이 원하는 기능을 해야 한다.

     일단 구현이 먼저다!

    2. 객체지향의 기본원리를 적용해서 소프트웨어를 유연하게!

    → 각 객체가 하나의 개념을 가지고 자신의 이름이 나타내는 일만 하는지 확인하자. 

    ( 객체가 값이 없거나 null인 속성들을 가진 채로 사용되면, 객체가 하나 이상의 일을 하고 있을 가능성이 있다.)


    3. 유지보수와 재사용이 쉬운 디자인을 위해 노력하기.

    → 재사용과 소프트웨어의 변경 용이성을 생각할 단계: (클래스의 재상용과 확장이 가능하도록 만듦.)

    → 여기서는 위임을 사용하여 객체들의 의존성을 낮추어서 재사용이 쉽게 함




    내용정리.

    1. 문제를 해결하면서 문제를 만들지 마세요.

    1. OOA&D: 우리의 코드가 고객이 원하는 일을 하고, 잘 설계되는 것을 보장하는 소프트웨어 개발 방법. 

    잘 설계되었다는 것은 코드가 유연하고, 수정과 유지보수, 그리고 재사용이 용이하다는 것.

    2. 이름에 맞게 행동하는 클래스, 메소드를 만들자.




    용어정리

    1. 유연성 : 계속해서 새로 고치지 않으면서도 소프트웨어가 변하고 성장할 수 있도록한다. 프로그램을 견고하게 한다.

    2. 캡슐화 : 변화하는 부분을 변화하지 않는 부분으로부터 분리할 때 사용한다.

    3. 디자인 패턴 : 재사용과 관련이 있고, 다른 사람이 이미 해결한 문제를 다시 해결하지 않도록 막는 일을 담당한다.

    4. 위임: 한 객체가 오퍼레이션(기능)을 다른 객체에게 넘겨주어 첫 번째 객체를 대신해서 수행하도록 하는 행위.




    핵심정리

    1. 깨지기 쉬운 프로그램은 조금만 잘못 조작해도 문제가 발생합니다.
    2. 캡슐화와 위임 같은 객체지향 원리를 사용하여 유연한 프로그램을 만들 수 있습니다.
    3. 캡슐화는 프로그램을 여러개의 논리적 부분들로 나눕니다.
    4. 위임은 특정한 일을 해결하는 책임을 다른 객체에게 주는 것입니다.
    5. 프로젝트는 항상 고객이 원하는 것을 알아내는 것부터 시작하세요.
    6. 프로그램의 기본 기능을 구현한 후에 설계를 유연하게 가다듬는데 노력하세요.
    7. 기능과 유연한 설계가 완성되면, 디자인패턴을 사용해서 프로그램의 디자인을 개선및 재사용성이 용이하게 만드세요.
    8. 프로그램 중 자주 변경을 요하는 부분을 찾아서 변경되지 않는 부분과 분리해 놓으세요.
    9. 잘 동작하지만 설계가 엉망인 프로그램의 경우 고객은 만족 시키지만 문제를 고치느라 고통을 격을 가능성이 큽니다.
    10. OOA&D는 고객과 프로그래머를 모두 만족시키는 좋은 설계를 갖춘 프로그램을 만드는 방법을 제공합니다. 




    ☞ 내가 생각하는 위대한 소프트웨어란?

    기능이 구현되어 있고, 같은 동료가 보았을 때 이해하기 쉬운 소프트웨어.




Designed by Tistory.