본문 바로가기

리디북스 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디북스 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기


심플 소프트웨어 상세페이지

컴퓨터/IT 개발/프로그래밍

심플 소프트웨어

구매종이책 정가18,000
전자책 정가14,400(20%)
판매가14,400
심플 소프트웨어

책 소개

<심플 소프트웨어> 100년 뒤에도 유용할 소프트웨어 설계 원칙 & 프로그래머의 바른 길!

Google의 코드 건강(Code Health), 즉 코드의 가독성, 안정성, 단순성, 유지보수성은 어떻게 개선되어 왔을까? 오픈소스 버그질라(Bugwilla)는 어떻게 침체기를 벗어나 다운로드 수를 10배 이상 늘렸을까? 그 중심에는 이 책의 저자 맥스-카넷 알렉산더가 있다. Google의 기술 책임자로서, 버그질라 프로젝트의 수석 아키텍트로서 활동하면서 얻은 통찰과 깨달음을 이 한 권에 담았다. 수많은 프로그래머가 올바른 방법으로 소프트웨어를 설계하고, 더 나은 코드를 작성하도록 도와준 ‘소프트웨어 설계 원칙’을 차근차근 이야기해 준다.


출판사 서평

할 거면 잘 해라!

단순함을 추구하라! 더 나은 프로그래머가 될 것이다!
그러나 단순함을 추구하는 것은 어려운 일이다. 하지만 생각해 보자. 나는 프로그래머고, 지금 내 앞에는 해야 할 일이 있다. 자, 이제 어떻게 할 텐가? 나는 뭐든 할 거면 그 분야에서 제일 앞서 나가기 위해 최선을 다해야 한다고 생각한다. 다른 사람들에게도 그렇게 살라고 권하고 싶다. 다음과 같이 말이다.

“어차피 할 거라면 왜 잘하지 않나요? 더 능숙하게 할 수 있으면 일하는 게 더 즐겁지 않을까요? 자신이 한 일을 보고 다른 사람이 감동한다면 어떨까요? 하루를 마치고 집으로 가는 길에 그날 무언가를 잘 해낸 기억이 떠오른다면 어떨까요? 현재보다 아주 조금이라도 삶이 더 즐거워지지 않을까요?”


저자 프로필

맥스 카넷-알렉산더 Max Kanat-Alexander

  • 경력 구글 소프트웨어 엔지니어

2015.05.07. 업데이트 작가 프로필 수정 요청


저자 소개

저 : 맥스 카넷-알렉산더 (Max Kanat-Alexander)

Google의 코드 건강(Code Health, 즉 코드의 가독성, 안정성, 단순성, 유지보수)에 대한 기술 책임자다. 또한, 버그질라(Bugzilla) 프로젝트의 수석 아키텍트였다. codesimplicity.com 및 fedorafaq.org를 운영하고 있으며, 저서로는 『Code Simplicity』(한빛미디어)가 있다.

역 : 이미령

가치 있는 콘텐츠를 우리말로 공유하려고 자원봉사로 시작한 일이 번역가의 길로 이어졌다. 모든 일을 재미있게 하는 비결은 아이 같은 호기심을 잃지 않는 데 있다고 믿으며, 사람과 사람, 사람과 컴퓨터 간의 연결 분야에 관심이 많다. 옮긴 책으로는 『콘솔 워즈』, 『소프트 스킬: 평범한 개발자의 비범한 인생 전략 71가지』, 『사용자를 생각하게 하지 마!』 등이 있다.

목차

지은이 서문
옮긴이 서문

1부 프로그래머를 위한 원칙

__1장 시작하기 전에
____할 거면 잘하라
__2장 엔지니어의 자세
__3장 능력자 프로그래머의 한 가지 비밀
__4장 두 문장으로 요약한 소프트웨어 설계

2부 소프트웨어의 복잡성과 원인

__5장 복잡성의 단서
__6장 복잡성을 키우는 방법: API 분리
__7장 하위 호환성이 가치를 잃는 시점은 언제인가?
__8장 복잡성은 감옥이다

3부 단순성과 소프트웨어 설계

__9장 설계는 프로젝트 초반에 하라
____올바른 방법 도입하기
__10장 미래 예측의 정확성
__11장 단순성과 엄격성
__12장 둘은 너무 많다
____리팩토링
__13장 분별 있는 소프트웨어 설계
____잘못된 방법
____잘못된 방법 분석
____이 작업을 여러 사람이 함께한다면?
____올바른 방법
____우리는 소프트웨어 설계 법칙을 따랐다

