메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

Head First Software Development : 더 쉽고 재미있게 소프트웨어를 개발하는 방법

Head First Software Development : 더 쉽고 재미있게 소프트웨어를 개발하는 방법

한빛미디어

번역서

절판

  • 저자 : 댄 필로네 , 러스 마일즈
  • 번역 : 황상철 , 이정룡 , 조재혁
  • 출간 : 2008-12-03
  • 페이지 : 500 쪽
  • ISBN : 9788979146226
  • 물류코드 :1622
  • 초급 초중급 중급 중고급 고급
3.5점 (2명)
좋아요 : 17
소프트웨어 개발을 위한 다양한 기법을 학습한다.

이 책은 훌륭한 소프트웨어를 개발하기 위한 효율적인 프로젝트 진행 관리 방법과 완료된 소프트웨어의 유지 보수를 위한 리팩토링과 버전 관리, 배포 등 다양한 절차를 개발 순서에 맞게 책 전체에 걸쳐 포괄적으로 설명하고 있다. 또한 이론으로는 잘 알고 있지만 실제 프로젝트에서 사용하기 어려웠던 이터레이션, 테스트 주도 개발 등을 현실적인 예시를 통해 쉽고 재미있게 배울 수 있다.

헤드퍼스트 소프트웨어 개발은 정말 기발한 책입니다. 사려 깊게 디자인된 정보 다이어그램들과 똑부러지는 이미지들은 명확하고 정확한 정보를 여러분 두뇌 속으로 전달해 줄 것입니다.
- 스코드 한셀만, Scott Hanselman"s Computer Zen사의 소프트웨어 개발자, 연사, 저자

헤드퍼스트 소프트웨어 개발은 수업시간에 가르치기 어렵지만 정말 배우고 싶어하는 소프트웨어 개발에 대한 부분들을 다루고 있습니다.
- 케이스 위크만, 존스 홉킨스 대학 응용 물리 연구소 SOA 아키텍트

얼마나 오랫동안 개발을 해봤는가는 상관없습니다. 헤드퍼스트 소프트웨어 개발은 프로젝트 시작부터 끝까지 개발을 성공적으로 할 수 있는 중요한 도구를 제공해 줄 겁니다.
- 아담 Z. 지만스키, 나발 리서치 연구소 소프트웨어 프로젝트 매니저
댄 필로네 저자

댄 필로네

댄은 이 책을 끝낼 수 있게 해준 아내 트레이시에게 무한한 감사를 보낸다고 합니다. 그는 반젠트사의 소프트웨어 아키텍트이고 네발 리서치 연구소와 NASA를 위한 팀을 이끌고 있습니다. 그는 워싱톤 캐톨릭 대학의 학부과정과 대학원 과정에서 소프트웨어 엔지니어링을 가르치고 있습니다. 댄은 약 5년 전에 이 책에 대해 오라일리에 제안했습니다. 3권의 UML책, 콜로라도 보울더에 있는 오라일리의 헤드퍼스트 팀과 품질에 대한 협의를 끝낸후 마침내 공동저자와 같이 이 책을 쓰게 되었습니다. 그가 도전적인 소프트웨어 개발팀을 이끄는 동안 누군가가 아주 복잡한 관리 문제를 해결하는데 도움이 되는 헤드퍼스트 육아법 쓰는걸 참을성 있게 기다리고 있습니다.
러스 마일즈 저자

러스 마일즈

러스가 책을 쓰는 동안에 그의 피앙세 코르니는 모든 지원과 사랑을 아끼지 않았습니다. 그런데도 그는 여전히 그녀가 내년에 그의 청혼을 받아줄 지 믿지 못하고 있습니다. 둘 중 누군가는 행운이 많이 필요할 거 같네요. 러스는 오랫동안 글을 써 왔으며 처음 접해도 당황하지 않도록 기술, 툴, 기법들에 관한 많은 편견을 제거해 왔습니다. 개발자가 된 후 수년간 다양한 일을 해왔으며, 러스는 음악산업에서 아주 비밀스런 서비스를 개발하는 소프트웨어 개발팀을 이끌면서 밤낮으로 바쁜 나날을 보내고 있습니다. 또한 5년 만에 옥스포드에서 석사학위를 받고나서 약간의 휴식이 필요하다고 하네요. 오래는 아니구요. 러스는 열정적인 기타 연주자여서 다시 기타로 돌아가서 즐거운 시간을 보내고 있습니다. 그가 원하는 것은 헤드퍼스트 기타입니다. 여러분도 원하죠?
황상철 역자

