본문내용 바로가기
MD의선택 무료배송 이벤트 사은품 소득공제

심플 소프트웨어 코드의 단순성, 가독성, 안정성, 유지보수

맥스 카넷-알렉산더 지음 | 이미령 옮김 | 길벗 | 2019년 10월 30일 출간
클로버 리뷰쓰기

이 책의 다른 상품 정보

  • 정가 : 18,000원
    판매가 : 16,200 [10%↓ 1,800원 할인]
  • 혜택 :
    [기본적립] 900원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2,000원 추가적립 안내 [회원혜택] 회원 등급 별, 3만원 이상 구매 시 2~4% 추가적립 안내 [리뷰적립] 리뷰 작성 시 e교환권 최대 300원 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    당일배송 지금 주문하면 오늘(23일,토) 도착 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기

이 책의 이벤트

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
  • 2022 캘린더 수록한 IT독자를 위한 readIT 노트 사은품
    2021.10.14 ~ 2021.11.30
  • 개발자의 학습과 성장에 도움이 되는 55권의 목록입니다.
    2021.07.15 ~ 2021.12.31
  • 책을 통해 성장해나가는 개발자를 응원합니다.
    2017.06.22 ~ 2025.07.31
상품상세정보
ISBN 9791160509519(1160509514)
쪽수 228쪽
크기 153 * 225 * 17 mm /438g 판형알림
이 책의 원서/번역서 Understanding Software / Kanat-Alexander, Max

책소개

이 책이 속한 분야

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

상세이미지

심플 소프트웨어 도서 상세이미지

목차

지은이 서문
옮긴이 서문

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. 사용자의 의도 전달을 막지 않는다
____코드를 단순하게 만드는 것보다 탁월하게 만드는 게 더 중요하다. 이 둘은 상충되지 않는다

찾아보기

추천사

김훈민(메쉬코리아 웹프런트엔드 테크 리더)

코드는 한 줄도 나오지 않습니다. 대신에 코드를 작성하기 전에 한 번쯤 생각해 보아야 할, 어쩌면 코드 보다 더 중요한, 그런 이야기로 가득합니다. 자신이 하는 일을 이해함으로써 더 나은 소프트웨어 개발자가 되고 싶은 분들에... 더보기

권태관(NAVER 소프트웨어 엔지니어)

'문제 해결'보다는 프로그래머로서의 기본 자세와 더 높고 멀리 볼 수 있는 시야에 대해 이야기합니다. 기존 책에서는 볼 수 없었던 현업에서의 생생한 경험과 사례를 볼 수 있습니다. 이 책이 자신만의 '프로그래밍 가치관'을 정... 더보기

이동규(우아한형제들 개발자)

간결하고 논리적 정합성을 가진 문장으로 코드, 소프트웨어 그리고 프로그래머가 가져야 할 인식에 대해 이야기한다. 아직 테스트 코드 작성 및 리팩토링이 생산성을 해친다고 생각한다면 이 책을 읽어보길 권한다.

출판사 서평

할 거면 잘 해라!

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

“어차피 할 거라면 왜 잘하지 않나요? 더 능숙하게 할 수 있으면 일하는 게 더 즐겁지 않을까요? 자신이 한 일을 보고 다른 사람이 감동한다... 더보기

Klover 리뷰 (0)

북로그 리뷰 (3) 전체보기 쓰러가기

북로그 리뷰는 본인 인증 후 작성 가능합니다.
책이나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 내용은 비공개 처리 될 수 있습니다.
※ 북로그 리뷰 리워드 제공 2021. 4. 1 종료
  • [서평] 심플 소프트웨어 gr**or77 | 2019-11-20 | 추천: 0 | 5점 만점에 5점
      길벗에 개발자 리뷰 신청 글을 보다가, 100년 뒤에도 유용할 소프트웨어 설계 원칙 & 프로그래머의 바른 길!  문구에 이끌려 "심플 소프트웨어"라는 책 리뷰를 하게 되었다. 이전에 "소프트웨어 장인"이라는 책을 인상깊게 읽었는데 그와 비슷한 표지에, 강렬한 문구에 이 책을 읽고나면  깨달음을 얻을 수 있을거란 기대감이 생겼다. ## 책을 읽었으면 하는 사람들 소프트웨어 엔지니어로 일을 하거나, 현재 일하는 방식을 변화하고 싶은 사람들이 읽었으면 ... 더보기
  • 이 책은 일단 코드의 단순성 및 간결하게 가독성 있게 어떻게 해야 하는지 자세하게 나와 있습니다. 그렇다고 개발 코드로 자세하게 아니라, 말로써~ 이 책을 읽다 보면 개발자로서 아 맞다 나도 그랬었지라는 생각을 하게 될 수도 있고 아 난 왜 이렇게 행동하지 않았을까? 라는 생각이 들 수도 있습니다. 우선 이 책에서는 유지 보수를 잘하기 위해서 다양한 필자의 경험을 들어 볼 수도 있고 또한 느낄 수도 있습니다. 개발자라면 평소에 건드리고 싶지 않은 소스 코드가 있을 텐데 이때는 어떻게 해야 하는지 다양한 사... 더보기
  •   유지보수 관점에 입각하여 복잡성을 낮추는 설계 이게 바로 이 책이 말하는 핵심이자 전부라고 할 수 있다.  이 책은 우리가 소프트웨어를 개발하면서 지켜야 할 소프트웨어 중심의 사고방식을 다룬다. 미래 지향적이고 사람 친화적인 접근이 목표다. 이 목표들을 위협하는 요소에는 어떤게 존재할까? 이 책이 말하는 모든 내용을 회사 직원들이 안다는 전제하에 가장 큰 위협은 조급함과 권위가 아닐까 생각한다. 시간에 쫓기면 사람들은 단순한 사고방식에 갖히게 된다. 깊고 창의적인 길은 닫히고 직관적이고 단순한... 더보기

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매 후 문장수집 작성 시, 리워드를 제공합니다. 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함
바로가기
  • 우측 확장형 배너 2
  • 우측 확장형 배너 2
최근 본 상품