4부 디버깅

__14장 버그란 무엇인가?
____하드웨어
__15장 버그의 원인
____복합적인 복잡성
__16장 재발을 방지하라
____재발 방지 예시
____토끼굴로 들어가기
__17장 디버깅의 기본 철학
____버그 파악하기
____시스템 살펴보기
____진짜 원인 찾기
____4단계

5부 엔지니어링 팀에서 일하기

__18장 엔지니어링 생산성을 효과적으로 개선하기
____그러면 어떻게 해야 할까?
____해결책
____신뢰와 문제 해결
____장애물
____근원적 문제를 향해 나아가기
__19장 개발자 생산성 측정하기
____‘생산성’의 정의
____‘LOC’는 어떨까?
____유효한 기준 정하기
____코드가 제품이라면?
____개발자 생산성 개선 담당자라면?
____결론
__20장 소프트웨어 회사에서 코드 복잡성을 다루는 법
____1단계: 문제 목록
____2단계: 회의
____3단계: 버그 리포트
____4단계: 우선순위 선정
____5단계: 과제
____6단계: 계획
__21장 리팩토링할 때는 기능에 주목하라
____효과적으로 일하기
____리팩토링 한계 설정하기
____리팩토링을 하면 시간이 절약된다
____명확하게 만들어라
____정리
__22장 친절과 코드
____소프트웨어에서 중요한 건 사람이다
____친절의 예
____친절하게 더 나은 프로그램을 만들어라
__23장 간략하게 살펴보는 오픈 소스 커뮤니티
____기여자 유지하기
____장벽 없애기
____관심 유도하기
____아주 인기 있는 제품이 돼라
____인기 있는 프로그래밍 언어로 만들어라
____정리

6부 소프트웨어 이해하기

__24장 컴퓨터란 무엇인가?
__25장 소프트웨어 구성 요소: 구조, 동작, 결과
__26장 소프트웨어 개정판: (I)SAR 구별하기
____구조
____동작
____결과
____코드 한 줄에 담긴 ISAR
____SAR 정리
__27장 지식으로서의 소프트웨어
__28장 기술의 목적
____반대 사례도 있을까?
____기술의 발전이 ‘좋은’ 것인가?
__29장 간략하게 살펴보는 프라이버시 문제
____공간의 프라이버시
____정보의 프라이버시
____정리
__30장 단순성과 보안
__31장 테스트 주도 개발과 관찰 주기
____ODA 사례
____개발 프로세스와 생산성
____첫 번째 ODA
__32장 테스트 철학
____테스트 가치
____테스트 단언문
____테스트 범위
____테스트 가정
____테스트 설계
____E2E 테스트
____통합 테스트
____단위 테스트
____현실
____가짜
____결정론 177
____속도 178
____커버리지 180
____결론: 테스트의 전반적인 목표 180

7부 나아지기

__33장 성공의 비밀: 나아지기
____이 방법이 왜 효과가 있었을까?
__34장 개떡 같은 부분을 찾는 방법
__35장 ‘아니요’의 힘
____나쁜 아이디어 알아내기
____나쁜 아이디어 내지 않기
____거절과 무례는 다르다
__36장 프로그래머가 개떡 같은 이유
____무엇을 배워야 할까?
__37장 빠른 프로그래밍의 비결: 생각하지 않기
____이해하기
____그리기
____시작하기
____단계 건너뛰기
____신체적 문제
____주의 집중하기
____자기 회의
____잘못된 통념
____주의 사항
__38장 개발자의 자만심
__39장 ‘일관성’과 ‘획일성’은 다르다
__40장 사용자는 문제를 알려주고 개발자는 해결책을 만든다
____신뢰와 정보
____문제는 사용자에게서 나온다
__41장 즉각적인 만족감 = 즉각적인 실패
____해결책은 장기적인 관점으로 찾아라
____소프트웨어 회사를 망가뜨리는 방법
__42장 성공은 혁신이 아니라 실행에서 온다
__43장 훌륭한 소프트웨어
____1. 사용자의 명령을 정확하게 따른다
____2. 사용자가 예상한 대로 작동한다
____3. 사용자의 의도 전달을 막지 않는다
____코드를 단순하게 만드는 것보다 탁월하게 만드는 게 더 중요하다. 이 둘은 상충되지 않는다

찾아보기


리뷰

구매자 별점

4.1

점수비율

  • 5
  • 4
  • 3
  • 2
  • 1

11명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디북스에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전