# agile software development

12개의 포스트
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 14장_TEMPLATE METHOD 및 STRATEGY 패턴: 상속과 위임

이 장은 상속과 위임의 차이를 전형적으로 보여주는 두 개의 패턴에 대해 다룬다. TEMPLATE METHOD 및 STRATEGY 패턴은 비슷한 문제를 해결하고 보통 호환되어 쓰인다. 그러나 TEMPLATE MEHOD는 문제를 해결하기 위해 상속을 사용하는 반면, STR

2020년 3월 29일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 13장_COMMAND 및 ACTIVE OBJECT 패턴

COMMAND 패턴은 서로 다른 일을 하는 객체 그룹이 하나의 레벨로 묶이길 원할 때 사용하는 패턴이다. COMMAND 패턴의 핵심은 매우 단순한 인터페이스 하나로 설명될 수 있다.이것은 command 객체 안에 존재하는 do() 함수의 수준을 클래스 수준으로 격상시키

2020년 3월 29일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 12장_인퍼테이스 분리 원칙

위 상황은 ISP가 지양하는 바로 그 상황이다. 각각의 Transaction 파생 클래스들은 모두 하나의 UI 인터페이스에 의존하게 되는데, 자신이 사용하지 않는 메소드에 의존하게 될 수 밖에 없으며 UI의 일부 메소드의 변경에 대한 영향이 이 UI에 의존하는 모든 T

2020년 3월 29일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 11장_의존 관계 역전 원칙

DIP는 물론 매우 유익한 내용을 담고 있는 객체 지향 설계 원칙이지만, 그 이름에 왜 역전(inversion)이라는 단어가 사용되는지 단번에 와닿지 않을 것이다.(나도 이 책을 읽고 나서야 그 이유를 알게 되었다.) 이는 보다 전통적인 소프트웨어 개발 방법에서는 소프

2020년 3월 28일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 10장_리스코프 치환 원칙

위 함수는 LSP를 위반한다. 현재는 Shape라는 기반 클래스를 상속하는 클래스가 Circle 클래스와 Square 클래스 뿐이지만, 이를 상속하는 또 다른 클래스 Triangle이 추가된다면 이 함수에 등장하는 Shape(기반 타입)은 Triangle(하위 타입)로

2020년 3월 26일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 9장_개방 폐쇄 원칙

모듈의 동작을 쉽게 확장할 수 있다는 것을 의미한다. 애플리케이션의 요구 사항이 변경될 때, 이 변경에 맞게 새로운 동작을 추가해 모듈을 확장할 수 있다.어떤 모듈의 동작을 확장하는 것이 그 모듈의 소스 코드의 변경으로 이어지는 것은 아니다. 한 객체의 변경이 의존관계

2020년 3월 26일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 8장_단일 책임 원칙

클래스는 단 한 가지의 변경 이유만을 가져야 한다.객체 지향 설계에서 '책임'이란 '변경의 축'을 의미한다. 하나의 클래스가 여러 책임을 떠앉고 있을 경우 이 클래스는 변경에 대한 여러 가지 이유를 가지게 되며, 이는 불필요한 관리 포인트를 증가시켜 코드의 유지보수를

2020년 3월 25일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 7장_애자일 설계란 무엇인가

설계가 잘못되었을 때 소프트웨어는 다음과 같은 증상을 보인다.경직성 - 설계를 변경하기 어려움취약성 - 설계가 망가지기 쉬움부동성 - 설계를 재사용하기 어려움점착성 - 제대로 동작하기 어려움불필요한 복잡성 - 과도한 설계불필요한 반복 - 마우스 남용불투명성 - 혼란스러

2020년 3월 25일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 5장_리팩토링

소프트웨어는 고객을 위한 것이지만, 동시에 개발자를 위한 것이기도 하다. 개발자를 위한 소프트웨어라는 측면에서, 소프트웨어는 읽기 쉽고 변경하기 쉬워야 한다. 이 책의 대부분은 읽기 쉽고 변경하기 쉬운 코드를 작성하기 위해 필요한 원칙과 패턴을 소개하고 있지만, 궁극적

2020년 3월 25일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 4장_테스트

TDD를 하는 방법은 간단하다. 프로그램을 설계하기 전에 테스트 코드부터 작성하는 것이다. 단순한 방법이지만, 이렇게 함으로써 여러가지 이득을 얻을 수 있다.개발 과정에서 작성하게 되는 모든 코드는 기능을 검증할 수 있는 테스트 코드를 갖게 된다. 빈번하게 변경이 일어

2020년 3월 25일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 3장_계획 세우기

이번 장에서는 XP에서 일을 계획하는 방식에 대해 자세히 다룬다.프로젝트 초기에 개발자 팀은 사용자 스토리를 추정하기 위해 고객과 함께 일해야 한다. 이 단계에서의 추정은 절대적이 아닌 상대적으로 이루어져야 한다. 사용자 스토리의 상대적인 비용을 표현하기 위해서 '스토

2020년 3월 25일
·
0개의 댓글
post-thumbnail

Review: 소프트웨어 개발의 지혜 - 2장_익스트림 프로그래밍 소개

익스트림 프로그래밍은 애자일 방법 중 가장 유명한 것으로, 단순하면서도 서로 의존적인 실천방법의 집합으로 구성되어 있다. 이 장에서는 그러한 실천방법들을 전체적으로 살펴본다.고객이란 개발자와 같은 회사에서 일하는 비즈니스 분석가일수도, 사용자를 대신하는 대리인일 수도

2020년 3월 25일
·
0개의 댓글