본문 바로가기

추천 검색어

실시간 인기 검색어

이펙티브 코틀린

안전성, 가독성, 코드 설계, 효율성을 향상시키기 위한 52가지 전략과 기법
인사이트

2022년 02월 15일 출간

종이책 : 2022년 01월 21일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (15.06MB)
ISBN 9788966263417
쪽수 405쪽
지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
교보eBook App 듣기(TTS) 가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 전자책 화면에 표기된 주석 등을 모두 읽어 줍니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
  • '교보 ebook' 앱을 최신 버전으로 설치해야 이용 가능합니다. (Android v3. 0.26, iOS v3.0.09,PC v1.2 버전 이상)

PDF 필기 Android 가능 (iOS예정)
소득공제
소장
정가 : 22,400원

쿠폰적용가 20,160

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 300원

작품소개

이 상품이 속한 분야

실제 개발 사례를 통해 알려주는 코드 품질 향상 전략

이 책은 더 나은 코틀린 개발자가 될 수 있도록 도움을 주는 안내서입니다. 코틀린에 어떤 기능이 있는지, 어떤 표준 라이브러리가 있는지 알고 있다고 코틀린을 강력하고 실용적으로 사용할 수 있는 것은 아닙니다. 코틀린을 제대로 사용하려면, 그 기능을 언제, 어떻게 적절하게 사용해야 하는지 알아야 합니다.
이 책은 많은 사람이 제대로 활용하지 못하고 있는 기능을 간단한 규칙으로 제시하고, 52가지 아이템을 실제 사례를 통해 자세하게 설명합니다. 각각의 아이템은 코틀린의 기본적인 기능부터 인라인 함수, 클래스, DSL, 플랫폼 타입과 같은 고급 주제까지 다루고 있습니다.
이 책을 통해 코틀린의 코드 품질(안전성, 가독성, 코드 설계, 효율성)을 어떻게 향상시킬 수 있는지 배울 수 있을 것입니다. 또한 어떻게 하면 안전성, 가독성, 유지보수성, 성능 면에서 더 나은 코틀린 코드를 작성할 수 있는지 알게 될 것입니다.
1부: 좋은 코드

1장 안정성
아이템 1: 가변성을 제한하라
아이템 2: 변수의 스코프를 최소화하라
아이템 3: 최대한 플랫폼 타입을 사용하지 말라
아이템 4: inferred 타입으로 리턴하지 말라
아이템 5: 예외를 활용해 코드에 제한을 걸어라
아이템 6: 사용자 정의 오류보다는 표준 오류를 사용하라
아이템 7: 결과 부족이 발생할 경우 null과 Failure를 사용하라
아이템 8: 적절하게 null을 처리하라
아이템 9: use를 사용하여 리소스를 닫아라
아이템 10: 단위 테스트를 만들어라

2장 가독성
아이템 11: 가독성을 목표로 설계하라
아이템 12: 연산자 오버로드를 할 때는 의미에 맞게 사용하라
아이템 13: Unit?을 리턴하지 말라
아이템 14: 변수 타입이 명확하게 보이지 않는 경우 확실하게 지정하라
아이템 15: 리시버를 명시적으로 참조하라
아이템 16: 프로퍼티는 동작이 아니라 상태를 나타내야 한다
아이템 17: 이름 있는 아규먼트를 사용하라
아이템 18: 코딩 컨벤션 지켜라

2부: 코드 설계

3장 재사용성
아이템 19: knowledge를 반복하지 말라
아이템 20: 일반적인 알고리즘을 반복해서 구현하지 말라
아이템 21: 일반적인 프로퍼티 패턴은 프로퍼티 위임으로 만들어라
아이템 22: 일반적인 알고리즘을 구현할 때 제네릭을 사용하라
아이템 23: 타입 파라미터의 섀도잉을 피하라
아이템 24: 제네렉 타입과 variance 한정자를 활용하라
아이템 25: 공통 모듈을 추출해서 여러 플랫폼에서 재사용하라

4장 추상화 설계
아이템 26: 함수 내부의 추상화 레벨을 통일하라
아이템 27: 변화로부터 코드를 보호하려면 추상화를 사용하라
아이템 28: API 안정성을 확인하라
아이템 29: 외부 API를 랩(wrap)해서 사용하라
아이템 30: 요소의 가시성을 최소화하라
아이템 31: 문서로 규약을 정의하라
아이템 32: 추상화 규약을 지켜라

5장 객체 생성
아이템 33: 생성자 대신 팩토리 함수를 사용하라
아이템 34: 기본 생성자에 이름 있는 옵션 아규먼트를 사용하라
아이템 35: 복잡한 객체를 생성하기 위한 DSL을 만들어라

