본문 바로가기

ComputerScience/DesignPattern

(18)
[SOLID] SRP: The Single-Responsibility Principle * 이 글은 Agile Software Development, Principles, Patterns, and Practices - Robert Martin 책 내용을 번역 및 요약하여 작성하였습니다. SRP: The Single-Responsibility Principle 왜 책임을 별도의 클래스로 분리하는 것이 중요한가요? 각 책임은 변경의 축이기 때문입니다. 요구 사항이 변경되면 그 변경은 클래스 간의 책임 변경을 통해 나타날 것입니다. 하나의 클래스가 두 개 이상의 책임을 가정하면 해당 클래스가 변경해야 하는 이유가 두 개 이상 발생할 것입니다. 하나의 클래스가 두 개 이상의 책임을 갖는 경우, 이러한 책임들은 서로 결합됩니다. 이때 한 책임에 대한 변경 사항은 클래스가 다른 책임을 충족하는 능력을..
[DesignPattern] Agile Development * 이 글은 Agile Software Development, Principles, Patterns, and Practices - Robert Martin 책 내용을 번역 및 요약하여 작성하였습니다. The Agile Alliance 소프트웨어 개발 프로젝트에서 명확한 지침이나 효과적인 접근 방식의 부재로 인해 예측 불가능성, 반복된 오류 및 낭비가 발생합니다. 일정 지연, 예산 증가 및 저품질로 인해 클라이언트는 실망하고, 개발자는 더 많은 노력을 기울일수록 점점 나쁜 소프트웨어를 생산하게 됩니다. 소프트웨어 개발 프로젝트는 몇 가지 제한사항과 결과물만으로는 완벽하다고 볼 수 없습니다. 오류가 계속 발생하면 그 오류를 진단하고 앞으로의 오류를 방지하기 위해 더 많은 제한사항과 결과물을 도입합니다. 많은..