• 베스트
  • 소득공제

클린 코드 이제는 파이썬이다 - 한 권으로 읽는 파이썬 개발자 성장 프로젝트

  • 알 스웨이가트
  • 박재호,김동현
  • 책만
  • 2022년 08월 16일
사용자 평점
0리뷰 0개
10%27,00030,000원
적립금
1,500원 (5% 적립)
추가 적립 안내
  • 5만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

  • 10만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

    정가제FREE(상품/사은품) 금액이
    5,000원 이상이면 5,000원 추가적립

회원가입 시 적립금 즉시 지급!

배송비
무료 (해외배송의 경우 지역에 따라 상이)

배송안내

배송비 안내
  • 1만원 이상 주문 시 무료배송 입니다.
  • 주문하신 상품을 해외로 배송 하시는 경우에는 별도의 항공료 가 부과됩니다
서울특별시 강남구 강남대로 542(논현동, 영풍빌딩)
주문 수량 변경시 안내

[주문/배송] 주문 수량 변경 시 안내

주문 수량 변경 시,배송일정이 변경될 수 있으니 반드시 확인해 주시기 바랍니다.
(고객센터 1544-9020)

지금 주문하면 8/21(금) 출고 가능
택배보다 빠른, 나우드림
상품 규격 정보
상품상세정보
ISBNISBN-13 : 9791189909451
쪽수440쪽
크기기타 규격
제품구성단행본
이 책이 속한 분야
  • 컴퓨터/IT > 인터넷
관련 이벤트

AI추천 이유