6장: 클래스 설계
아이템 36: 상속보다는 컴포지션을 사용하라
아이템 37: 데이터 집합 표현에 data 한정자를 사용하라
아이템 38: 연산 또는 액션을 전달할 때 인터페이스 대신 함수 타입을 사용하라
아이템 39: 태그 클래스보다는 클래스 계층을 사용하라
아이템 40: equals의 규약을 지켜라
아이템 41: hashCode의 규약을 지켜라
아이템 42: compareTo의 규약을 지켜라
아이템 43: API의 필수적이지 않는 부분을 확장 함수로 추출하라
아이템 44: 멤버 확장 함수의 사용을 피하라

3부: 효율성

7장 비용 줄이기
아이템 45: 불필요한 객체 생성을 피하라
아이템 46: 함수 타입 파라미터를 갖는 함수에 inline 한정자를 붙여라
아이템 47: 인라인 클래스의 사용을 고려하라
아이템 48: 더 이상 사용하지 않는 객체의 레퍼런스를 제거하라

8장 효율적인 컬렉션 처리
아이템 49: 하나 이상의 처리 단계를 가진 경우에는 시퀀스를 사용하라
아이템 50: 컬렉션 처리 단계 수를 제한하라
아이템 51: 성능이 중요한 부분에는 기본 자료형 배열을 사용하라
아이템 52: mutable 컬렉션 사용을 고려하라

용어

‘1부: 좋은 코드’에서는 좋은 품질의 코드를 만들기 위한 일반적인 규칙을 설명합니다. 이 부에서는 프로젝트의 규모와 상관없이 모든 코틀린 개발자를 위한 내용을 설명합니다. 안정성에 관한 아이템부터 시작해서 가독성까지 설명합니다. 프로그래밍에서 가장 중요한 것은 안정적으로 정확한 결과를 만들어 내는 것이라고 생각합니다. 따라서 첫 번째 장에서 안정성을 다룹니다. 또한 코드를 읽는 것은 컴파일러만을 위한 것이 아닙니다. 많은 프로그래머가 코드를 읽습니다. 또한 혼자 코드를 작성해도, 코드를 쉽게 읽을 수 있어야 합니다. 따라서 두 번째 장에서 가독성을 다룹니다.
‘2부: 코드 설계’에서는 다른 개발자와 함께 프로젝트를 진행하거나, 라이브러리를 만들 때 활용할 수 있는 내용을 다룹니다. 바로 컨벤션(convention)과 규약(contract)입니다. 물론 컨벤션과 규약은 결국 가독성과 안정성이 반영된 결과입니다. 따라서 추상화와 함께 코드 품질을 향상시킬 수 있는 내용을 추가로 다루는 부라고 생각하면 됩니다. 추가적으로 이 부에서는 코드를 확장시키는 방법과 관련된 내용을 다룹니다. 프로젝트는 오랜 시간 동안 계속해서 발전하게 됩니다. 따라서 대규모 프로젝트를 만들 때 활용할 수 있는 유용한 사례들에 대해서 설명합니다.
‘3부: 효율성’에서는 코드의 효율성과 관련된 부입니다. 대부분의 아이템에서 개발 시간과 가독성을 따로 희생하지 않고 사용할 수 있는 효율성 관련 사례를 다룹니다. 다만 일반적으로 코드의 효율성은 고성능 애플리케이션, 라이브러리, 많은 사람이 사용하는 애플리케이션에서 유용하므로, 이와 관련된 내용도 다룹니다.

작가정보

저자 : 마르친 모스칼라
(Marcin Moskala)
경험이 많은 개발자이자 코틀린 교육자다. 젯브레인과 코틀린 교육에 대한 공식적인 파트너십을 체결하고 있는 Kt. Academy의 창립자다. 《Android Development with Kotlin(코틀린을 이용한 안드로이드 개발)》의 저자이며, 여러 국제 컨퍼런스에서 발표한 경험이 있다. 다수의 라이브러리를 만들었으며, 컨트리뷰터로도 활동하고 있다.

역자 : 윤인성
출근하는 것이 싫어서 책을 집필하기 시작했다. 현재 직업 특성상 집에서 나갈 이유가 별로 없다는 것에 굉장히 만족해하고 있다. 홍차와 커피를 좋아하며, 기타, 가야금, 그림 그리기, 스컬핑 등이 취미다. 저서로는 《자바스크립트 프로그래밍 입문》, 《C# 프로그래밍》, 《혼자 공부하는 파이썬》, 《모던 웹을 위한 HTML5+CSS3 바이블(3판)》, 《모던 웹을 위한 JavaScript+jQuery 입문》, 《모던 웹을 위한 Node.js 프로그래밍》 등이 있으며, 역서로는 《TopCoder 알고리즘 트레이닝》, 《자바 퍼즐러》, 《소셜 코딩으로 이끄는 GitHub 실천 기술》, 《Nature of Code》, 《프로그래밍 대회 공략을 위한 알고리즘과 자료 구조 입문》 등이 있다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다.
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다.
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품/오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    이펙티브 코틀린 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    이펙티브 코틀린 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    • 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    이펙티브 코틀린
    안전성, 가독성, 코드 설계, 효율성을 향상시키기 위한 52가지 전략과 기법
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글북액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글북액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)