프로그래밍/객체지향 방법론

"위대한 소프트웨어" 에 대해 서로 다른 의견.

모지사바하 2007. 7. 31. 23:35
고객중심의 프로그래머는 이렇게 말한다.

"위대한 소프트웨어는 고객이 바라는 것을 수행하는 소프트웨어이다.
고객이 소프트웨어를 이상하게 사용하더라도, 소프트웨어가 멈추거나 예상치 못한 결과를 나타내지 않는 소프트웨어 말이다."

객체지향 프로그래머는 다음과 같이 말한다.

"위대한 소프트웨어는 객체지향으로 만들어진 코드이다. 그렇게 하면 중복된 코드가 적고, 각 객체가 자신의 행동을 통제한다. 설계가 견고하고 유연해서 확장 또한 쉽다."

설계를 중시하는 프로그래머는 다음과 같이 말한다.

"위대한 소프트웨어는 이미 입증된 디자인 패턴과 원리를 사용해서 만든 소프트웨어이다. 객체가 느슨하게 연결되로록 하고, 코드를 확장에는 열려 있으면서 수정에는 닫혀있게 유지한다.(디자인패턴 - OCP원칙 참조) 또한, 이렇게 작성된 코드는 재사용성이 높아서, 프로그램의 일부를 재사용하려고 할 때 추가적으로 할 일이 별로 없다.

위 세가지를 첫번째부터 우선순위를 두어 차례대로 지켜 프로그래밍을 했을 때, 위대한 소프트웨어라고 할 수 있다..