책 소개
가독성 높으며 유지 보수와 기능 확장이 쉬운 파이썬 코드를 원하는가? 기초적인 파이썬 프로그래밍 문법이나 튜토리얼을 끝냈다면, 유능하고 자신감 넘치는 소프트웨어 개발자가 되기 위한 다음 단계는 무엇일까? 노련한 프로그래머의 유쾌한 경험과 진솔한 노하우를 한 권에 담아낸, 현업에서 즉시 적용할 수 있는 파이썬 클린 코드의 모든 것! 파이썬 개발자의 성장과 업그레이드를 위한 실무 프로그래밍 지식 총정리! | 이 책에서 다루는 내용 | - 코딩 스타일을 비롯해, 파이썬의 블랙 자동 포매팅 도구를 활용한 클린 코드 작성법 - 일반적인 버그의 원인 파악과 정적 분석기를 활용한 버그 감지 - 쿠키커터 템플릿 도구로 코드 프로젝트의 파일 구조를 짜는 법 - 람다 등 고차 함수의 함수형 프로그래밍 기법 - 파이썬의 내장 timeit과 cProfile 모듈로 코드 속도 프로파일링 - 주석과 독스트링을 유용한 정보로 만드는 방법 그리고 작성 주기
목차
[1부] 준비 1장 에러 메시지 파악과 고수의 도움을 받기 위한 질문 에티켓 __파이썬 에러 메시지를 읽는 법 ____추적정보 조사 ____에러 메시지 검색 __린터를 활용한 에러 방지 __프로그래밍 조언을 구하는 방법 ____미리 충분한 정보를 제공해 불필요한 커뮤니케이션을 줄이자 ____물음표가 붙은 질문 형식으로 문장을 서술하자 ____적절한 웹사이트를 찾아 질문하자 ____질문을 요약한 표제를 달자 ____코드로 어떤 일을 하고 싶은지를 설명하자 ____전체 에러 메시지를 제공하자 ____전체 코드를 공유하자 ____적절한 포매팅으로 코드를 읽기 쉽게 만들자 ____사람들에게 여러분이 무엇을 시도했는지를 알리자 ____여러분의 설정 사항을 공유하자 __좋은 질문의 예시 __정리 2장 환경 설정과 명령행 사용 방법 __파일시스템 ____파이썬의 경로 ____홈 디렉터리 ____현재 작업 디렉터리 ____절대 경로 vs 상대 경로 __프로그램과 프로세스 __명령행 ____터미널 창 열기 ____명령행에서 프로그램을 실행하는 방법 ____명령행 인수 ____명령행에서 -c 옵션으로 파이썬 코드를 실행하는 방법 ____명령행 프로그램에서 파이썬 프로그램 실행 ____py.exe 프로그램 실행 ____파이썬 프로그램에서 명령어 실행 ____타이핑을 최소화하는 탭 완성 기능 ____명령어 이력 보기 ____필수 명령어 모음 __환경 변수와 PATH ____환경 변수 보기 ____PATH 환경 변수를 이용한 작업 ____명령행의 PATH 환경 변수 바꾸기 ____폴더를 영구적으로 PATH에 추가: 윈도우 환경 ____폴더를 영구적으로 PATH에 추가: 맥OS와 리눅스 환경 __명령행을 쓰지 않고 파이썬 프로그램을 실행하는 방법 ____윈도우 환경 ____맥OS 환경 ____우분투 리눅스 환경 __정리 [2부] 클린 코드를 위한 모범 사례, 도구, 기법 3장 코딩 스타일 정립과 코드 포매팅 자동화 __동료나 협업자의 신뢰를 잃는 이유 __스타일 가이드와 PEP 8 __가로 간격 ____들여쓰기를 위한 공백 문자 사용 ____코드 행 내의 공백 활용 __세로 간격 ____세로 간격의 사용 예 ____세로 간격의 모범 사례 __엄격한 코드 포매터, 블랙 ____블랙 도구 설치 방법 ____명령행에서 블랙을 실행하는 방법 ____코드 특정 부분에 대한 블랙 비활성화 __정리 4장 이해하기 쉬운 이름 __대소문자 표기법 __PEP 8의 명명 규약 __이름의 적정 길이 ____너무 짧은 이름 ____너무 긴 이름 __검색 가능한 이름 짓기 __농담, 말장난, 문화적 참조는 피하자 __내장 이름 덮어쓰기 금지 __역대 최악의 변수명 __정리 5장 코드 악취 감지와 대응 __중복된 코드 __매직 넘버 __주석 처리된 코드와 죽은 코드 __디버깅 출력 __숫자 접미사가 붙은 변수 __그냥 함수나 모듈이어야 하는 클래스 __중첩된 리스트 컴프리헨션 __빈 예외처리 블록과 부실한 에러 메시지 __코드 악취에 관한 잘못된 통념 ____함수 마지막에는 return 문이 하나만 있어야 한다? ____함수에는 try 문이 둘 이상 있으면 안 된다? ____플래그 인수는 나쁘다? ____전역 변수는 나쁘다? ____주석은 불필요하다? __정리 6장 파이썬다운 코드를 작성하는 법 __파이썬의 선(禪) __의미 있는 들여쓰기 __흔히 잘못 사용되는 구문 ____range()보다는 enumerate()를 사용하자 ____open()과 close()보다는 with 문을 사용하자 ____== 대신 is를 써서 None과 비교하자 __문자열 포매팅 ____문자열에 백슬래시가 많은 경우에는 원시 문자열을 사용하자 ____f-문자열을 사용한 문자열 포매팅 __리스트의 얕은 사본 만들기 __파이썬다운 딕셔너리 사용법 ____딕셔너리에서 get()과 setdefault()를 사용하자 ____기본값을 위해 collections.defaultdict를 사용하자 ____switch 문 대신 딕셔너리를 사용하자 __조건식: 파이썬의 '보기 흉한' 3항 연산자 __변수값 작업 ____체이닝 할당과 비교 연산자 ____변수가 여러 값 중 하나인지 여부 확인 __정리 7장 파이썬 세상의 프로그래밍 용어 __각종 용어 정의 ____프로그래밍 언어로서 파이썬 vs 인터프리터로서 파이썬 ____가비지 컬렉션 ____리터럴 ____키워드 ____객체, 값, 인스턴스, 아이디 ____아이템 ____가변 데이터 타입, 불변 데이터 타입 ____인덱스, 키, 해시 ____컨테이너, 시퀀스, 매핑, 집합 타입 ____이중밑줄 메소드, 매직 메소드 ____모듈, 패키지 ____호출가능 객체, 일급 객체 __흔히 혼동되어 사용되는 용어 ____문 vs 표현식 ____블록 vs 절 vs 바디 ____변수 vs 속성 ____함수 vs 메소드 ____반복가능 객체 vs 반복자 ____구문 에러 vs 런타임 에러 vs 의미 에러 ____파라미터 vs 인수 ____타입 강제변환 vs 타입 캐스팅 ____프로퍼티 vs 속성 ____바이트코드 vs 기계어 코드 ____스크립트 vs 프로그램, 스크립트 언어 vs 프로그래밍 언어 ____라이브러리 vs 프레임워크 vs SDK vs 엔진 vs API __정리 __추가 정보 8장 파이썬에서 빠지기 쉬운 함정들 __루프문 진행 중에는 리스트에서 아이템을 추가/삭제하지 말자 __copy.copy()나 copy.deepcopy() 없이 가변 값을 복사하지 말자 __기본 인수에 가변 객체는 사용하지 말자 __문자열을 문자열 연결로 생성하지 말자 __sort()가 알파벳 순으로 정렬하리라 기대하지는 말자 __부동소수가 완벽히 정확할 거라고 가정하지 말자 __부등 연산자 !=를 연달아 쓰지 말자 __단일 아이템 튜플에서는 쉼표를 잊지 말자 __정리 9장 파이썬의 기이한 특징들 __256 is 256은 참이지만 257 is 257은 참이 아닌 이유 __문자열 인터닝 __파이썬의 가짜 증감연산자 __아무것도 없으면 참인 all() __부울값은 정수값이다 __다중 연산자 연달아 쓰기 __파이썬의 antigravity기능 __정리 10장 파이썬다운 함수 만들기 __함수명 __함수 크기의 트레이드오프 __함수 파라미터와 인수 ____기본 인수 ____*와 **를 사용해 함수에 인수 전달하기 ____*를 사용해 가변인수 함수 만들기 ____**를 사용해 가변인수 함수 만들기 ____*와 **로 래퍼 함수 만들기 __함수형 프로그래밍 ____부수효과 ____고차원 함수 ____람다 함수 ____리스트 컴프리헨션을 이용한 매핑과 필터링 __결괏값은 항상 동일한 데이터 타입이어야 한다 __예외 발생시키기 vs 에러 코드 반환하기 __정리 11장 주석과 타입 힌트 __주석 ____주석 스타일 ____인라인 주석 ____설명 주석 ____요약 주석 ____경험 지식을 담은 주석 ____법무 정보를 담은 주석 ____전문적인 주석 ____코드태그와 TODO 주석 ____매직 주석과 소스 파일 인코딩 __독스트링 __타입 힌트 ____정적 분석 도구 사용 ____타입 힌트를 다중 타입으로 설정하기 ____리스트, 딕셔너리 등을 위한 타입 힌트 설정 ____주석을 활용한 타입 힌트 백포팅 __정리 12장 깃을 이용한 코드 관리 기법 __깃 커밋과 리포 __쿠키커터 패키지를 이용한 새로운 파이썬 프로젝트 생성 __깃 설치 ____깃 사용자 이름과 이메일 설정 ____GUI 깃 도구 설치하기 __깃 워크플로 ____깃이 파일 상태를 관리하는 방식 ____파일을 스테이징 상태로 바꿔야 하는 이유 __자신의 컴퓨터에 깃 리포 만들기 ____깃으로 파일을 추가해 관리하기 ____리포의 특정 파일 무시하기 ____변경사항 커밋 ____리포에서 파일 삭제하기 ____리포에서 파일 이름 변경과 이동 __커밋 로그 보기 __기존 변경 내역으로 복구하기 ____커밋되지 않은 로컬 변경사항 취소하기 ____스테이징된 파일을 스테이징 상태에서 해제하기 ____가장 최근 커밋 롤백하기 ____단일 파일을 특정 커밋으로 롤백하기 ____커밋 이력 재작성하기 __깃허브와 git push 명령어 ____기존 저장소를 깃허브에 푸시하기 ____기존 깃허브 리포에서 리포 복제하기 __정리 13장 빅오를 활용한 알고리즘 성능 분석과 개선 __timeit 모듈 __cProfile 프로파일러 __빅오 알고리즘 분석 __빅오 차수 ____책장 정리 사례를 이용한 빅오 차수의 이해 ____최악의 시나리오를 측정하는 빅오 __코드의 빅오 차수를 파악해보자 ____낮은 차수와 계수를 우리가 무시하는 이유 ____빅오 분석 예제 ____일반적인 함수 호출의 빅오 차수 ____한눈에 분석하는 빅오 ____n이 작을 경우 빅오는 의미가 없으며, n은 일반적으로 작다 __정리 14장 실전 프로젝트: 하노이 탑과 사목 게임 __하노이 탑 게임 프로젝트 ____화면 출력 내용 ____소스 코드 ____코드 작성 __사목 게임 프로젝트 ____화면 출력 내용 ____소스 코드 ____코드 작성 __정리 [3부] 파이썬과 객체지향 프로그래밍 15장 틱택토 게임으로 배우는 객체지향 프로그래밍과 클래스 __실세계 비유: 온라인 양식 기입 __클래스에서 객체 생성하기 __WizCoin이라는 간단한 클래스 생성하기 ____메소드, __init__(), self ____속성 ____프라이빗 속성과 프라이빗 메소드 __type() 함수와 __qualname__ 속성 __객체지향 vs 비 객체지향 방식의 프로그램 비교: 틱택토 게임 __실세계를 위한 클래스 설계는 어렵다 __정리 16장 코드 복제는 이제 그만! 상속으로 해결하기 __상속의 작동 방식 ____메소드 오버라이드 ____super() 함수 ____상속보다는 합성을 ____상속의 단점 __isinstance()와 issubclass() 함수 __클래스 메소드 __클래스 속성 __정적 메소드 __클래스와 정적 객체지향 기능을 사용할 때 __객체지향과 관련된 전문 용어들 ____캡슐화 ____다형성 __상속을 사용하지 않아야 할 경우 __다중 상속 __메소드 결정 순서 __정리 17장 파이썬다운 객체지향 프로그래밍 __프로퍼티 ____속성을 프로퍼티로 바꾸기 ____데이터 검증을 위한 setter 사용 ____읽기 전용 프로퍼티 ____프로퍼티를 사용할 시점 __파이썬의 이중밑줄 메소드 ____문자열 표현 이중밑줄 메소드 ____숫자 이중밑줄 메소드 ____거울 숫자 이중밑줄 메소드 ____제자리 바꿔치기 증강 대입 이중밑줄 메소드 ____비교 이중밑줄 메소드 __정리
저자 소개
저자 : 알 스웨이가트
    알 스웨이가트
    시애틀에 거주하는 소프트웨어 개발자이자 기술서 저자다. 프로그래밍 언어 가운데 파이썬을 가장 좋아해서 파이썬용 오픈 소스 모듈을 여럿 개발했다. 직접 집필한 모든 책을 크리에이티브 커먼즈 라이선스하에 웹사이트(https://www.inventwithpython.com/)에서 무료로 읽을 수 있도록 공개해뒀다.

    도서리뷰 (0)
    이 책을 읽고 어떤 느낌을 받으셨나요? 리뷰를 남기고 다른 독자들과 함께 공유해보세요.

    등록된 리뷰가 없습니다

    첫번째 리뷰어가 되어주세요

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

    매장에서 사용할 수 있는 바코드가 있어요!