황상철

경희대학교 산업공학과를 졸업하고 동 대학원에서 경영과학을 전공했다. 현재 삼성 SDS Eng. Methodology 팀 소속으로 애자일 방법론을 전사에 소개하고 전파하는 업무를 맡고 있다.수년 동안 J2EE 프로젝트에서 개발자, PL, 아키텍트로 일해왔으며, 그 경험을 바탕으로 지금은 생산성 혁신 본부에서 전사 표준 방법론 제정 및 표준 개발 도구 선정 등에 대한 일을 하고 있다.주 관심 분야는 오픈소스, 애자일, 테스트 등으로 실용주의 이야기(http://moai.tistory.com)라는 블로그를 통해 이런 내용을 나누고 있다. 『SOA 서비스 지향 아키텍처: 개념에서 설계, 구현까지』(에이콘, 2006),『찰스 페졸드의 WPF』(에이콘, 2007), 『WCF: SOA 서비스를 빠르고 쉽게 구현해주는 통합 프로그래밍 모델』(에이콘, 2008)을 번역했다.
이정룡 역자

이정룡

연세대학교 화학공학과를 졸업하였고 현재 삼성 SDS 인트라넷 개발파트에서 기업내 엔터프라이즈 포탈 구축 및 운영을 담당하고 있다. 최근에는 애자일 방법론을 도입하여 포탈 기반의 워크플레이스를 개발 중에 있으며 주요 관심분야는 애자일 개념을 기반으로 하는 워크플로우 시스템과 분산 환경 기반의 고성능 캐시서버 구축이다. 『Java Specification 3rd Edition』(에이콘, 2007)을 번역했다.
조재혁 역자

조재혁

서울시립대학교 전자전기공학부를 졸업했다. 현재 삼성 SDS ACUBE사업팀에서 EKP 솔루션 개발을 담당하고 있으며 다수의 공공, 기업 프로젝트를 수행했다. 유용한 애자일 기법들을 엔터프라이즈 애플리케이션을 개발하는데 효과적으로 적용하는 것에 관심이 많으며 특히 하이버네이트와 같은 ORM 프레임워크에도 많은 애착을 가지고 있다. 바쁜 일상 중에도 교회에서 성가대원으로, 그리고 드럼주자로 활동하는 기독교인이다.

1. 훌륭한 소프트웨어 개발하기
고객을 기쁘게 하라

Tom"s Trails을 온라인으로
거의 모든 프로젝트에는 두 가지 중요한 고민이 있습니다.
개발에 대한 빅뱅(Big Bang)식 접근
2주가 지났습니다.
빅뱅 개발은 보통 큰 혼란(BIG MESS)으로 끝이 납니다.
훌륭한 소프트웨어 개발이란...
이터레이션으로 목표 달성하기
각 이터레이션은 작은 프로젝트와 같습니다.
이터레이션이 품질 좋은 소프트웨어를 만듭니다.
고객의 마음은 변합니다.
수정을 어떻게 하느냐는 여러분에게 달려있습니다.
여러분은 이미 오랫동안 개발을 진행해 왔습니다.
이터레이션은 변화를 자동으로 (그것도 잘) 관리합니다.
여러분의 소프트웨어는 출시 될 때까지 완료된 게 아닙니다.
소프트웨어 개발도구 상자 활용하기

2. 요구사항 수집하기 
  고객이 원하는 것을 알아내야 합니다

오리온 우주투어 차세대 프로젝트
고객에게 더 많은 정보를 달라고 말하세요.
고객과의 블루스카이
때로는 블루스카이를 진행하는 게 아래처럼 될 수 있습니다.
사람들이 정말로 원하는 것을 찾아보세요.
여러분의 요구사항은 고객지향적 이어야 합니다.
고객 피드백으로부터 요구사항 확장하기
사용자 스토리로 프로젝트에서 무엇을 해야 하는지를 정의하고... 
언제 정의해야 하는지를 알 수 있습니다.
짤막한 대화
계획 포커 게임
가정은 살아있는 동안 재판을 받습니다.
오래 걸리는 사용자 스토리 추정은 잘못된 추정입니다.
계획 포커의 목적은 의견 수렴입니다.
이터레이션 주기를 추정하는 것에 대한 요구사항
마지막으로, 전체 프로젝트에 대해 추정할 준비가 되었습니다.

3. 프로젝트 계획하기
성공을 위한 계획

고객은 바로 지금 자신들의 소프트웨어를 갖길 원합니다.
고객과 함께 우선순위 정하기
마일스톤 1.0에 뭐가 있는지 알게 되었습니다.
기능이 맞지 않으면 우선순위를 재조정합니다.
사람을 더 투입하면 더 큰 성과가 날까요?
적정 수준의 마일스톤 1.0을 위해 일하세요.
이터레이션은 짧고 달콤해야 합니다.
게획을 현실과 비교하기
개발속도는 추정 값에서 부담되는 부분을 책임집니다.
프로그래머는 꿈결 같은 시간을 생각합니다.
개발자는 현실적인 시간을 생각합니다.
언제 이터레이션이 너무 길어지나요?
이터레이션 들어가기 전에 개발속도 반영하기
평가를 위한 시간
[피곤하게 하는] 고객 다루기
벽에 커다란 현황판을 만드세요.
팀의 생기를 없애는 방법

4. 사용자 스토리와 태스크
실제로 일을 시작해 봅시다

iSwoon을 소개합니다.
태스크의 합이란 무엇을 의미할까요?
남은 작업 구성하기
현황판에 태스크 붙이기
태스크상의 일 시작하기
태스크는 진행 중 영역에 있을 때만 진행되고 있는 겁니다.
만약 동시에 두 가지 일을 한다면 어떻게 될까요?
첫 번째 스탠드업 미팅...
태스크 1: Date 클래스 생성하기
스탠드 업 미팅: 다섯 번째 날, 첫 주의 마지막...
스탠드 업 미팅: 두 번째 주, 두 번째 날...
이번 장의 훼방꾼이 나타났어요. 
계획되지 않은 태스크를 추적해야 합니다.
계획하지 않은 태스크가 소멸 비율을 증가시킵니다.
속도가 도움이 됩니다만... 
할 일이 많이 남았습니다. 
...하지만 우리가 어디에 있는지를 정확히 알고 있습니다.
노출된 속도

5. 충분히 구현 가능한 좋은 설계
훌륭한 설계로 작업하기

iSwoon이 심각한 문제에 빠졌습니다.
이 설계는 단일 책임 원리를 따르지 않습니다.
설계에서 다중 책임을 갖는 곳 찾기
다중 책임을 단일 책임으로 전환하기
설계는 SRP를 준수해야 합니다. 또 DRY도 준수해야 합니다.
리팩토링 후 스탠드업 미팅
계획되지 않은 태스크도 태스크일 뿐입니다.
데모 자체도 태스크의 일부입니다.
모든 것이 완료되면, 이터레이션은 끝이 납니다.

6. 버전 관리
안전한 개발

새로운 계약을 따냈습니다 - 비트박스 프로
그리고 계속해서 GUI 작업...
고객에게 새로운 비트박스 선보이기
버전 관리를 시작합시다.
먼저 여러분의 프로젝트를 설치합니다.
...이제 코드를 체크인 또는 체크아웃할 수 있습니다.
대부분의 버전 관리 도구가 여러분이 직면한 문제를 해결해 줄 것입니다. 
서버는 수정사항을 자동으로 합치려 합니다. 
버전 관리 소프트웨어가 변경사항을 합칠 수 없으면 충돌이 발생했음을 알립니다. 
이터레이션이 많아지면 사용자 스토리도 많아집니다. 
우리는 소프트웨어에 대해 하나 이상의 버전을 갖고 있습니다. 
좋은 커밋 메시지는 예전 소프트웨어를 찾기 쉽게 해줍니다. 
이제 1.0 버전을 체크아웃할 수 있습니다. 
(긴급) 스탠드업 미팅 
여러분의 버전에 태그를 생성하세요. 
태그, 브랜치, 트렁크... 아이고! 
1.0 버전 수정하기.. 이번엔 실제 상황입니다.
이제 두 개의 코드 기반을 갖게 되었습니다. 
언제 브랜치를 사용하면 안될까요? 
BeatBox Pro 1.x브랜치 관리를 잘 하려면 
버전관리는 다음과 같은 작업을 수행합니다. 
버전관리는 여러분의 코드가 실제로 작동하는지 보장하지 않습니다.  
소프트웨어 개발 도구상자 활용하기

6.5작성한 코드 빌드하기
b 슬롯 안에 있는 a 탭을 넣으세요

개발자는 기억력 좋은 독자가 아닙니다.
한 번에 프로젝트 빌드하기
앤트(Ant): 자바 프로젝트를 위한 빌드 도구
프로젝트(proejct), 프로퍼티(property), 타겟(target), 태스크(task) 엘리먼트
좋은 빌드 스크립트...
좋은 빌드 스크립트는 기본 사항 외에 더 많은 것을 수행합니다.
빌드 스크립트도 코드입니다.
신입 개발자는 두 가지를 얻었습니다.
소프트웨어 개발 도구상자 활용하기

7. 테스트와 지속적인 통합
코드 분해하기

모든 것은 항상 잘못될 수 있습니다.
시스템을 바라보는 시각에는 3가지가 있습니다.
블랙박스 테스트는 입출력 값에 집중합니다.
그레이박스 테스트는 보다 코드 안쪽을 살펴봅니다.
화이트박스 테스트는 구현코드 내부를 확인합니다.
한 번에 모든 것을 테스트하기
테스트 프레임워크에서 테스트 자동화하기
테스트를 실행하기 위해 프레임워크 사용하기
크루즈컨트롤(Cruise Control)의 CI 사이클
테스트는 코드가 정상적으로 작동하는 것을 보장합니다. 맞나요?
모든 코드를 테스트한다는 것은 모든 분기문을 테스트한다는 의미입니다.
무엇이 테스트되었는지 알기 위해서 커버리지 리포트를 사용하세요.
높은 커버리지률을 갖는 것이 항상 쉬운 것은 아닙니다.
개발 환경에서 버전 관리 도구가 하는 것들
소프트웨어 개발 도구상자 활용하기

8. 테스트 주도 개발
코드는 항상 설명하기 쉽게 작성하세요

테스트는 나중에 하는 것이 아니고 처음부터 하는 것입니다.
그래서 처음부터 테스트를 수행할 예정입니다.
테스트 주도 개발(TDD)에 온 것을 환영합니다.
여러분의 첫 번째 테스트...
… 끔찍하게 실패한다는 것입니다.
테스트를 녹색으로 변경하기
적색, 녹색 그리고 리팩토링...
TDD에서 테스트는 여러분의 개발을 이끌어 줍니다.
테스크를 완료했다는 것은 필요한 모든 테스트를 했고 모두 통과했다는 의미입니다.
테스트를 통과하면 바로 다음으로 넘어가세요!
간결함이란 의존성을 최대한 제거하는 것입니다.
항상 테스트 가능한 코드를 작성하세요.
테스트 하기 어려우며 설계내용을 살펴보세요.
전략 패턴을 이용하면 하나의 인터페이스를 다양하게 구현할 수 있습니다.
테스트용 코드는 테스트 클래스에서 관리하세요.
테스트는 더 나은 코드를 만듭니다.
테스트가 많아질수록 코드도 더 늘어납니다.
전략 패턴은 결합도를 낮추고, 객체화 합니다.
다양하지만 유사한 객체가 필요합니다.
이미 객체를 생성했다면 어떨까요?
목(Mock) 객체는 실제 객체를 대체합니다.
목 객체는 실제 객체를 대신해서 동작합니다.
좋은 소프트웨어는 테스트할 수 있습니다.
녹색으로 만들기는 쉬운 일이 아닙니다.
테스트 주도 개발자의 하루...
소프트웨어 개발 도구상자 활용하기

9. 이터레이션의 마무리
모든 것이 다 잘 되어갑니다


이터레이션이 이제 막 완성되려고 합니다.
...그러나 여러분이 할 수 있는 것이 많이 남아 있습니다.
시스템 테스트는 반드시 해야 합니다.
...그런데 누가 시스템 테스트를 하죠?
시스템 테스트는 테스트할 완전한 시스템이 있어야 합니다.
좋은 시스템 테스트는 두 개의 이터레이션 사이클이 필요합니다.
이터레이션이 많을수록 문제도 많습니다.
효과적인 시스템 테스트의 특징 Top 10
버그의 일생(그리고 죽음)
버그를 발견했다면...
버그 리포트의 해부
아직 할 수 있는 일이 많이 남아있습니다.
이터레이션 리뷰
이터레이션 리뷰에 대한 질문들
부가적인 일들을 위한 일반적인 우선순위 목록
소프트웨어 개발 도구상자 활용하기

10. 다음 이터레이션
프로젝트 변화에 빠르게 대처하기

작동하는 소프트웨어는...
다음 이터레이션의 계획이 필요합니다.
속도는... 프로젝트 현설을 반영합니다.
고객에 대한 이야기를 계속해 봅시다.
다른 사람의 소프트웨어도 그저 소프트웨어일 뿐입니다.
고객 승인? 확인해보죠!
테스트하기
태권브이, 우리 문제가 생겼어요.
아무도 믿지 마세요.
누가 코드를 작성했는지는 중요하지 않습니다. 만약 그것이 여러분의 
소프트웨어라면 여러분에게 책임이 있습니다.
프로세스를 갖추지 못한 경우
프로세스를 갖춘 경우

11. 버그
프로답게 버그 잡기

먼저 고객에게 이야기해야 합니다.
우선순위 1: 코드가 빌드되도록 하라.
코드를 고칠 수야 있지만...
...하지만 기능을 수정해야 합니다.
어떤 기능이 동작하는지 알아보기
이제 여러분은 무엇이 동작안하는지 알고 있습니다.
무엇을 하시겠습니까?
추정을 위한 스파이크 테스트
스파이크 테스트의 결과가 의미하는 바는 무엇일까요?
팀원들이 실제로 느끼는 것이 중요합니다.
고객에게 버그 수정에 대해 추정한 내용을 전해주세요.
잘 되어가는 것처럼 보입니다.
...그리고 여러분은 성공적으로 이터레이션을 마쳤습니다!
그리고 가장 중요하게도 고객이 행복해 하네요.
소프트웨어 개발 도구상자 활용하기

12. 실제 세계
프로세스의 생활화

소프트웨어 개발 프로세스 명확히 하기
좋은 프로세스가 좋은 소프트웨어를 만듭니다.
형식을 갖춘 복장이 필요합니다.
더 살펴보아야 할 것들...
더 많은 지식 == 더 좋은 프로세스
소프트웨어 개발 도구상자 활용하기

부록1: 남은 것들
베스트 5(우리가 다루지 않았던)

#1. UML 클래스 다이어그램
#2. 시퀀스 다이어그램
#3. 사용자 스토리와 유스케이스
#4. 시스템 테스트 vs. 단위 테스트
#5. 리팩토링

부록 2: 기법과 원칙
숙련된 소프트웨어 개발자의 도구

개발 기법
개발 원칙

이 리뷰의 제목처럼 여러분이 야근에 시달리는 프로젝트의 PM이라면 팀원들을 위해서 어떻게 할 것인가?

본 도서는 이러한 질문에서 시작해서 너무나도 뻔하게 처음부터 끝까지 조금이라도 개발을 편하게 하기 위한 내용을 제시한다.

인류가 개발한 것중에서 가장 복잡한 것이 무엇인지 아는 분들이 얼마나 있을까? 본 독자는 인류가 개발한 것중에서 가장 복잡한 것은 수학인줄만 알았다. 아마 수학을 싫어하기 때문이겠지만 말이다.

그럼 정말 복잡한 것이 수학일까?

몇해전 온라인에서 본 다음과 같은 구절을 보았다.

"인간이 개발한 것중에서 가장 복잡한 것은 소프트웨어 개발이다"

이 구절을 보는 순간 경악했다. "소프트웨어 개발? 그럴리가.."

그러나 이 말은 틀림없는 사실이다.

수학을 예로 들어 설명하면 수학은 어떤 공식이 있다면 그 공식이 옳은지 틀린지 알기 위해서 여러개의 증명을 해서 공식을 증명한다. 이런 절차를 반증이라고 한다.

소프트웨어 개발을 예로 들면 소프트웨어 개발은 수학처럼 반증만 하는 것이 아니라 종합적인 사고를 해야 한다. 논리로 똘똘 뭉친 수학은 육하원칙이 없으나 소프트웨어는 육하원칙이 항상 존재하기 때문에 종합적인 사고를 한다고 이야기 한것인데 이런 것에 얼마나 많은 사람이 공감할지는 지금은 이해할 수 없다.

컴퓨터가 개발되고 소프트웨어 개발은 해를 거듭할 수록 새로운 개발 방법과 새로운 언어가 쏟아져 나왔지만 소프트웨어를 개발하는 방법은 개발자들에겐 최적이었지만 반대편에 서 있는 고객에겐 소프트웨어 개발이 고역일 수 밖에 없다.

다음과 같은 프로세스를 예로 들어본다.

1. 고객이 소프트웨어 개발자에게 소프트웨어 개발을 맡긴다.
2. 소프트웨어 개발자는 정해진 시간에 소프트웨어 개발을 한다
3. 소프트웨어 개발자는 소프트웨어를 고객에게 전달한다.

이 다음에 발생한 일은 무엇일까? 이 결과는 고객이 원하는 결과가 나오는 소프트웨어가 아니라 전혀 다른 소프트웨어가 나온 것을 볼 수 있다.

실제로도 이런 일은 비일비재하게 발생하고 있다. 정말?

정말이다. 본 독자도 개발자로 일하면서 이런 상황을 너무나도 자주 겪었다.

본 도서는 고객이 만족하는 소프트웨어를 개발하는 방법이 친절하게 설명되어 있다.

1. 요구사항을 수집하여 사용자 스토리의 제작을 통해 작업할 태스크 분리
2. 예상치 못한 일이 발생해도 대처할 수 있도록 일정을 조정
3. 프로젝트를 제 때 끝내기 위해서 고객을 프로젝트에 끌어들이며
4. 충분히 구현 가능한 설계와 버전 관리, 작성한 코드의 빌드
5. 테스트를 기반으로 지속적인 통합을 통해 테스트 주도 개발의 확립
6. 어디에 숨어있을지 모르는 버그를 찾기 위해 버그 수정에 걸리는 타당한 시간의 확립
7. 고객이 원하는 형태로 보고서 작성
8. 한 번에 모든 설계를 끝내지 않고 보다 나은 설계를 위해서 UML 클래스 다이어그램, 시퀀스 다이어그램, 사용자 스토리와 유스케이스 이용

그동안 야근에 시달려왔던 소프트웨어 개발자라면 적어도 본 도서를 통해 야근하지 않는 소프트웨어 개발을 배워서 저녁시간은 가족과 함께 보내는 시간이 되었으면 하는 바람이다.

그 동안 여러 소프트웨어 개발 책을 보았으나 코드를 확립하는 개발 방법론에 대해선 너무 자세하고 훌륭한 책들이 많지만 이 책에서 주도하는 이터레이션(마일스톤)으로 소프트웨어 개발을 솔직하고 명쾌하게 풀어주는 책은 많지 않다.

한국의 소프트웨어 개발 특성 상 본 도서의 내용을 일정이 급박한 소프트웨어 개발에 적용하기란 쉽지 않을 것이다.

이런면에선 한국의 소프트웨어 개발 체계가 아쉽기만 하다. 이상적일지라도 소프트웨어 개발의 생산성 증대를 위해서 본 도서를 읽어보기를 권한다.

마지막으로 이 책을 저술한 댄 필로네, 러스 마일즈에게 찬사를 보내고, 국내에서 이렇게 좋은 책이 널리 읽힐 수 있도록 번역하신 황상철, 이정룡, 조재혁님에게도 감사드린다.

독자 여러분도 이 책을 통해서 소프트웨어를 보다 재미있게 개발하는 방법에 대해서 새로운 시각을 가질 수 있기를 희망한다.

head first 시리즈의 특징이라면
일관된 스토리를 가지고
내용을 풀어나간다는 점이다.
어떻게 보면 소설책 읽듯이 읽어내려가기에도 좋다.

위 책은 개발방법론에 대해서 다룬 책이다.

기존에 나와있는 다른 개발방법론에 대한 책들처럼
그 다루는 내용이나 범주는 비슷하지만..
head first 특유의
스토리가 있어 읽기에 좋았던거 같다.

책의 구성방식은
하나의 프로젝트를 놓고
가상의 개발자들을 두어
프로젝트를 진행해나가는 방식이다.

처음에는
개발방법론에 입각한
단계별 진행방식으로 프로젝트를 진행해나간다.

그 후
프로젝트에 하나하나의 도구들을 사용하여
(svn,ant,junit...)
프로젝트를 좀더 효율적으로 진행해나가는 방식이다.

읽으면서 괜찮았던 점이라면
아무런 도구를 사용하지 않고
단계별 개발 진행 과정만 가지고 프로젝트를 진행 후

그 프로젝트에서 생기는 여러 문제점이 발생할때마다
관련된 도구를 사용하여
그 문제를 해결해나가는 방식이었다.

조금 아쉬운점이라면
개발 도구 사용에 대한 부분들 중에서
간략하게만 짚고 넘어간부분이다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
Head First Software Development : 더 쉽고 재미있게 소프트웨어를 개발하는 방법
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
Head First Software Development : 더 쉽고 재미있게 소프트웨어를 개발하는 방법
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
Head First Software Development : 더 쉽고 재미있게 소프트웨어를 개발하는 방법
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 책0