신간소개 2024. 12. 3. 14:33

 

  ● 지은이: 정금호

  ● 페이지: 424

  ● 판형: 172 * 225

  ● 도수: 2도

  ● 정가: 27,000원

  ● 발행일: 2024년 12월 12일

  ● ISBN: 979-11-93229-30-9 93000

 

[오탈자 사이트]  [자료실]

[Q&A 사이트 바로가기]

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용

ChatGPT, Tesor.Art, Udio 등의 생성형 AI를 활용하여 게임을 만들고 앱 스토어에 배포까지 따라하며 배울 수 있는 책이다. AI로 게임을 만들기 위해서는 많은 시행착오를 겪어야 하지만, 저자가 먼저 수많은 시도와 실패로 얻은 경험을 책에 녹여냈다. 출간 전에 이 책의 내용으로 2주 간의 특강을 진행하였는데, 10명의 수강생이 자신만의 게임을 만들어 앱을 성공적으로 배포할 수 있었다. 코딩을 잘 모르는 독자도 좋은 아이디어만 있다면 한번 도전하여 멋진 게임을 유료로 배포하는 성공의 기쁨을 맛보길 바란다.

 

_대상 독자

평소에 게임을 만들어보고 싶었던 누구나!

게임 프로그래머가 되기 위해 준비 중이며 경험과 포트폴리오가 필요한 독자!

앱을 만들어 배포하는 방법까지 알고 싶어하는 독자!

생성형 AI를 어디까지 활용할 수 있는지 미치도록 알고 싶은 누구나!

01234567

_목차

 

추천사 

머리말 

 

01. 생성형 AI 소개 

1.1 생성형 AI란 무엇인가 

1.2 생성형 AI 종류 

1.2.1 대규모 언어 모델 

1.2.2 텍스트-이미지 모델 

1.2.3 텍스트-음악 모델 

1.2.4 텍스트-비디오 모델 

1.3 생성형 AI의 현재 

1.4 생성형 AI의 미래와 우리의 자세 

1.5 저작권 이슈 

 

02. 생성형 AI를 이용해서 게임용 이미지 생성하기 

2.1 Tensor.Art 소개 

2.2 적당한 체크포인트, LoRA 선택 및 프롬프트 찾기 

2.3 생성된 이미지를 게임에서 사용할 때의 문제점 

2.3.1 생성된 이미지 후처리 이슈 

2.3.2 일관성 유지 이슈 

2.3.3 군중신 표현의 어려움 

2.3.4 등급 분류의 이슈 

2.3.5 남성 캐릭터 이미지 생성의 어려움 

 

03. 생성형 AI를 이용해서 게임용 BGM 생성하기 

3.1 Udio.com 소개 

3.2 가사가 있는 노래 만들기 

3.3 가사가 없는 BGM 만들기 

 

04. GPT를 이용해서 게임 시나리오 생성하기 

4.1 GPT로 콘텐츠 만들기 

4.2 게임의 캐릭터와 배경 설정하기 

4.3 캐릭터별 이벤트 목록 작성하기 

4.4 이벤트 스크립트 만들기 

4.5 다국어 지원 테스트해보기 

 

05. 생성형 AI를 활용한 게임 프로젝트 사례 소개 

5.1 20년 전에 출시한 게임의 리메이크 버전 개발 

5.1.1 기존 CG를 대체하는 이미지 생성 

5.1.2 새로운 캐릭터 설정 추가 

5.1.3 콘텐츠 강화 

5.1.4 프로그램 리뉴얼 

5.1.5 등급 분류 신속 대응 

5.2 생성형 AI를 활용한 오리지널 게임 개발 

5.2.1 GPT를 활용한 시나리오 작업 

5.2.2 음악 생성형 AI를 이용한 BGM 생성 작업 

5.2.3 새로운 모델 및 LoRA 활용 방법 

5.2.4 앱스토어 검수 이슈 

5.3 개발 중인 게임 프로젝트 소개 

5.3.1 판타지 육성 시뮬레이션 게임 

5.3.2 판타지 연애 시뮬레이션 게임 

5.3.3 일제 강점기 배경 전략 시뮬레이션 게임 

5.3.4 SF 비주얼 노블 게임 

 

06. 생성형 AI를 활용한 게임 프로젝트 진행하기 

6.1 게임 기획 및 시나리오 작업 

6.1.1 게임에 등장하는 캐릭터 설정하기 

6.1.2 게임 배경 설정하기 

6.1.3 게임 이벤트 설정하기 

6.1.4 게임 이벤트 스크립트 생성하기 

6.1.5 게임 이벤트 CG 목록 생성하기 

6.1.6 게임 인트로 및 엔딩 스크립트 생성하기 

6.2 게임 리소스 생성하기 

6.2.1 설정된 캐릭터에 맞는 모델 및 LoRA 선택하기 

6.2.2 캐릭터별 이미지 생성하기 

6.2.3 메인 화면, 아이콘용 이미지 생성하기 

6.2.4 게임 배경 이미지 생성하기 

6.2.5 김프를 이용해서 게임용 이미지 가공하기 

6.2.6 게임용 음악 생성하기 

6.2.7 캐릭터별 이벤트 스크립트 작업하기 

6.2.8 Sqlite로 게임용 데이터베이스 파일 생성하기 

 

07. 게임 프로젝트 프로그래밍하기 

7.1 게임 프로그래밍 하기 

7.1.1 모바일 게임에 대한 이해 

7.1.2 안드로이드 스튜디오 설치 및 실행 

7.1.3 기본 프로그램 예제 불러오기 

7.1.4 기본 프로그램 빌드 및 실행하기 

7.1.5 생성한 게임 리소스를 프로그램에 적용하기 

7.1.6 프로그램 테스트 및 마무리 

 

08. 게임 프로젝트 출시하기 

8.1 게임 출시 준비하기 

8.1.1 출시를 위한 패키지 빌드하기 

8.1.2 게임 출시를 위한 추가 이미지 생성하기 

8.1.3 스크린숏 캡쳐하기 

8.1.4 게임 설명 작성하기 

8.2 게임 출시하기 

8.2.1 앱스토어 계정 만들기 및 로그인 

8.2.2 상품 정보 생성 및 등록하기 

8.2.3 앱스토어 규정에 맞게 추가 정보 등록하기 

8.2.4 빌드된 최종 패키지 업로드하기 

8.2.5 검수 요청하기 

 

09. 생성형 AI를 이용한 게임 개발의 장단점 

9.1 생성형 AI를 이용한 게임 개발의 장점 

9.1.1 높은 생산성 

9.1.2 높은 품질 

9.1.3 단점을 커버하는 물량 공세 

9.1.4 다양한 실험과 시도가 가능 

9.1.5 창고에 쌓아 두었던 기획서들을 다시 꺼내야 할 때 

9.2 생성형 AI를 이용한 게임 개발의 단점 

9.2.1 생성형 AI에 대한 사용자의 거부감 

9.2.2 학습 데이터가 부족한 분야에 대한 제한 

9.2.3 최종 결과물을 얻기 위한 수율이 낮음 

9.2.4 높은 생산성으로 인한 지나친 욕심 

9.2.5 결국 사람의 손으로 해야 하는 마무리 

9.3 생성형 AI를 이용하여 개발한 게임 소개 

 

찾아보기     

 

 

 

주요 내용

 

생성형 AI의 힘을 빌어 게임 개발을 더 쉽고 빠르게!

생성형 AI가 있다면 혼자서 한 달에 하나씩 게임 앱 출시도 거뜬

 

이 책은 생성형 AI를 활용해 게임 개발에서 혼자서는 하기 힘든 시나리오와 캐릭터 선정부터 그리기, 이벤트 및 이벤트 스크립트, 배경 이미지와 음악, 주제가 등을 쉽게 개발하여 게임 개발을 획기적으로 단축할 수 있게끔 해주는 책이다.

저자는 이미 십 년 전에 개발한 게임 두 개를 불과 몇 개월 만에 생성형 AI를 활용하여 재론칭하였고, 이 책의 내용으로 국내에서 2주 특강을 열어, 수강생 10명 이상이 자신의 게임을 5~2주 만에 앱스토어에 출시하고, 저자 자신도 이후 3개월 간 무려 22개의 게임을 출시하는 놀라운 성과를 냈다.

 

_주요 내용

1. 생성형 AI를 활용한 이미지 생성:

게임 개발에 필요한 캐릭터와 배경 이미지 등을 생성하는 방법. 이미지 생성 시 프롬프트 작성 요령과 생성형 AI의 한계, 저작권 문제 설명.

 

2. 게임용 BGM과 음악 생성:

게임 내에서 배경 음악(BGM)이나 주제가를 생성하는 방법. AI 도구를 사용해 다양한 음악을 자동 생성하고 수정하는 과정 수록.

 

3. 게임 시나리오 작성:

GPT를 활용하여 게임 시나리오를 자동 생성하는 방법. 캐릭터의 대사나 이벤트를 구성하는 구체적인 방법과 예시.

 

4. 생성형 AI를 활용한 게임 개발 실전 프로젝트:

게임 시나리오, 이벤트, 이벤트별 스크립트, 캐릭터 및 배경 이미지 개발, 배경음악 및 주제가 작곡, 게임 코드를 깃허브에서 개발 툴로 받아와 AI로 만든 리소스를 활용한 게임 완성하기.

 

5. 게임 개발 마무리 및 앱스토어 출시:

생성형 AI를 통해 제작한 게임을 앱스토어에 등록하는 과정. 게임의 등급 분류, 상품 정보 등록, 마케팅 자료 제작 등 실질적인 운영 방법 제시.

 

_저자 서문 중에서

이미지 생성형 AI를 사용해봄으로써, 예상치 못한 곳에서 내가 오랫동안 풀기 힘들었던 문제에 대한 힌트를 얻게 된 것이다. 그것이 현실적으로 가능한지 테스트해보기 위해서, 20년 전에 만들었던 게임의 리메이크REMAKE 버전을 이미지 생성형 AI를 이용해서 만들어 보기로 결정했다. 그리고 2개월 후인 2023 12 24, 완성된 리메이크 버전을 구글 플레이 스토어와 원스토어에 출시함으로써 그것이 가능하다는 것을 입증할 수 있었다.

24년 전에는 5~6명의 게임 개발팀을 이끌고 3개월에 게임 하나씩 만들어 출시했는데, 지금은 나 혼자서 당시 만들었던 게임보다 더 풍부한 콘텐츠를 가진 게임을 2~3개월에 하나씩 만들 수 있게 된 것이다. 우여곡절이 있기는 했지만 2024 5월말 두 번째 게임도 원스토어에 출시했다.

 

 

_추천글

이 책은 ChatGPT로 게임 시나리오를 만들고, Tensor.Art로 캐릭터를 디자인하며, Udio로 배경음악을 제작하는 전 과정을 담고 있다. 이렇게 하면 잘될 거라고 말하는 성공의 비결을 가르쳐주는 그런 책이 아니라, 새로운 분야에 처음으로 뛰어든 퍼스트 펭귄의 기록 같은 책이다.

게임 시나리오부터 캐릭터와 배경음악까지, 아직 사람이 다닌 흔적도 별로 없고 이정표도 제대로 없는 길을 가면서 겪었던 시행착오의 기록이기도 하다.

저자가 혼자서 생성형 AI로 게임을 만들어 보겠다고 용감하게 뛰어 들고, 개발부터 심의, 출 시까지 모든 과정에서 얻은 실전적인 노하우와 값진 시행착오의 경험들을 이 책을 통해 나누어 주는 것에 감사한다.

이 책을 통해 누구나 AI의 도움을 받아 자신만의 게임을 기획하고, 개발하고, 더 나아가 실제로 출시까지 할 수 있게 되기를 기대한다.

_김성완 - GenAI Korea 운영자, 전 펄어비스 AI 연구원

 

 

_저자 소개

 

지은이 정금호

 

1984년에 애플 Ⅱ+로 컴퓨터 프로그래밍을 시작하였고, 대학교 1학년이었던 1993년부터 PC 통신을 이용하여 여러 가지 공개 소프트웨어와 셰어웨어를 만들어 발표하였다. 1997년부터 다수의 윈도우즈용 상용 게임과 상용 애플리케이션 및 웹 애플리케이션, 임베디드 애플리케이션 등을 개발해왔으며, 2005년부터는 윈도우즈 모바일, 아이폰, 안드로이드용 애플리케이션 및 게임을 직접 개발하거나 모바일 앱 서비스 개발 총괄 등을 맡아왔다.

 2018년부터는 가족들과 함께 독일로 이사했고, 베를린의 글로벌 스타트업에서 풀스택 개발자로 일하였으며, 현재는 인공지능 스타트업에서 일하고 있다. 2023 10월부터 생성형 AI를 이용하여 22개 이상의 게임을 개발해서 구글 플레이 스토어와 원스토어에 출시했다. 

저서로는 『이것이 진짜 안드로이드 프로그래밍이다』, 『스마트 TV 애플리케이션 프로그래밍』(2014), 『벤츠 타는 프로그래머』(2013), 『실전 아이폰 프로그래밍』, 『실전 안드로이드 프로그래밍』(2011), 『애플리케이션 개발자, 윈도 모바일 매력에 빠지다』(2010)가 있다.4o

 

_상세 이미지

 

                                                                                                _

posted by 로드북
:
신간소개 2024. 4. 16. 11:54

 

  ● 지은이: 홍준혁

  ● 페이지: 412

  ● 판형: 188 * 257

  ● 도수: 2도

  ● 정가: 30,000원

  ● 발행일: 2024년 4월 12일

  ● ISBN: 979-11-93229-28-6 93000

 

[오탈자 사이트 [자료실] [강의교안 신청하기]

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용

만들면서 리액트를 빠르게 배울 수 있는 책입니다. ‘쇼핑몰 서비스를 만들어볼 주제로 택한 이유는 쇼핑몰의 CRUD(상품 등록, 조회, 수정, 삭제) 기능 구현을 통해 다른 주제로 쉽게 확장할 수 있기 때문입니다. 순수 리액트로만 쇼핑몰을 개발하며 서버는 다른 기능 없이 데이터만 주고받을 수 있게끔 최소한의 기능만 제공하고 있습니다. 이 책으로 프론트엔드 개발을 재밌고 빠르게 배울 수 있기를 바랍니다.

 

_대상 독자

1. 리액트 기본은 떼었는데, 다음 단계의 실습을 원하는 독자

2. 회사에서 다음 프로젝트에 리액트를 써야 하는데, 빠르게 기술 습득을 해야 하는 독자

 

_목차

 

지은이의 말

기획자의 말

일러두기

 

1장 쇼핑몰 서비스 완성본 미리보기

1.1 VSCode 설치하기

1.2 패키지 매니저 이해하기

1.3.1 패키지를 초기화하고 종속성 추가하기

1.3 Yarn 사용하기

1.3.2 패키지 업데이트하기

1.4.1 깃 설치

1.4 깃 이해하고 사용하기

1.4.2 깃 명령어

1.5 깃허브로 쇼핑몰 앱 접속하기

1.6 완성본 프로젝트 살펴보기

1.7 완성된 쇼핑몰 앱 둘러보기

 

2장 프로젝트 준비하기

2.1 간단한 리액트 프로젝트 만들기

2.2 모듈 분리해서 보기

2.3 Create-React-App 프로젝트 설정하기

2.4 API 서버 설정하기

2.5 클라이언트 사이드 렌더링

2.6 API 서버 테스트하기

 

[함께 해봐요 2-1] 기본적인 HTML 페이지 만들기  

[함께 해봐요 2-2] React ReactDOM CDN으로 불러오는 HTML 파일  

[함께 해봐요 2-3] 리액트 코드 작성하기  

[함께 해봐요 2-4] 바벨로 변경한 전체 HTML 파일  

[함께 해봐요 2-5] 루트 디렉터리에 App.js 파일 만들기  

[함께 해봐요 2-6] App.js를 불러오는 index.html 

[함께 해봐요 2-7] A.js B.js를 불러오는 index.html 

[함께 해봐요 2-8] 모듈을 분리하기 위한 App.js 만들기 

[함께 해봐요 2-9] 기본으로 제공되는 App.tsx 수정하기 

[함께 해봐요 2-10] App 컴포넌트를 사용하기 위한 index.tsx 수정하기

[함께 해봐요 2-11] index.html 수정하기 

 

3장 리액트는 어떻게 동작하는가

3.1 웹 서비스의 전반적인 흐름

3.2 컴포넌트를 알아보자(with JSX)

3.3 Props: 컴포넌트 간 데이터 전달을 위한 객체

3.4 리액트 앱의 렌더링 방식(with State)

3.5 훅 개념과 활용법

 

[함께 해봐요 3-1] 데이터 흐름을 파악하기 위한 리액트 App 컴포넌트  

[함께 해봐요 3-2] 가상 DOM을 사용하는 이유를 알아보기 위해 App 컴포넌트 수정하기 

 

더보기

4장 쇼핑몰 기본 구조 만들어보기

4.1 요구사항 살펴보기

4.2 상품 목록 렌더링하기

4.3 상품 추가하기

4.4 상품 목록 삭제하기

4.5 상품 목록 수정하기

4.6 React-Router-Dom 설정하기

4.7 상품 상세 페이지 나누기

4.8 Context API 설정하기

4.9 동기와 비동기 이해하기

4.10 API 서버에서 상품 목록 가져오기

4.11 상품 상세 데이터 가져오기

4.12 상품 수정과 삭제 요청하기

 

[함께 해봐요 4-1] interface 키워드로 ProdutType을 만들고 products 변수 선언하기 

[함께 해봐요 4-2] products 변수의 초깃값으로 가짜 데이터 입력하기 

[함께 해봐요 4-3] products 상태를 화면에 표시하기(오류 버전) 

[함께 해봐요 4-4] products 상태를 화면에 표시하기(오류 수정 버전) 

[함께 해봐요 4-5] products 상태를 화면에 표시하기(map 메서드 사용하기) 

[함께 해봐요 4-6] products 상태를 화면에 표시하기(경고 문구 해결하기) 

[함께 해봐요 4-7] 상품 목록을 렌더링하는 최종 App.js 코드 

[함께 해봐요 4-8] 상품 추가하기를 위한 form 작성하기 

[함께 해봐요 4-9] ‘상품 추가하기를 위한 form 작성하기(수정 버전) 

[함께 해봐요 4-10] 상태변경함수(useState)를 활용하여 데이터를 다시 선언하기 

[함께 해봐요 4-11] 상품 데이터를 변경시키고 활용하기(onChange 속성) 

[함께 해봐요 4-12] 상품 데이터를 변경시키고 활용하기(onChange 이벤트 핸들러 사용하기) 

[함께 해봐요 4-13] 상품 데이터를 products state에 추가하기(타입 오류 버전) 

[함께 해봐요 4-14] 상품 데이터를 products state에 추가하기(두 번째 상품 데이터 추가부터 오류 발생 버전) 

[함께 해봐요 4-15] 상품 데이터를 products state에 추가하기(useRef 함수를 활용한 오류 수정 버전) 

[함께 해봐요 4-16] 상품 추가하기 최종 소스 

[함께 해봐요 4-17] 상품 렌더링 로직 수정하기(product를 분해하여 단일 속성값으로 접근할 수 있게 수정)

[함께 해봐요 4-18] [삭제하기] 버튼의 onClick 함수 작성하기

[함께 해봐요 4-19] [수정하기] 버튼 렌더링하기

[함께 해봐요 4-20] 컴포넌트를 분리하여 내부 상태를 선언 가능한 형태로 작성하기(ProductItem 컴포넌트 만들기)

[함께 해봐요 4-21] 컴포넌트를 분리한 후 기존 로직이 동작하지 않는 문제 수정하기(onDelete 함수로 행동 위임하기)

[함께 해봐요 4-22] isEditMode true일 때 조건부 Form 렌더링으로 수정하기

[함께 해봐요 4-23] 상품 수정 form에서 작성한 상품 정보를 객체로 전달하는 방식으로 수정하기

[함께 해봐요 4-24] 상품 정보 수정이 완료되도록 App 컴포넌트의 handleUpdate 함수 수정하기

[함께 해봐요 4-25] 상품 목록 수정하기 최종 코드

[함께 해봐요 4-26] index.tsx에서 BrowserRouter 컴포넌트로 App 컴포넌트 감싸주기

[함께 해봐요 4-27] HomePage.tsx를 만들고 App.tsx에서 소스 복사하기

[함께 해봐요 4-28] index.ts를 만들고 HomPage 컴포넌트 내보내기

[함께 해봐요 4-29] App.tsx 컴포넌트 수정하기

[함께 해봐요 4-30] 상품 상세 페이지 만들기(ProductPage.tsx)

[함께 해봐요 4-31] index.ts를 통해 내보내기

[함께 해봐요 4-32] App.tsx에 상세 페이지 추가하기

[함께 해봐요 4-33] path 속성을 알아보기 위해 상세 페이지 수정하기

[함께 해봐요 4-34] 데이터를 담을 수 있는 공간으로 Context 만들기(ProductContext.tsx)

[함께 해봐요 4-35] 하위 컴포넌트에 데이터 전송을 위한 Provider 정의하기

[함께 해봐요 4-36] 데이터 사용을 위해 Consumer를 선언하고, useContext 함수로 접근하기

[함께 해봐요 4-37] Context를 적용한 최종 코드

[함께 해봐요 4-38] 작성한 Context 사용하기(ProductPage.tsx 수정)

[함께 해봐요 4-39] 작성한 Context 사용해보기 2(index.tsx 수정)

[함께 해봐요 4-40] URL 매개변수 id 값을 받아 상품 정보를 보여주는 로직(ProductPage.tsx 수정)

[함께 해봐요 4-41] URL 매개변수 id 값을 받아 상품 정보를 보여주는 로직(undefined 시에 UX를 고려한 문자열 추가)

[함께 해봐요 4-42] 메인 페이지에서 상품 상세 페이지로 이동하기

[함께 해봐요 4-43] 상품을 새로 추가하고 해당 상품으로 이동할 때 아무런 결과 값이 나타나지 않는 현상 해결하기(타입 오류 발생)

[함께 해봐요 4-44] 상품을 새로 추가하고 해당 상품으로 이동할 때 아무런 결과 값이 나타나지 않는 현상 해결하기(타입 오류 수정)

[함께 해봐요 4-45] 메인 페이지의 product Context로 구현하기 1(HomePage.tsx 수정하기)

[함께 해봐요 4-46] 메인 페이지의 product Context로 구현하기 2(ProductPage.tsx 수정하기)

[함께 해봐요 4-47] fetch 함수로 상품 목록 데이터 가져오기(HomePage.tsx)

[함께 해봐요 4-48] 프록시 서버 설정하기(client/package.json 수정하기)

[함께 해봐요 4-49] 동기화 작업을 위한 fetch 함수 수정하기

[함께 해봐요 4-50] 필요 없게 된 기존의 Context 제거하기 1(index.ts에서 ProductProvider 제거하기)

[함께 해봐요 4-51] 필요 없게 된 기존의 컨텍스트 제거하기 2(Homepage.tsx에서 product 설정 코드 변경하기)

[함께 해봐요 4-52] 상품 상세 데이터 가져오기(ProductPage.tsx 수정하기)

[함께 해봐요 4-53] 상품 추가하기(Homepage.tsx handleCreate 함수 수정하기)

[함께 해봐요 4-54] 상품 삭제하기(Homepage.tsx handleDelete 함수 수정하기)

[함께 해봐요 4-55] 상품 수정하기(Homepage.tsx handleUpdate 함수 수정하기)

 

5장 쇼핑몰 설계를 어떻게 하면 좋을까(feat. 좋은 아키텍처란)

5.1 리액트 컴포넌트, 꼭 나눠야 할까

5.2 데이터를 기반으로 컴포넌트 분리하기

5.3 역할 중심으로 컴포넌트 분리하기

5.4 전체 구조는 어떻게 짤까

5.5 지금까지의 구조를 수정하자

 

[함께 살펴봐요 5-1] Cart에서 데이터를 분리하기 전의 코드(단순 예시 코드) 

[함께 살펴봐요 5-2] 데이터 기반으로 컴포넌트 분리하기(단순 예시 코드)

[함께 살펴봐요 5-3] 역할 중심으로 컴포넌트 분리하기 1(단순 예시 코드)

[함께 살펴봐요 5-4] 역할 중심으로 컴포넌트 분리하기 2(단순 예시 코드)

[함께 살펴봐요 5-5] Cart 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-6] CartList 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-7] CarItem 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-8] CartIncreaseButton 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-9] CartDecreaseButton 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-10] CartDeleteButton 컴포넌트 구현(단순 예시 코드)

[함께 살펴봐요 5-11] 분리하기 전 HomePage 코드

 

[함께 해봐요 5-1]  HomePage에서 ProductList를 분리해서 구현하기  

[함께 해봐요 5-2] 타입을 한 번에 모아서 관리하는 폴더를 만들고 불러오기(types 폴더와 index.ts) 

[함께 해봐요 5-3] 타입 별칭들도 모듈처럼 지정하기(ProductItem이 정의되어 있지 않은 상태) 

[함께 해봐요 5-4] ProductItem 컴포넌트 분리하기 

[함께 해봐요 5-5] index.ts를 통해 내보내기  

[함께 해봐요 5-6] ProductList 컴포넌트에서 ProductItem 불러오기  

[함께 해봐요 5-7] 분리된 컴포넌트 기반으로 HomePage 수정하기  

[함께 해봐요 5-8] ProductCreateForm 작성하기  

[함께 해봐요 5-9] ProductCreateForm 내보내기  

[함께 해봐요 5-10] ProductCreatePage 작성하기  

[함께 해봐요 5-11] index.ts를 통해 내보내기  

[함께 해봐요 5-12] Page 컴포넌트를 Route에 추가하기(App.tsx 수정)  

 

6 MUI UI 컴포넌트를 활용하여 쇼핑몰 개선하기

6.1 MUI 도입하기

6.2 CSS 정규화

6.3 MUI 그리드

6.4 레이아웃 구현하기

6.5 로딩 기능 추가하기

6.6 상품 생성 컴포넌트를 MUI로 마이그레이션하기

6.7 API를 이용한 섬네일 업로드 구현하기

6.8 섬네일이 나오지 않는 문제를 수정하기

6.9 상품 목록을 MUI로 마이그레이션하기

6.10 상품 아이템을 MUI로 마이그레이션하기

6.11 상품 상세보기 페이지를 MUI로 마이그레이션하기

6.12 구매 페이지 구현하기

6.13 상품 구매 모달 구현하기

6.14 상품 생성 모달 구현하기

6.15 장바구니 페이지 구현하기

6.16 404 페이지 구현하기

 

[함께 해봐요 6-1] MUI 테스트 예제 준비

[함께 해봐요 6-2] MUI 테스트: 스타일이 입혀진 버튼

[함께 해봐요 6-3] 옵션을 활용하여 다양한 버튼의 모양으로 렌더링 해보기

[함께 해봐요 6-4] MUI를 전역 공간에서 실행하기

[함께 해봐요 6-5] 그리드 컴포넌트 활용 예제

[함께 해봐요 6-6] 웹의 기초적인 구조를 그리드로 만들어보는 예제

[함께 해봐요 6-7] 테스트용으로 변경했던 앱 컴포넌트를 원래대로 되돌리기

[함께 해봐요 6-8] 레이아웃 작성하기(Layout.tsx)

[함께 해봐요 6-9] Layout 컴포넌트 내보내기(index.ts)

[함께 해봐요 6-10] Layout 컴포넌트를 App 컴퍼넌트 상단에 모두 묶기

[함께 해봐요 6-11] 각 버튼에 이벤트 핸들러를 연결하여 페이지를 이동하는 로직 추가하기

[함께 해봐요 6-12] HomePage에서 임시로 해당 컴포넌트 불러오기

[함께 해봐요 6-13] HomePage 컴포넌트 원상복구

[함께 해봐요 6-14] 로딩이 true, false에 따라 달라지는 렌더링 구현하기

[함께 해봐요 6-15] CreateIcon을 불러와서 Layout [추가하기] 버튼 바꾸기

[함께 해봐요 6-16] 쇼핑몰다운 UI로 수정하기(ProductCreateForm.tsx)

[함께 해봐요 6-17] 섬네일 업로더 컴포넌트 구현하기 1(ThumbnailUploader.tsx)

[함께 해봐요 6-18] 섬네일 업로더 컴포넌트 구현하기 2(ThumbnailUploader.tsx)

[함께 해봐요 6-19] ThumbnailUploader 컴포넌트 내보내기

[함께 해봐요 6-20] ProductCreateForm 수정하기

[함께 해봐요 6-21] ThumbnailUploader 컴포넌트에서 input hidden 속성 부여하기

[함께 해봐요 6-22] 섬네일 업로더 컴포넌트 구현하기 3(ThumbnailUploader.tsx)

[함께 해봐요 6-23] 파일 선택 후 섬네일을 화면에서 임시로 렌더링하는 로직(ThumbnailUploader.tsx)

[함께 해봐요 6-24] 2단계 섬네일 요청 구현하기(ProductCreateForm.tsx)

[함께 해봐요 6-25] thumbnail 속성 추가에 따른 ProductType  업데이트

[함께 해봐요 6-26] thumbnail 속성 추가에 따른 ProductItem  업데이트

[함께 해봐요 6-27] 상품 목록 디자인 1: Grid 컴포넌트로 ProductItem 묶어주기(ProductList.tsx)

[함께 해봐요 6-28] 상품 목록 디자인 2: Grid 컴포넌트로 ProductItem 묶어주기(ProductItem.tsx)

[함께 해봐요 6-29] 상품 아이템에 스타일 지정하기(ProductItem.tsx)

[함께 해봐요 6-30] 오류 제거를 위한 ProductList 컴포넌트 수정하기

[함께 해봐요 6-31] App.tsx에서 상품 상세 페이지 주소 수정하기

[함께 해봐요 6-32] ProductPage UI 수정하기

[함께 해봐요 6-33] 구매 페이지 구현하기(PurchasePage.tsx)

[함께 해봐요 6-34] PurchasePage 컴포넌트 내보내기

[함께 해봐요 6-35] PurchasePage Router와 연결하기

[함께 해봐요 6-36] form 코드를 별도 컴포넌트로 분리하기(PurchaseForm.tsx)

[함께 해봐요 6-37] PurchaseForm 컴포넌트 내보내기

[함께 해봐요 6-38] PurchasePage 수정하기

[함께 해봐요 6-39] createProductId isModalOpen 상태를 함께 구현한 코드

[함께 해봐요 6-40] handlePushProductPage에 대한 구현 코드

[함께 해봐요 6-41] 장바구니 페이지 만들기(CartPage.tsx)

[함께 해봐요 6-42] 장바구니 페이지 내보내기

[함께 해봐요 6-43] 장바구니 페이지 꾸미기

[함께 해봐요 6-44] 장바구니 페이지를 Router에 연결하기

[함께 해봐요 6-45] [장바구니 담기] 버튼을 클릭하면 쿠키에 상품값을 추가하는 로직 작성하기

[함께 해봐요 6-46] MUI를 이용하여 장바구니 페이지 스타일 꾸미기(CartPage.tsx)

[함께 해봐요 6-47] 장바구니 아이템 컴포넌트 코드를 작성하고 장바구니 페이지 완성하기

[함께 해봐요 6-48] CartItem 컴포넌트 내보내기

[함께 해봐요 6-49] 장바구니 페이지(CartPage)의 최종 코드

[함께 해봐요 6-50] 404 페이지 만들기(NotFoundPage.tsx)

[함께 해봐요 6-51] 404 페이지 만들기 컴포넌트 내보내기

[함께 해봐요 6-52] 404 페이지를 와일드카드에 연결하기(App.tsx)

[함께 살펴봐요 6-1] 기존에 구현한 ProductPage

[함께 살펴봐요 6-2] <Route> 컴포넌트 동작 예시

 

 

7장 코드 리뷰: 개선점 찾기와 더 나은 서비스 만들기

7.1 장바구니 관련 쿠키 정보를 쉽게 관리하기 위한 훅 만들기

7.2 ID 기반으로 변경해서 쿠키 용량 문제 해결하기

7.3 장바구니가 중복되는 현상 막기

7.4 HTTP 요청 부분을 Axios로 변경하기

7.5 useAsync 함수 만들기

7.6 concurrently를 사용하여 클라이언트와 서버를 동시에 실행하기

 

[함께 해봐요 7-1] 쿠키를 재활용하는 훅 만들기(useCart.ts) 

[함께 해봐요 7-2] 만든 훅 내보내기 

[함께 해봐요 7-3] 훅을 활용하기 위해 상품 페이지 수정하기(ProductPage.tsx) 

[함께 해봐요 7-4] 훅을 활용하기 위해 장바구니 페이지 수정하기(CartPage.ts) 

[생각 해봐요 7-1] useCart 훅에서 ID 기반 상품 로직으로 저장 방식을 수정하기

[함께 해봐요 7-5] productIds 변숫값 지정하기 

[함께 해봐요 7-6] 장바구니 정보를 가져오기 위한 코드 작성하기 

[함께 해봐요 7-7] useCart 훅을 다른 코드에 반영하기(ProductPage.tsx) 

[함께 해봐요 7-8] useCart 훅을 다른 코드에 반영하기(CartPage.tsx) 

[함께 해봐요 7-9] 장바구니에서 중복되는 현상 막기 코드(useCart 수정 코드) 

[함께 해봐요 7-10] useCart를 사용하는 컴포넌트 수정하기(CartPage.tsx) 

[함께 해봐요 7-11] API를 한곳에 묶어서 관리하기 

[함께 해봐요 7-12] API를 한곳에 묶어서 관리하기(Axios를 활용한 버전) 

[함께 해봐요 7-13] API를 한 곳에 묶어서 관리하기(Axios를 활용한 버전) - ProductPage 수정하기 

[함께 해봐요 7-14] API를 한 곳에 묶어서 관리하기 (Axios를 활용한 버전) - PurchasePage 수정하기 

[함께 해봐요 7-15] API를 한 곳에 묶어서 관리하기(Axios를 활용한 버전) - ProductList 수정하기 

[함께 해봐요 7-16] API를 한 곳에 묶어서 관리하기(Axios를 활용한 버전) - ProductCreateForm 수정하기   

[함께 해봐요 7-17] API를 한 곳에 묶어서 관리하기(Axios를 활용한 버전) - useCart 함수 수정하기 

[함께 해봐요 7-18] useAsync 훅 만들기 

[함께 해봐요 7-19] 기존의 레거시 코드를 useAsync로 적용하기(ProductList.tsx 수정) 

[함께 해봐요 7-20] 상품 데이터를 가져오는 부분에 useAsync 도입할 때 수정/삭제 시 문제 해결하기 

[함께 해봐요 7-21] 상품 페이지에 useAsync 적용하기 

[함께 해봐요 7-22] 섬네일 업로드를 위해 useAsync 수정하기

[함께 해봐요 7-23] ProductCreateForm 수정하기

[함께 해봐요 7-24] PurchasePage 수정하기

 

[함께 살펴봐요 7-1] 장바구니에서 중복되는 현상 막기 코드(useCart의 기존 코드)

[함께 살펴봐요 7-2] 확장성을 위한 action 객체 사용

[함께 살펴봐요 7-3] useAsync 훅 살펴보기

 

에필로그

찾아보기

 

 

_주요 내용

 

만들어 보고!

수정하고!

응용하여 확장하기!

 

가장 빠른 코딩 학습 방법입니다.

당장 몇 주 후에 리액트 프로젝트를 시작해야 한다면, 클론 코딩을 해보는 게 가장 빠른 학습 방법입니다. 이 책은 클론 코딩의 주제로 쇼핑몰 서비스를 제시합니다. 쇼핑몰의 CRUD 기능이야말로 거의 모든 서비스에 응용할 수 있는 가장 보편적이기 때문입니다.

또한 리액트로만 클라이언트를 구현하기 때문에 웬만한 리액트 기능은 모두 학습해볼 수 있는 장점이 있습니다. 완성된 쇼핑몰을 먼저 실행해봄으로써 학습 동기 부여를 해주고, 이후에 단계별로 간단한 텍스트 표현부터 차근차근 만들어 가기 때문에 초보자도 쉽게 따라하며 배울 수 있습니다.

 

 

[프로젝트 개발 환경]

1. 운영체제: Mac OS, Windows10

2. 통합개발환경(IDE): VSCode
3.
사용 언어: 타입스크립트

4. 클라이언트 프레임워크: 리액트

5. 서버: 깃허브에서 API 서버 코드 기본 제공 (설정 방법은 책에서 자세히 설명합니다)

6. UI: MUI 컴포넌트

7. 패키지 매니저: Yarn

8. 버전 관리:

9. Node 버전 : 18.17.0

 

[저자 에필로그 중에서]

이 책에서는 작은 쇼핑몰 서비스를 예로 들었지만 결국 여러분이 만들 거의 모든 서비스는 책에서 제시한 쇼핑몰의 CRUD 구조와 유사합니다. 거기에서 얼마나 고도화하였는지의 차이지 큰 틀은 바뀌지 않습니다. 하지만 클론 코딩은 여러분의 실력을 크게 늘려주지는 않습니다. 따라하며 쓴 코드를 이해하고 여러분만의 독자적인 프로젝트를 개발하여 여러분의 것으로 만들어 보는 데까지 꼭 나아가야 진짜 실력있는 개발자가 될 수 있다는 걸 명심하길 바랍니다.

 

[베타테스터겸 기획자 소감글 중에서]

변경사항을 저장하지 않고 실행하다가 왜 안 되지? 하며 하루를 꼬박 날려버린 적도 있었고, 리액트 앱을 껐다가 다시 실행해야 되는데, 책에 표시되지 않아 한참을 헤맨 후에 책 내용에 포함하게 되는 경우도 있었습니다. 이렇게 하다 보니 사소한 소스 오타는 금방 찾아낼 수 있게 된 것 같습니다. 그리고 오류가 났을 때 뒤로 갈수록 오류 메시지가 비슷한 경우가 많아 쉽게 해결해서 찾았던 것 같습니다. 사실, 기획자가 잘못한 경우가 훨씬 많았지만요.

개발 능력이 없은 기획자도 처음부터 끝까지 따라해보며 책을 학습했는데, 여러분은 저보다 충분히 더 잘 해낼 수 있을 겁니다.

 

예제 소스는 깃허브에서 별도로 제공됩니다.

https://github.com/Hong-JunHyeok/shopping_app_example

 

카페에서 저자와 소통하며 공부하세요

https://cafe.naver.com/codefirst

 

 

_저자 소개

홍준혁

안녕하세요 웹 프론트엔드 개발자 홍준혁입니다.

예전부터 코딩이라는 기술로 나만의 상상을 구현하는 것에 관심이 많았습니다. 그 때문인지 지금은 웹 프론트엔드 개발자로 일하고 있습니다.

현재는 웹에만 종속되는 것보다 다양한 플랫폼으로 구현하는 것(, 윈도우 등)에 관심이 있으며 주력으로 하고 있는 언어는 JavaScript입니다.
개발을 하면서 어려움이 있는 주변 사람들에게 알려주는 것을 즐기는 편이고 내가 알려준 것을 기반으로 좋은 프로젝트가 나왔을 때 성취감을 느낍니다.

이번 기회에 집필한 책에서도 그러한 효과가 있으면 저자로서 너무 행복할 것입니다. 책에서 다 담지 못한 정보들이 궁금한 경우나 필자와 얘기해보고 싶은 주제가 있다면 언제는 백견불여일타 독자 카페를 이용해주시기 바랍니다.

 

 

_상세 이미지

 

 _

 

posted by 로드북
:
신간소개 2023. 11. 6. 14:58

  ● 지은이: 이재용

  ● 페이지: 608

  ● 판형: 152 * 223

  ● 도수: 2도

  ● 정가: 25,000원

  ● 발행일: 2023년 11월 10일

  ● ISBN: 979-11-93229-03-3 93000

 

[오탈자 사이트 [자료실] 

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

 

_도서 내용

개발을 한번 선택하면 은퇴할 때까지 해야 할지도 모릅니다. 정말 길고 긴 여행이 될지도 모르는데, 나침반과 지도 같은 가이드가 필요하지 않을까요? 이 책은 저자의 경험을 바탕으로 개발이라는 긴 여행을 하면서 필요한 여행 정보를 두루두루 실은 기술 여행 가이드입니다. 두렵기도 하고 설레기도 한 개발 여정에 오래오래 함께하는 책이 될 수 있도록 만들었습니다. 높은 곳에서 넓게 바라볼 때 시야가 트이고 가야 할 길도 또렷하게 잘 보이는 법을 생각하며 만든 책입니다. 기술과 교양을 넘나들며 누구나 쉽게 읽을 수 있게 만들었습니다.

 

_대상 독자

개발자가 되기 위해 코딩만 열심히 하고 있는데, 내가 잘하고 있는 건지 모르겠다. 배워야 할 게 너무 많아 항상 불안하다.”

개발자가 된 지 이제 불과 1년도 안 됐는데, 밤낮으로 프로젝트에 파묻혀 살다 보니 단순 코딩 머신이 되어 가는 느낌이다. 높은 곳에서 내가 있는 위치를 한번 확인해보고 싶다.”

 

 

_목차

 

저자 서문

 

1 | 코드 이야기

 

1_좋은 코드를 위한 고민

코드의 본질

좋은 코드를 위한 은유

좋은 코드를 위한 추상화

관심사의 분리

1장을 마치며

 

2_안전한 코드를 위해서

버그와 장애

테스트 자동화

테스트 가능한 코드

테스트 환경

포스트 모텀

2장을 마치며

 

3_코드 속 버그 잡아내기

동전의 양면과 같은 코딩과 디버깅

기상천외한 버그들

탐정이 될 시간

기본적인 디버깅 기술

그래도 안 풀려요!

3장을 마치며

 

4_코드에도 패턴이 있다

건축학 개론

소프트웨어에서의 패턴

패턴의 발견

패턴이 유용한 이유

패턴의 유혹

4장을 마치며

 

5_, 나는 네가 지난여름에 짠 코드를 알고 있다

버전을 관리해야 하는 이유

버전 관리 시스템의 역사

깃을 만든 리누스 토발즈

커밋 메시지 잘 작성하기

하나의 변경은 하나의 커밋으로

커밋으로 협업하기

5장을 마치며

 

6_여전히 성장 중인 자바

다재다능한 자바

자바의 탄생

자바와 JVM

자바를 싫어하는 사람들

객체 지향 패러다임

6장을 마치며

 

7_간결한 코드를 위한 파이썬

파이썬의 탄생

파이썬의 생산성

파이썬 vs.

Pythonic하게 코드를 짜세요

7장을 마치며

 

8_구글이 만든 프로그래밍 언어, Go

Go의 탄생

Go가 해결하고자 했던 문제

동시성 프로그래밍의 어려움

Go의 동시성 프로그래밍

경량 스레드, 고루틴

Go의 오류 처리

8장을 마치며

 

2 | 환경 이야기

 

9_서버 환경의 변화

정적 링크와 동적 링크

패키지 관리자

설치 문서

프로비저닝 도구

컨테이너의 시대

새로운 시대의 운영체제, 쿠버네티스

9장을 마치며

 

10_클라우드로의 여정

전산실에서 IDC

IDC에서 클라우드로

IaaS, PaaS, SaaS

클라우드 전환기

클라우드 네이티브의 특징

10장을 마치며

 

11_태생의 한계에 도전하는 웹 이야기

웹의 탄생

정적인 웹에서 동적인 웹으로

Ajax의 등장

또 하나의 자바스크립트

jQuery의 군림

새로운 자바스크립트 프레임워크의 등장

싱글 페이지 애플리케이션

서버 측 랜더링이 포함된 SPA

11장을 마치며

 

12_데이터베이스: 초기부터 오늘날까지

데이터가 사는 곳: 메모리와 디스크

데이터베이스의 등장

관계형 데이터베이스의 저력

관계형 데이터베이스의 한계

새로운 데이터베이스를 위한 시도: NoSQL

12장을 마치며

 

더보기

13_웹 서비스를 위한 아키텍처 성장기

최초의 애플리케이션

애플리케이션 서버의 확장

데이터베이스 서버의 확장

캐시

HTTP 캐시

애플리케이션 캐시

CDN을 이용한 캐시

13장을 마치며

 

14_모니터링으로 꿰뚫어보기

베일에 감춰진 코드의 동작

시스템 관리자의 모니터링

모니터링 데이터: 메트릭

모니터링 데이터: 로그

데이터 시각화

24/7 모니터링을 위한 알림 창

이상치 탐지

14장을 마치며

 

15_코드는 파이프라인을 타고

소프트웨어 배포

배포의 고통

지속적인 배포를 위해

간단한지속적인 배포맛보기

GitOps

무중단 배포

15장을 마치며

 

16_마이크로서비스

서브 루틴의 진화

마이크로서비스의 출현

마이크로서비스의 한계

마이크로서비스 간의 통신

마이크로서비스로의 전환

장애 전파

SRE: Site Reliability Engineering

16장을 마치며

 

17_데이터 포맷

네트워크 너머로 데이터 보내기

0 1로 표현하기

비트들을 그대로 저장할 수 없는 이유

직렬화

17장을 마치며

 

3 | 개발자 이야기

 

18_프로그래밍에 대한 열정

재미있고 어렵다

프로그래밍을 향한 동기

결과물 파 vs 순수 코드 파

몰입의 즐거움

18장을 마치며

 

19_더 나은 개발자로 성장하기

성장 가능성

무엇을 먼저 공부해야 하나

개발자의 자질

좋은 개발자의 모습

끊임없는 학습

안전지대 벗어나기

나보다 나은 개발자 만나기

기술 블로그 만들기

토이 프로젝트 및 스터디

19장을 마치며

 

20_더 나은 팀 문화를 위하여

개발팀의 문화

업무 환경의 변화

비동기 의사소통

문서화의 중요성

모두의 코드를 위한 리뷰

20장을 마치며

 

19_더 나은 개발자로 성장하기

성장 가능성

무엇을 먼저 공부해야 하나

개발자의 자질

좋은 개발자의 모습

끊임없는 학습

안전지대 벗어나기

나보다 나은 개발자 만나기

기술 블로그 만들기

토이 프로젝트 및 스터디

19장을 마치며

 

20_더 나은 팀 문화를 위하여

개발팀의 문화

업무 환경의 변화

비동기 의사소통

문서화의 중요성

모두의 코드를 위한 리뷰

20장을 마치며

찾아보기   

 

 

 

주요 내용

 

매일 파도처럼 밀려오는 새로운 지식에 치이지 않기 위한 나침반과 같은 책

넓은 기술 분야의 지식을 높은 곳에서 한눈에 조망할 수 있는 책

각 지식 간의 연결 고리를 이어주어 인사이트를 주는 책

 

매일 파도처럼 밀려오는 새로운 지식들을 헤쳐 나가는 것은 어두운 미로를 손전등 하나만 들고 헤매는 것과 같습니다. 그것들 간의 맥락을 설명해주는 나침반과 지도가 꼭 있어야 합니다. 높은 곳에서 한눈에 조망할 수 있다면 이를 기반으로 각 지식 간의 연결 고리를 쉽게 이어갈 수 있습니다.

 

때로는 한껏 줌을 땡겨 좁은 영역에 복잡한 기술 지식을 자신만의 언어와 표기법으로 새겨 넣습니다. 이러한 과정을 반복하다 보면 멀리서 봤을 때 여러 기술 지식들이 얽히고 설켜 복잡한 개미굴과 같은 3차원의 지도가 완성되어 갑니다.

 

여러분의 기술 지도를 확장해 나가는 데 도움이 되었으면 좋겠습니다.

닻을 올리고 개발자로서 여행을 떠나는 이들이 더 멀리까지 바라볼 수 있도록 도와주는 책이면 좋겠습니다.

 

여행 가이드 북이라는 제목처럼 아주 세세한 내용까지는 다루지는 못했습니다. 이때 둘러대기 가장 좋은 핑계는 역시 "지면의 한계"일 것입니다. 하지만 설령 그 한계가 무한하다 하더라도 앞으로 여러분이 기술 분야에서 겪게 될 모든 경험과 즐거움을 책 한 권에 녹여내는 일은 불가능합니다.

 

그 부분은 여러분의 설레는 탐험의 몫으로 남겨놓겠습니다.

 

어쩌면 저도 미처 발견하지 못한 아름다운 여행지를 찾게 될지도 모르는 일입니다. 아니, 분명 그렇게 될 것입니다.

 

_본문 속의 글, ,

하지만 컴퓨터라는 독자만을 염두에 두고 코드를 작성하다가는 머지않아 큰 문제에 부딪히게 됩니다. 2차 독자인 사람을 염두에 두지 않았기 때문입니다.”

 

자바에서 예외를 처리할 때 사용되는 throw catch라는 키워드 역시 일종의 은유입니다. 사실 이 은유는 다른 언어와는 다른 자바의 예외 처리 방식을 효과적으로 나타내기 위한 목적이 있습니다.”

 

관심사를 분리하여 코드를 작성하면 각각의 코드 영역에서 적은 수의 관심사에만 집중할 수 있기 때문에 코드를 파악하는 것이 훨씬 수월합니다.”

 

코드가 강하게 결합되어 있다면 유지 보수 비용이 크게 드는 경향이 있습니다. 일반적으로의존성 주입 (Dependency Injection)’ 등의 기법을 통해 결합도를 낮출 수 있습니다.”

 

이 과정에서 인상적이었던 부분은 깃랩의 사고 수습 및 복구 과정이 상당히 투명하게 공개되었다는 것입니다. 그들은 복구 진행 프로세 스 전반을 트위터 계정을 통해 실시간으로 알렸습니다.”

 

이제부터는 바야흐로 탐정이 될 시간입니다. 디버깅은 수수께끼를 푸는 것과 비슷합니다. 복잡한 수수께끼를 풀기 위해 관찰력, 지식, 직관, 추론 능력으로 중무장하고 끈기와 인내로 문제를 해결해 나가는 셜록 홈즈가 되어야 합니다.”

 

버그 재현과 로그를 통해 디버깅을 수행할 때 그 과정을 꼼꼼히 기록하는 것도 큰 도움이 됩니다. 복잡하거나 난해한 버그의 경우 이를 추적하는 데 며칠에서 길게는 몇 달까지 걸릴 수 있습니다. 이 기간 동안 획득한 단서나 실험 결과를 머릿속에만 유지하기보다는 일종의 디버깅 문서를 만들어 기록하는 것이 좋습니다.”

 

패턴에는 이름도 중요합니다. 만약, ‘이라는 이름이 없었다면 건축 사무소에 온 손님에게 도면을 설명하기 위해여기에 문을 달겠습니다대신여기에 경첩이 달린 직사각형 형태의 나무를 대고 손잡이를 달아서 여닫을 수 있는 물체를 달겠습니다라고 설명해야 할 것입니다.”

 

그제서야 각 개발자는 각자의 사본을 가지고 직접 브랜치를 생성하고 커밋을 만들어 나갈 수 있었습니다. 이를 통해 정말 훌륭한 기능을 추가하거나 심각한 버그를 고칠 수 있게 되었습니다.”

 

““혼자 가면 빨리 갈 수 있지만 함께 가면 멀리 간다라는 말이 있습니다. 본문에서 언급한 리누스 토발즈도 사실은 리눅스와 깃을 오롯이 혼자 만들지는 않았습니다. 수많은 오픈소스 기여자들과 함께 수십 년 간 훌륭한 소프트웨어를 만들어 오고 있습니다.”

 

자바의 생태계에서도 이러한 문제를 인식하고 자바의 장황함을 줄이고자 노력하고 있습니다. 예를 들어, 자바 8에서람다 표현식을 도입함에 따라 새로운 스레드를 생성하기 위한 코드가 아래와 같이 간결해졌습니다.”

 

재미있는 점은 위의 코드 대신 for (i = 0; i <=9; i++)로 써도 동작은 동일하게 돌아가지만 이렇게는 잘 쓰지 않는다는 점입니다. 사람들은 이미 전자의 패턴에 익숙해져 있는 상태에서 0~9가 아닌 0~8까지 도는 반복문이라고 잘못 인식할 가능성이 있기 때문입니다.”

 

이와 같이 Go의 특징을 통해 설계 철학을 엿보다 보면 Go의 목적이 가장 뛰어난 프로그래밍 언어를 만들기 위한 연구의 성격이 아닌 동료의 작업 환경을 개선하고 생산성을 향상시키기 위한 시도였다는 것을 알 수 있습니다. 대학을 갓 졸업하고 구글에 입사한 주니어 개발자들도 새로운 언어를 쉽게 익혀 안전한 코드를 작성할 수 있도록 말입니다.”

 

개발자들이 자주 하는 변명에 대해 순위를 매겨본다면 아마 다음의 말이 1위를 차지하지 않을까 싶습니다. “제 컴퓨터에선 잘 되는데요?””

 

“json 같은 텍스트 형태의 데이터는 저장할 때 파일 전체를 처음부터 끝까지 다시 기록해야 합니다. 수천 명의 회원 목록 중 단 한 명의 데이터만 변경되었다고 하더라도 수천 명의 회원 목록 전부 다시 기록해야 한다는 이야기입니다

 

_상세 이미지

 

                                                                                                _

posted by 로드북
:
신간소개 2023. 10. 13. 11:22

  ● 지은이: 이상민

  ● 페이지: 428

  ● 판형: 188 * 257

  ● 도수: 2도

  ● 정가: 35,000원

  ● 발행일: 2023년 10월 16일

  ● ISBN: 979-11-93229-02-6 93000

 

[오탈자 사이트 [자료실] 

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

 

_도서 내용

이 책은 <자바의 신> VOL.1 기초 입문서를 배운 독자가 개발을 하면서 좀더 심화한 API를 활용해야 할 때 제대로 활용할 수 있는 법을 담았다. 내용 구석구석 NAVER, NHN, SKPlanet 등에서 성능 전문가의 풍부한 경험이 녹아 있다. 수십 년 간 버전 업이 지속되는 자바의 주요 API를 버전에 맞게 어떻게 활용할 수 있는지 노하우를 얻을 수 있을 것이다.

 

_대상 독자

Q. 자바 개발자로 일하고 싶은데, 무엇을 어떻게 시작해야 할까요?

A: 우선 VOL.1을 마스터하세요. 연습문제를 반드시 풀어봐야 합니다.

 

Q. 현업에서 개발자로 일하고 있지만, 나의 개발 방식이 가끔 맞는 것인지 헷갈릴 때가 있어요.

A: VOL.1을 건너 뛰고 VOL.2를 학습해도 됩니다. 레퍼런스로 찾아서 필요한 부분만 읽어도 됩니다.

Q. 개발자는 아니지만, 개발자들과 소통할 일이 많아요.

A: VOL.1만 공부해도 충분합니다. 개념을 익히는 데 많은 도움을 받을 수 있어요.

 

_목차

 

머리말

이렇게 학습하세요

감수자 & 베타리더의 글

 

1. 이쯤에서 자바의 역사와 JVM에 대해서 알아보자

자바의 역사

JDK의 플랫폼에 따른 차이

JDK, J2SE, Java SE 외에 자바에서 사용되는 다른 용어들

자바언어의 특징은 다음과 같다

자바의 버전별 차이

JIT 컴파일러는 도대체 뭘까?

HotSpot은 또 뭐야?

자바를 배우면 꼭 알아야 하는 용어

자바의 GC는 어떻게 진행되나요?

정리하며

 

2. 가장 많이 쓰는 패키지는 자바랭

java.lang 패키지는 특별하죠

숫자를 처리하는 클래스들

각종 정보를 확인하기 위한 System 클래스

System.out을 살펴보자

정리하며

직접해 봅시다

정리해 봅시다

 

3. 실수를 방지하기 위한 제네릭이라는 것도 있어요

실수를 방지할 수 있도록 도와주는 제네릭

제네릭이 뭐지?

제네릭 타입의 이름 정하기

제네릭에 ?가 있는 것은 뭐야?

제네릭 선언에 사용하는 타입의 범위도 지정할 수 있다

메소드를 제네릭하게 선언하기

정리하며

직접해 봅시다

정리해 봅시다

 

 

4. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part1(List)

자바 컬렉션

List 인터페이스와 그 동생들

ArrayList에 대해서 파헤쳐보자

ArrayList의 생성자는 3개다

ArrayList에 데이터를 담아보자

ArrayList에서 데이터를 꺼내자

ArrayList에 있는 데이터를 삭제하자

Stack 클래스는 뭐가 다른데?

정리하며

직접해 봅시다

정리해 봅시다

 

5. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part2(Set Queue)

Set이 왜 필요하지?

HashSet에 대해서 파헤쳐 보자

HashSet의 생성자들도 여러 종류가 있다

HashSet의 주요 메소드를 살펴보자

Queue는 왜 필요할까?

LinkedList를 파헤쳐보자

LinkedList의 생성자와 주요 메소드를 살펴보자

정리하며

직접해 봅시다

정리해 봅시다

 

 

6. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part3(Map)

Map이란?

Map을 구현한 주요 클래스들을 살펴보자

HashMap 클래스에 대해서 자세히 알아보자

HashMap 객체에 값을 넣고 확인해보자

HashMap 객체의 값을 확인하는 다른 방법들을 알아보자

정렬된 키의 목록을 원한다면 TreeMap을 사용하자

Map을 구현한 Properties 클래스는 알아두면 편리하다

자바의 자료 구조를 정리해보자

정리하며

직접해 봅시다

정리해 봅시다

 

 

7. 쓰레드는 개발자라면 알아두는 것이 좋아요

쓰레드가 도대체 뭘까?

Runnable 인터페이스와 Thread 클래스

Thread 클래스의 생성자를 살펴보자.

많이 사용되는 sleep( ) 메소드에 대해서 살펴보자

Thread 클래스의 주요 메소드를 살펴보자

쓰레드와 관련이 많은 synchronized

synchronized 블록은 이렇게 사용한다

쓰레드를 통제하는 메소드들

Object 클래스에 선언된 쓰레드와 관련있는 메소드들

ThreadGroup에서 제공하는 메소드들

정리하며

직접해 봅시다

정리해 봅시다

 

 

8. 파일에 있는 것을 읽고 쓰려면 아이오를 알아야죠

I/O

자바의 File Files 클래스

File 클래스를 이용하여 파일의 경로와 상태를 확인해 보자

File 클래스를 이용하여 파일을 처리하자

디렉터리에 있는 목록을 살펴보기 위한 list 메소드들

InputStream OutputStream은 자바 스트림의 부모들이다

Reader Writer

텍스트 파일을 써보자

텍스트 파일을 읽어보자

정리하며

직접해 봅시다

정리해 봅시다

 

 

9. Serializable NIO도 살펴 봅시다

Serializable에 대해서 좀 살펴보자

객체를 저장해보자

객체를 읽어보자

transient라는 예약어는 Serializable과 떨어질 수 없는 관계다

자바 NIO?

NIO Buffer 클래스

정리하며

정리해 봅시다

 

10. 다른 서버로 데이터를 보내려면 어떻게 하면 되나요?

네트워크 프로그래밍이란?

소켓 통신을 하기 위해서 알아야 하는 Socket 클래스

간단하게 소켓 통신을 해보자

UDP 통신을 위해서 알아야 하는 Datagram 관련 클래스

간단하게 UDP 통신을 해보자

자바에서 웹 페이지 요청을 하려면 어떻게 해야 하지?

정리하며

직접해 봅시다

정리해 봅시다

 

 

11. 이제 주요 API도 알아봤으니 정리해 봅시다

자바의 예약어들

제네릭

쓰레드

자바 API에서 제공하는 자료 구조와 Collection

Collection-List 인터페이스

Collection-Set 인터페이스

Collection-Queue 인터페이스

Collection-Map 인터페이스

IO 관련 클래스들

네트워크 관련 클래스들

정리하며

 

<자바의 신> 기말고사

<자바의 신> 기말 실습문제

 

12. Java 7에서 달라진 것들에는?

Java 7에서는

달라진 숫자 표현법!!!

switch 문장도 좀 확장되었대요

제네릭은 다이아몬드를 쓰면 쉬워요

Non reifiable varargs 타입

예외도 이렇게 보완 되었답니다

Java 7부터는 꼭 안닫아도 되는 애들이 있어요

정리하며

정리해 봅시다

 

 

13. Java 7에 추가된 것들에는?

Fork/Join CPU를 더 쉽게, 효율적으로 사용하기 위해서 만들어진 거에요

NIO도 잘 모르는데 NIO 2가 나왔다

Files 클래스는 파일을 다루기 위한 클래스랍니다

파일이 변경되었는지 확인하는 WatchService 클래스도 추가되었어요

파일과 관련된 다른 새로운 API에는 어떤 것들이 있을까?

Fork/Join NIO2 외에 추가 및 변경된 것들을 간단히 살펴보죠

정리하며

정리해 봅시다

 

14. Java 8에 추가된 것들은?

Java 8의 새로운 것들

Optional

Default method

날짜 관련 클래스들

병렬 배열 정렬(Parallel array sorting)

StringJoiner

정리하며

 

15. Java 8에서 변경된 것들은?

Lambda 표현식(expression)

java.util.function 패키지

stream

stream forEach( )

메소드 참조

stream map( )

stream filter( )

Stream을 다시 한번 정리해 보자

정리하며

 

16. Java 9에서 변경된 것들은?

Java의 변경된 정책은 꼭 알아야 해요.

Java 버전별 추가된 사항은 어디서 확인해야 할까?

Java 9에서 추가되거나 달라진 것들은?

Java 9부터 변경된 String 클래스

Interface private 메소드를 추가할 수 있다

새로운 HTTP 클라이언트를 쓰면 뭐가 좋을까?

Publish–Subscribe 프레임워크

자바의 모듈화직소 프로젝트

정리하며

 

17. Java 10에서는 무엇이 달라졌을까?

Java 10에서 추가되거나 달라진 기능들은?

타입을 일일이 입력하기 귀찮다면 var를 사용해도 된다.

수정 불가능한 Collection

정리하며

 

18. Java 11은 얼마나 달라졌을까?

Oracle JDK의 유료화

Java 11에 추가되거나 개선된 기능들은?

컴파일 없이 java 파일의 실행하는 방법은?

Lambda에서 var 사용해보기

정리하며

 

19. Java 12~17 버전을 살펴보자

Java 12에 추가되거나 개선된 기능들은?

java 13에 추가되거나 개선된 기능들은?

Java 14에 추가되거나 개선된 기능들은?

Java 15에 추가되거나 개선된 기능들은?

Java 16에 추가되거나 개선된 기능들은?

Java 17에 추가되거나 개선된 기능들은 ?

switch–case 문이 좀 달라졌어요.

따옴표 세개를 연달아 쓰면 text 블록을 사용할 수 있어요.

record 클래스가 뭔가요?

sealed 클래스는 어디에 사용하는 것인가요?

정리하며

 

찾아보기

 

<VOL.1의 주요 목차 요약>

1. 프로그래밍이란 무엇인가?

2. Hello God Of Java

3. 자바를 제대로 알려면 객체가 무엇인지를 알아야 해요

4. 정보를 어디에 넣고 싶은데

5. 계산을 하고 싶어요

6. 제가 조건을 좀 따져요

7. 여러 데이터를 하나에넣을 수는 없을까요?

8. 참조 자료형에 대해서 더 자세히 알아봅시다

9. 자바를 배우면 패키지와 접근 제어자는 꼭 알아야 해요

10. 자바는 상속이라는 것이 있어요

11. 매번 만들기 귀찮은데 누가 만들어 놓은 거 쓸 수 없나요?

12. 모든 클래스의 부모 클래스는 Object에요

13. 인터페이스와 추상클래스, enum

14. 다 배운 것 같지만, 예외라는 중요한 것이 있어요

15.String

16. 클래스 안에 클래스가 들어갈 수도 있구나

17. 어노테이션이라는 것도 알아야 한다

18. 이제 기본 문법은 거의 다 배웠으니 정리해 봅시다

 

<자바의 신> 중간 점검 및 실습

 

_주요 내용

 

[3판의 주요 변경사항]

최근 자바의 버전은 급격하게 변합니다. 6개월에 버전이 1씩 증가하는데, 회사에서 사용하는 자바의 버전은 프로젝트가 시작될 때 가장 최신 버전에 머물러 있는 경우가 많습니다. 그래서 <자바의 신> 3판에서는 최신 자바 버전에서 달라진 부분에 대해서 최대한 신입 및 기존 개발자분들이 쉽게 이해할 수 있도록 작성하였습니다. <자바의 신> 2판을 쓸 때인 2017년에는 최신 버전이 Java 8이었지만 지금은 Java 20이 가장 최신 버전이며, 장기 지원 버전인 Java 21은 올해 출시될 예정입니다. 왜 이렇게 버전 번호가 급격하게 올라갔는지는 본문에서 확인할 수 있습니다.

 

이 책은 VOL.2로 주요 API 활용법을 다루고 있습니다.

VOL.1이 기초 문법을 다루었다면, VOL.2에서는 개발 현장에 많이 활용하는 주요 API가 무엇이고 어떻게 쓰이는지를 다룹니다.

 

가장 신경 쓴 점은 생각하는 습관을 갖도록 하는 데 있습니다.

 이 책에는 생각해 봅시다라는 쉬어가는 코너가 아주 자주 등장합니다. 이 코너에서는 독자에게 화두를 던지고 그에 대해 짧게는 1분에서 길게는 10분까지 생각해볼 수 있도록 하였습니다. 이를 통해 현업에서 개발자로 성장했을 때 단순 코더가 아니라 생각하는 코더가 될 수 있도록 세심하게 배려하였습니다.

 

연습문제에 심혈을 기울였습니다.

문제를 풀어보는 것만큼 실력을 높일 수 있는 지름길은 없습니다. 서술형 문제에서는 이미 학습한 내용을 잘 기억하고 있는지 테스트할 수 있습니다. 실습 문제에서는 작은 단위의 프로그램을 만들어보면서 프로그램 짜는 능력을 쑥쑥 키워갈 수 있습니다.

 

VOL.1 & VOL.2 공통 온라인 특별판 PDF 무료 제공

1. 저는 이런 것 말고 웹 페이지를 만들고 싶었다구요

2. 그럼 데이터를 저장하려면 어떻게 해야 하는데요?

부록 1. Tomcat 설치하기

부록 2. JSP web.xml 추가 설명

부록 3. SQL 기초와 JDBC 타입

부록 4. GUI 도구인 JavaFX

부록 5. JavaFX로 계산기를 만들어보자

부록 6. 자바 설치 가이드

[다운로드 링크]

* https://roadbook.co.kr/313

* cafe.naver.com/godofjava

 

<자바의 신> 사이트에서 연습문제도 직접 풀어보고 정답을 확인하세요.

https://sites.google.com/view/godofjava3rd/

 

<자바의 신> 네이버 카페에서 공부하다 막히면 문의하면서 학습하세요.

https://cafe.naver.com/godofjava

 

예제 소스는 깃허브에서 별도로 제공됩니다.

https://github.com/godofjava/GodOfJava3rd

 

_편집자 코멘트

편집자인 저도 원고의 초고를 보면서 연습문제를 직접 풀어보았습니다. 사실 삽질을 되게 많이 했습니다. “어디서 에러가 나는 거지?” “앞에서 이런 부분을 설명했나?” “~ 내가 이런 부분을 이해하지 못하고 넘어갔구나하면서, 교정 시간은 더디게 갔지만, 훨씬 자바라는 언어에 더 가까워질 수 있었습니다.

이 책의 베타리뷰어로 참여했던 분들도 비슷한 경험을 하였습니다. 이 책은 21명의 베타리뷰어가 리뷰를 하였습니다. 디지털 파일이 아니라 모든 분들께 일일이 제본된 책자가 제공되었습니다. 실제 독자가 학습하는 방식 그대로를 재현하면서 어디에서 막히는지, 문제점은 없는지를 발견하고 이를 책에 반영하였습니다. 상당히 까다롭고 귀찮은 작업이었지만, 기본서의 중요성에 비추어 볼 때 이 정도의 투자는 해야 한다고 생각했습니다.

이 책에 참여해주신 21명의 베타 리뷰어와 좋은 기본서를 만들어준 저자에게 진심으로 감사를 드립니다.

 

_저자 소개

이상민 god@godofjava.com

삼성 SDS에서 개발을 시작하여 NAVER, NHN, SK Planet에서 개발자 및 엔지니어로 일해왔다. 『자바 성능 튜닝 이야기』, 『자바 트러블슈팅』, 『누가 IT 시장 취업에 성공하는가』 등 다수의 IT 서적을 집필하였다. 현재는 서비스 개선 및 개발자 역량 향상에 힘쓰며 CTO 역할을 수행하고 있다.

 

_상세 이미지

 

                                                                                                _

posted by 로드북
:
신간소개 2023. 10. 13. 11:21

 

  ● 지은이: 이상민

  ● 페이지: 644

  ● 판형: 188 * 257

  ● 도수: 2도

  ● 정가: 30,000원

  ● 발행일: 2023년 10월 16일

  ● ISBN: 979-11-93229-01-9 93000

 

[오탈자 사이트 [자료실] 

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용

현장 전문가가 쓴 자바 기초 입문서다. NAVER, NHN, SKPlanet 등에서 성능 전문가의 풍부한 경험을 바탕으로 자바를 실무에 맞게 제대로 쓸 줄 알게 해주는 입문서를 목표를 만들었다. 현장 중심형 자바 기초 문법서다. 혼자 공부하는 독자를 위해 연습문제를 직접 풀고 제출하여 모법답안을 확인할 수 있는 시스템을 구축하였고 독자 서비스를 위해 <자바의 신> 카페를 10년 넘게 운영하고 있다. 3판에서는 Java 9부터 지원되는 jshell로 본문의 모든 예제를 실행해보면서 복습해볼 수 있도록 하였다.

 

_대상 독자

Q. 자바 개발자로 일하고 싶은데, 무엇을 어떻게 시작해야 할까요?

A: 우선 VOL.1을 마스터하세요. 연습문제를 반드시 풀어봐야 합니다.

 

Q. 현업에서 개발자로 일하고 있지만, 나의 개발 방식이 가끔 맞는 것인지 헷갈릴 때가 있어요.

A: VOL.1을 건너 뛰고 VOL.2를 학습해도 됩니다. 레퍼런스로 찾아서 필요한 부분만 읽어도 됩니다.

Q. 개발자는 아니지만, 개발자들과 소통할 일이 많아요.

A: VOL.1만 공부해도 충분합니다. 개념을 익히는 데 많은 도움을 받을 수 있어요.

 

_목차

 

머리말

이렇게 학습하세요

자바의 신 샘플 실행기 가이드

감수자 & 베타리더의 글

 

1. 프로그래밍이란 무엇인가?

Programming P

자바 프로그램의 메소드는 이렇게 이렇게 생겼어요

자바의 가장 작은 단위는 클래스랍니다

클래스는 상태를 갖고 있어야 합니다

프로그램의 가장 기본은 =를 이해하는 것

한 줄을 의미하는 세미콜론

모든 프로그래밍 언어에는 예약어라는 것이 있어요

정리하며

 

2. Hello God Of Java

자바를 배울 환경 준비하기

HelloGodOfJava 만들기

HelloGodOfJava 컴파일하고 실행하기

main 메소드를 만들자

System.out.println( ) System.out.print( )

주석(Comment) 처리하기

메소드를 직접 만들어 보자

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

3. 자바를 제대로 알려면 객체가 무엇인지를 알아야 해요

자바는 객체지향 언어라고 해요

클래스와 객체는 구분하셔야 해요

Car 클래스를 구현하자

계산기 클래스를 만들어보자

Calculator 객체를 생성해보자

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

4. 정보를 어디에 넣고 싶은데

자바에서는 네 가지의 변수가 존재해요

예제를 통해서 지역 변수를 확실히 익히자

변수 이름은 이렇게

크게 보면 자바에는 두 가지 자료형이 있답니다

기본 자료형은 8개에요

8비트와 byte 타입

다른 정수형 타입들은 어떻게 활용하나?

소수점을 처리하고 싶어요

char boolean는 어떻게 쓰는 거지?

기본 자료형의 기본 값은 뭘까?

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

5. 계산을 하고 싶어요

연산자라는 게 뭐지? 벌써 조금 배웠다고?

간단하게 계산하는 복합 대입 연산자들

피연산자가 하나인 것도 있어요. 이걸 단항 연산자라고 하죠

자바에서 계산하는 순서를 알아두면 좋다

뭔가를 비교할 때는 어떻게 하지?

논리 연산자들을 알아보자

아주 특이한 ? : 연산자

기본 자료형의 형 변환을 이용한 변신

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

6. 제가 조건을 좀 따져요

도대체 얼마나 조건을 따지길래

if를 조금 더 다양하게 사용해보자

자바의 switch와 불켜는 스위치는 별 상관 없다

반복문이라구요?

가장 확실한 for 루프

많이 사용안하는 label

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

7. 여러 데이터를 하나에넣을 수는 없을까요?

하나에 많은 것을 담을 수 있는 배열이라는 게 있다는데

배열의 기본값

배열을 그냥 출력해보면 어떻게 나올까?

배열을 선언하는 또 다른 방법

별로 사용하지는 않지만, 알고 있어야 하는 2차원 배열

배열의 길이는 어떻게 알 수 있을까요?

배열을 위한 for 루프

자바 실행할 때 원하는 값들을 넘겨주자

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

8. 참조 자료형에 대해서 더 자세히 알아봅시다

참조 자료형은 나머지 다에요

기본 생성자

생성자는 몇 개까지 만들 수 있을까?

이 객체의 변수와 매개 변수를 구분하기 위한 this

메소드 overloading

꼭 기억하고 넘어가야 합니다

메소드에서 값 넘겨주기

static 메소드와 일반 메소드의 차이

static 블록

Pass by value, Pass by reference

매개 변수를 지정하는 특이한 방법

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

9. 자바를 배우면 패키지와 접근 제어자는 꼭 알아야 해요

패키지는 그냥 폴더의 개념이 아니에요

패키지 이름은 이렇게 지어요.

import를 이용하여 다른 패키지에 접근하기

자바의 접근 제어자

클래스 접근 제어자 선언할 때의 유의점

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

10. 자바는 상속이라는 것이 있어요

자바에서 상속이란?

상속과 생성자

메소드 Overriding

참조 자료형의 형 변환

Polymorphism

자식 클래스에서 할 수 있는 일들을 다시 정리해보자 317

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

11. 매번 만들기 귀찮은데 누가 만들어 놓은 거 쓸 수 없나요?

미리 만들어 놓은 클래스들은 아주 많아요

API를 열어보자

클래스 및 인터페이스의 상세 정보 화면을 살펴보자

Deprecated라고 표시되어 있는 것은 뭐야?

Header Footer에 있는 링크들은 뭘까?

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

12. 모든 클래스의 부모 클래스는 Object에요

모든 자바 클래스의 부모인 java.lang.Object 클래스

Object 클래스에서 제공하는 메소드들의 종류는?

Object 클래스에서 가장 많이 쓰이는 toString( ) 메소드

객체는 ==만으로 같은지 확인이 안 되므로, equals( )를 사용하죠

객체의 고유값을 나타내는 hashCode( )

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

13. 인터페이스와 추상클래스, enum

메소드 내용이 없는 interface

인터페이스를 직접 만들어보자

일부 완성되어 있는 abstract 클래스

나는 내 자식들에게 하나도 안 물려 줄꺼여

enum 클래스라는 상수의 집합도 있다

enum을 보다 제대로 사용하기

enum 클래스의 부모는 무조건 java.lang.Enum이어야 해요

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

14. 다 배운 것 같지만, 예외라는 중요한 것이 있어요

자바에서 매우 중요한 예외

try-catch는 짝이다

try-catch를 사용하면서 처음에 적응하기 힘든 변수 선언

finally~ 넌 무슨 일이 생겨도 반드시 실행해야 돼

두 개 이상의 catch

예외의 종류는 세 가지다

모든 예외의 할아버지는 java.lang.Throwable 클래스다

난 예외를 던질 거니까 throws라고 써 놓을께

내가 예외를 만들 수도 있다구?

자바 예외 처리 전략

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

15.String

자바에서 가장 많이 사용하는 String 클래스

String의 생성자에는 이런 것들이 있다

String 문자열을 byte로 변환하기

객체의 널 체크는 반드시 필요하답니다

String의 내용을 비교하고 검색하는 메소드들도 있어요

String내에서 위치를 찾아내는 방법은 여러 가지에요

String의 값의 일부를 추출하기 위한 메소드들은 얘네들이다

String 값을 바꾸는 메소드들도 있어요

절대로 사용하면 안 되는 메소드가 하나 있어요!!!!!

immutable String의 단점을 보완하는 클래스에는 StringBuffer StringBuilder가 있다

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

16. 클래스 안에 클래스가 들어갈 수도 있구나

클래스 안의 클래스

Static nested 클래스의 특징

내부 클래스와 익명 클래스

Nested 클래스의 특징은 꼭 알아야 한다

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

17. 어노테이션이라는 것도 알아야 한다

어노테이션이란?

미리 정해져 있는 어노테이션들은 딱 3개뿐

어노테이션을 선언하기 위한 메타 어노테이션

어노테이션을 선언해 보자

어노테이션에 선언한 값은 어떻게 확인하지?

어노테이션도 상속이 안돼요

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

18. 이제 기본 문법은 거의 다 배웠으니 정리해 봅시다

객체지향 개발과 관련된 용어들

자바의 주석문(Comment)

패키지와 import

자바에서 사용되는 타입의 종류

변수의 종류

계산을 쉽게 도와주는 연산자들

조건문들

반복문들

아무나 사용 못하게 막아주는 접근 제어자

선언할 때 사용할 수 있는 각종 제어자들

자바를 구성하는 클래스, 인터페이스, abstract 클래스

메소드의 선언

자주 사용하게 되는 상속

예외를 처리하자

Object 클래스

String 클래스

어노테이션을 선언할 때 사용하는 메타 어노테이션들

API의 기초

정리하며

직접해 봅시다

정리해 봅시다

jshell로 예제 실행해 보기

 

<자바의 신> 중간 점검 및 실습

 

부록 Part 1

1. Eclipes 설치하기

2. float double의 범위

3. 비트 연산자는 어떤 것일까

4. java.lang.Math 클래스

5. jshell

 

찾아보기

 

<VOL.2의 주요 목차 요약>

1. 이쯤에서 자바의 역사와 JVM에 대해서 알아보자

2. 가장 많이 쓰는 패키지는 자바랭

3. 실수를 방지하기 위한 제네릭이라는 것도 있어요

4. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part1(List)

5. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part2(Set Queue)

6. 자바랭 다음으로 많이 쓰는 애들은 컬렉션 - Part3(Map)

7. 쓰레드는 개발자라면 알아두는 것이 좋아요

8. 파일에 있는 것을 읽고 쓰려면 아이오를 알아야죠

9. Serializable NIO도 살펴 봅시다

10. 다른 서버로 데이터를 보내려면 어떻게 하면 되나요?

11. 이제 주요 API도 알아봤으니 정리해 봅시다

 

<자바의 신> 기말고사

<자바의 신> 기말 실습문제

 

13. Java 7에 추가된 것들에는?

14. Java 8에 추가된 것들은?

15. Java 8에서 변경된 것들은?

16. Java 9에서 변경된 것들은?

17. Java 10에서는 무엇이 달라졌을까?

18. Java 11은 얼마나 달라졌을까?

19. Java 12~17 버전을 살펴보자

 

_주요 내용

[3판의 주요 변경사항]

_2판에서 추가된 Java FX 관련 내용을 제외하여 온라인 PDF 특별판으로 제공

_각 장의 마지막에 본문에서 다룬 예제를 jshell로 쉽게 다시 한번 실행해보며 복습하는 코너를 만들었다. jshell은 자바9부터 지원되어 선언문, 문장, 표현식 등을 바로 확인해볼 수 있는 툴이다. jshell로 실제 값을 입력하여 본문 예제를 실행해보면서 공부한 내용을 바로바로 확인해볼 수 있다.

 

이 책은 VOL.1으로 기초 문법을 다루고 있습니다.

<자바의 신>은 총 2권으로 구성되어 있습니다. 그 중 첫 번째인 이 책은 개발자가 알아야 할 기초 문법을 다루고 있습니다. 1권을 이해해야 2권의 API 활용법을 쉽게 학습할 수 있습니다.

 

가장 신경 쓴 점은 생각하는 습관을 갖도록 하는 데 있습니다.

이 책에는 생각해 봅시다라는 쉬어가는 코너가 아주 자주 등장합니다. 이를 통해 독자에게 화두를 던지고 그에 대해 짧게는 1분에서 길게는 10분까지 생각해볼 수 있도록 하였습니다. 이것은 현업에서 개발자로 성장했을 때 단순 코더가 아니라 생각하는 코더가 될 수 있도록 세심하게 배려하였습니다.

 

연습문제에 심혈을 기울였습니다.

문제를 풀어보는 것만큼 실력을 높일 수 있는 지름길은 없습니다. 서술형 문제에서는 이미 학습한 내용을 잘 기억하고 있는지 테스트할 수 있습니다. 실습 문제에서는 작은 단위의 프로그램을 만들어보면서 프로그램 짜는 능력을 쑥쑥 키워갈 수 있습니다.

 

VOL.1 & VOL.2 공통 온라인 특별판 PDF 무료 제공

1. 저는 이런 것 말고 웹 페이지를 만들고 싶었다구요

2. 그럼 데이터를 저장하려면 어떻게 해야 하는데요?

부록 1. Tomcat 설치하기

부록 2. JSP web.xml 추가 설명

부록 3. SQL 기초와 JDBC 타입

부록 4. GUI 도구인 JavaFX

부록 5. JavaFX로 계산기를 만들어보자

부록 6. 자바 설치 가이드

[다운로드 링크]

* https://roadbook.co.kr/313

* cafe.naver.com/godofjava

 

<자바의 신> 사이트에서 연습문제도 직접 풀어보고 정답을 확인하세요.

https://sites.google.com/view/godofjava3rd/

 

<자바의 신> 네이버 카페에서 공부하다 막히면 문의하면서 학습하세요.

https://cafe.naver.com/godofjava

 

예제 소스는 깃허브에서 별도로 제공됩니다.

https://github.com/godofjava/GodOfJava3rd

 

 

_편집자 코멘트

편집자인 저도 원고의 초고를 보면서 연습문제를 직접 풀어보았습니다. 사실 삽질을 많이 했습니다. “어디서 에러가 나는 거지?” “앞에서 이런 부분을 설명했나?” “~ 내가 이런 부분을 이해하지 못하고 넘어갔구나하면서, 교정 시간은 더디게 갔지만, 훨씬 자바라는 언어에 더 가까워질 수 있었습니다.

이 책의 베타리뷰로 참석했던 분들도 비슷한 경험을 하였습니다. 이 책은 21명의 베타리뷰어가 리뷰를 하였습니다. 디지털 파일이 아니라 모든 분들께 일일이 제본된 책자가 제공되었습니다. 실제 독자가 학습하는 방식 그대로를 재현하면서 어디에서 막히는지, 문제점은 없는지를 발견하고 이를 책에 반영하였습니다. 상당히 까다롭고 귀찮은 작업이었지만, 기본서의 중요성에 비추어 볼 때 이 정도의 투자는 해야 한다고 생각했습니다.

이 책에 참여해주신 21명의 베타 리뷰어와 좋은 기본서를 만들어준 저자에게 진심으로 감사를 드립니다.

 

_저자 소개

이상민 god@godofjava.com

삼성 SDS에서 개발을 시작하여 NAVER, NHN, SK Planet에서 개발자 및 엔지니어로 일해왔다. 『자바 성능 튜닝 이야기』, 『자바 트러블슈팅』, 『누가 IT 시장 취업에 성공하는가』 등 다수의 IT 서적을 집필하였다. 현재는 서비스 개선 및 개발자 역량 향상에 힘쓰며 CTO 역할을 수행하고 있다.

 

_상세 이미지

 

 

 

                                                                                                _

posted by 로드북
:
신간소개 2023. 9. 27. 10:17

 

 

 

  ● 지은이: 김설화

  ● 페이지: 352

  ● 판형: 152 * 223

  ● 도수: 2도

  ● 정가: 23,000원

  ● 발행일: 2023년 10월 13일

  ● ISBN: 979-11-93229-00-2 93000

 

 

 

 

 

[오탈자 사이트[자료실]  

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용
이 책은 마정석이라는 신입 개발자가 첫 출근했을 때를 가정해 첫 프로젝트를 마칠 때까지 적응해야 하는 거의 모든 툴에 대한 퀵 가이드이다. 간단한 사내 커뮤니케이션 툴부터, 협업, 설계, 코드 작성, 코드 관리, 테스트, 모니터링, 코드 배포 등 프로젝트 전 과정에서 쓰이는 툴의 핵심 사용법과 주의사항을 다루고 있다. 개발 프로젝트의 한 사이클을 살펴볼 수 있고 주요 기술이나 개발 문화에 대한 가이드도 구석구석 다루고 있어 예비 개발자나 신입 개발자가 개발 현장에 빠르게 적응할 수 있도록 도와주는 든든한 참고서가 되어줄 것이다.

_대상 독자
“개발자가 되기 위해 준비 중인데, 배워야 할 게 너무 많아요. 특히 수많은 개발 툴은 어떻게 배워야 할까요?”
“실제 개발 현장에서는 어떤 툴을 어떻게 활용하나요?” 
“개발 현장이 무척 궁금합니다. 업무는 어떻게 주어지는지, 협업은 어떻게 하는지 등등”
“요즘 개발자 면접을 보러 다닙니다. 이제 곧 취업할 거라는 희망도 있고 긴장감도 있습니다. 취업 전 진짜 개발 현장의 모습을 간접적으로 경험해보고 싶습니다.”


_목차

먼저 읽어보았습니다 
추천사 
일러두기 
저자 서문 

1장 개발자로 첫 출근합니다
1.1 신입 개발자로 첫 출근하는 날 
1.2 개발할 때 많은 도구가 필요한 이유 
1.3 이 책에서 알아볼 개발 도구들 

2장 맥북 설정하기
2.1 터미널 설정하기 
2.1.1 터미널이란 무엇인가 
2.1.2 iterm이란 무엇인가 
2.1.3 셸 그리고 배시란 무엇인가 
2.1.4 zsh란 무엇인가 
2.2 터미널을 쉽게 사용하는 꿀팁 
2.3 패키지 관리자 설정하기 
2.3.1 패키지 관리자란 무엇인가 
2.3.2 홈브루란 무엇인가 
2.3.3 홈브루 설치하기 
2.3.4 홈브루 실습하기 
2.4 정리하기 

3장 윈도우즈 설정하기
3.1 퍼티 
3.1.1 퍼티란 무엇인가 
3.1.2 퍼티 설치하기 
3.1.3 퍼티 설정하기 
3.1.4 퍼티 활용하기 
3.2 파일질라 
3.2.1 파일질라란 무엇인가 
3.2.2 파일질라 설치하기 
3.2.3 파일질라 활용하기 
3.3 파워셸 
3.3.1 파워셸이란 무엇인가 
3.3.2 파워셸 설치하기 
3.3.3 파워셸 활용하기 
3.4 Chocolatey 
3.4.1 Chocolatey란 무엇인가 
3.4.2 Chocolatey 설치하기 
3.4.3 Chocolatey 활용하기 
3.5 정리하기 

4장 드디어 시작하는 개발
4.1 처음 받은 업무 
4.2 개발 업무 시작하기 
4.3 슬랙 
4.3.1 슬랙 설치하기 
4.3.2 슬랙 사용법 및 개발자가 사랑하는 기능들 
4.4 지라 
4.4.1 지라 사용하기 
4.5 트렐로 
4.5.1 트렐로 사용하기 
4.6 노션 
4.6.1 노션 사용하기 
4.6.2 개발자가 사용하는 노션 
4.7 정리하기 

5장 설계하기
5.1 Diagrams.net 
5.1.1 Diagrams.net이란 무엇인가 
5.1.2 개발자에게 다이어그램이 필요한 이유 
5.1.3 Diagrams.net 사용하기 
5.2 ERD 
5.2.1 ERD란 무엇인가 
5.2.2 ERD 예시와 읽는 법 
5.3 정리하기 

6장 코드 작성하기
6.1 인텔리제이 
6.1.1 인텔리제이 설치하기 
6.1.2 인텔리제이 활용하기 
6.2 비주얼스튜디오 코드 
6.2.1 VS Code 설치하기 
6.2.2 VS Code 활용하기 
6.3 이클립스 
6.3.1 이클립스 설치하기 
6.3.2 이클립스 활용하기 
6.4 VIM 
6.4.1 vim 설치하기 
6.4.2 vim 활용하기 
6.5 서브라임 텍스트와 아톰 
6.5.1 서브라임 텍스트 설치하기 
6.5.2 아톰 설치하기 
6.5.3 서브라임 텍스트 활용하기 
6.5.4 아톰 활용하기 
6.6 정리하기 

7장 코드 관리하기
7.1 버전 관리 시스템 
7.2 깃 
7.2.1 깃이란 무엇인가 
7.2.2 깃 설치하기 
7.2.3 깃 활용하기 
7.3 깃 사용을 도와주는 프로그램들 
7.3.1 소스트리 
7.3.2 TortoiseGit 
7.4 SVN 
7.4.1 SVN과 깃 
7.4.2 SVN 설치하기 
7.4.3 SVN 이용하기 
7.5 깃허브 
7.5.1 깃허브란 무엇인가 
7.5.2 깃허브 이용하기 
7.6 깃랩 
7.6.1 깃랩 이용하기 
7.7 대안 옵션: 비트버킷 
7.8 정리하기 

8장 테스트, 모니터링, API 문서
8.1 포스트맨 
8.1.1 포스트맨 설치하기 
8.1.2 포스트맨 활용하기 
8.2 모니터링 도구 
8.2.1 그라파나 
8.2.2 데이터독, AWS 클라우드워치 등 유료 서비스 
8.3 스웨거 
8.3.1 API 문서 
8.4 정리하기 

9장 코드 배포하기
9.1 CI/CD 
9.1.1 젠킨스 
9.1.2 깃허브 액션 
9.1.3 트래비스 CI 
9.2 젠킨스 파이프라인 
9.2.1 젠킨스 설치하기 
9.2.2 젠킨스 파이프라인 실습하기 
9.3 정리하기 

10장 개발자로 첫 퇴근합니다
10.1 신입들의 러닝 커브 
10.2 소개하지 못한 기술들 
10.2.1 도커 
10.2.2 클라우드 
10.2.3 데이터베이스 도구 
10.2.4 크롬 개발자 도구 
10.3 정리하기 

찾아보기   



주요 내용

SSH, 슬랙, 노션, 젠킨스, Vim, 지라… 왜 이렇게 많은 거야?
신입 개발자를 혼돈에 빠뜨리는 소프트웨어 개발 도구의 세계,
빠른 적응을 위해 필요한 개발 도구 지식을 담다!

첫 출근부터 익숙지 않은 슬랙 인사부터 알아듣기 힘든 업무 용어, 처음 보는 툴에 당황하지 말자!

누구에게나 첫 출근은 낯설고 두렵다. 특히 개발자라는 직업을 택했다면 압박감은 더하다. 경험해 보지 못한 수많은 개발 도구에 대한 낯설음이 가장 큰 요인이다. 개발은 도구로 시작해서 도구로 끝날 정도로 개발 도구에 대한 의존도가 크다. 기본적인 설정법과 사용법만 알아도 개발 초기에 헤매는 시간을 정말 많이 줄일 수 있다.
이 책은 기술보다는 툴 위주로 프로젝트의 생애주기에 맞추어 어떤 툴들이 사용되는지 그리고 간단한 사용법까지 알려준다. 또한 신입 개발자 마정석의 고군분투기를 통해 어떻게 전투 같은 개발 현장에 익숙해져 가는지 간접 체험을 해볼 수 있다. 
노트북 하나 딸랑 주어지는 순간부터 이야기가 시작되지만, 이 책의 마지막 페이지를 읽을 때쯤 앞으로 개발 현장에 대한 낯설음과 두려움은 사라질 것이다. 예비 혹은 신입 개발자가 현장에 빠르게 적응할 수 있는 가이드가 되어줄 것이다.

이 책에서 다루는 주요 개발 툴들
맥OS: 터미널 설정, iterm, 셸과 배시, zsh, 패키지 관리자(홈브루)
윈도우OS: 퍼티, 파일질라, 파워셸, 패키지 관리자(Chocalatey)
비개발 도구: 슬랙, 지라, 트렐로, 노션
프로젝트 설계 도구: Diagrams.net, ERD
코드 작성 도구: 인텔리제이 IDEA, VS Code, 이클립스, VIM, 서브라임 텍스트, 아톰
코드 관리 도구: 깃, 소스트리, TortoiseGit, SVN, 깃허브, 깃랩
테스트와 모니터링, API 도구: 포스트맨, 그라파나, 데이터독, AWS 클라우드와치, 스웨거
배포: 젠킨스, 깃허브 액션, 트래비스 CI
기타 기술: 도커, 클라우드, 데이터베이스 도구, 크롬 개발자 도구

신입으로 처음 시작하기에 사회생활이란 녹록지 않은 편이다. 모든 것이 새롭고 또 익숙하지 않다. 여기에 ‘전문직’ ‘기술직’에 속하는 개발자는 더하다. 회사 내에서 오가는 대화를 알아듣는 것조차 어렵다. 한번도 들어본 적 없는 기술과 서비스가 넘쳐난다. 분명히 어떠한 일을 하라고 전해 들었지만 그것이 무엇인지조차 모르거나, 정확히 무슨 일인지 파악하는 데에 오랜 시간이 걸리기도 한다. 처음 개발자로 입사하면, 환경설정에만 일주일 이상이 걸린다는 말도 있다. 그렇기에 기가 죽기도 하고, 이게 내 길이 맞나 의심이 들기도 한다. 걱정하지 말라. 모두가 그렇다. 이것은 결코 개발자만의 이야기만도 아닐 것이다. 두려움과 의심은 잠시 접어 두고, 기대와 자신감을 채워 넣을 때다.
_1장의 도입글 중에서

소프트웨어는 오늘날 우리에게 주어진 강력한 도구 중 하나이며, 소프트웨어 개발자는 이 도구를 만들어내는 능력을 가진 사람들입니다. 그만큼 개발자들의 도구는 종류가 다양하고 변화의 속도가 또한 빠른 편인데요. 소프트웨어 개발에 필요한 도구가 텍스트 편집기 하나였던 시대도 분명 있었을 것입니다. 하지만 기술과 도구가 계속해서 발전함에 따라 한 사람의 개발자 역할을 다 하려면 다양한 도구의 사용법을 꼭 익혀 두어야 합니다.
이 책은 신입 개발자들이 업무에서 필수적으로 사용하게 될 도구들을 소개하고 그 사용법을 친절하게 설명합니다. 이 책에서 소개하고 있는 도구들의 사용법은 신입 개발자들이 회사라는 전장에 뛰어들기 위해 꼭 체득해 놓아야 하는 것들입니다. 본격적인 직업 개발자로 들어서기 전에 이러한 지식들을 충분히 갖춘다면 이후의 적응 과정이 한결 수월해질 것입니다.
_이재용, <시작하는 개발자를 위한 기술 여행 가이드>(2023, 로드북) 저자

많은 예비 개발자는 입사 후 막연한 두려움에 떨게 됩니다. ‘내가 과연 회사에 들어가면 잘할 수 있을까?’ ‘어떤 일을 하게 되지?’ ‘뭘 알아야 하지?’ 역시나 업무를 막 시작한 친구들도 용기를 잃어버리게 됩니다. 사람들의 눈총이 따갑습니다. 이 책은 이런 고민을 하는 분들에게 도움을 줄 수 있는 책입니다.
_이승희, 웹 개발자(4년 차)

코드를 짜는 요령은 일하다 보면 쉽게 습득합니다. 그렇지만 정말 어려운 환경 설정과 설계에 대한 지식은 몸으로 부딪혀 가며 배워야 하는데, 이 책은 가장 빠르게 소프트웨어의 설정과 설계에 대한 노하우를 배울 수 있습니다. 개발하면서 실질적으로 하게 되는 일에 대해 알 수 있는 책입니다.
_윤란, 백엔드 개발자(1년 차)


이 책은 학원에서는 잘 가르쳐 주지 않지만 현업에서 거의 매일 사용되는 업무 도구에 대해 꼼꼼하게 알려줍니다. 취업 전, 혹은 취업 후에도 꾸준히 읽어보며 개발자로서 지식과 역량을 더해 나갈 수 있어 이 책을 추천합니다. 또한 회사에서 두고두고 보기에도 좋은 책입니다.
_류다희, 웹 개발자(1년 차)


_상세 이미지



_끝

posted by 로드북
:
신간소개 2023. 6. 27. 16:51

 

 

  ● 지은이: 유석문

  ● 페이지: 400

  ● 판형: 128 * 188

  ● 도수: 1도

  ● 정가: 18,000원

  ● 발행일: 2023년 7월 4일

  ● ISBN: 979-11-982686-9-3 93300

 

 

 

 

 

 

[오탈자 사이트] 

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용
누구나 지속적인 성장을 원합니다. 좋은 직장에 취직하여 인정받고자 하며, 때로는 이직을 통해 성장을 이어가고 싶어합니다. 하지만 현실에서는 수많은 면접에서 떨어지기도 하고 승진에서 탈락하기도 하며 동료들과 갈등으로 힘들어 하기도 합니다. 갑작스레 리더가 되는 황당한 경험도 하죠. 어떻게 하면 지속적인 성장을 이어갈 수 있을까요? 그리고 좋은 성장이란 무엇일까요? 유니콘 특례상장 1호 기업 쏘카의 최고기술책임자인 저자는 세계 최대의 글로벌 인맥 네트워크인 링크드인에서 1만 팔로워와 함께 “함께 성장하는 지혜”를 찾기 위해 지난 1년 간 1일 1글을 실천하였습니다. 이 글들을 묶어 <리더의 생각>과 함께 <리더의 세상 읽기>를 출판하였습니다. 취업, 직장 생활, 이직, 리더십 등의 문제로 고민하는 독자들이 이 책에서 작은 숨통이라도 트일 약간의 지혜라도 얻기를 소망합니다.


_대상 독자
이런 고민을 하는 독자들을 위한 작은 위로와 지혜 나눔

“취업 준비하는 게 너무 힘들어요. 앞이 캄캄하고 잘하고 있는지 모르겠습니다.”
“이직할 때 어떻게 준비하고 실행해야 할까요? 
“갑자기 팀장으로 승진해버렸어요. 어떻게 해야 할지 난감합니다.”
“상사와 관계가 너무 좋지 않습니다. 매일매일 스트레스로 힘듭니다.”
“나만큼 힘들게 직장 생활하는 사람이 있을까요?”
“다른 사람들은 잘하는 것 같은데, 왜 나만 못하는 것 같을까요?”


_목차

프롤로그

1부. 사람  
반려동물을 키워 봤나요  
주말에는 개인을 위한 시간을 보내고 있나요  
동네 서점을 좋아하나요  
문제가 안 풀릴 때는 어떻게 하나요  
사소한 규칙이라도 어기면 불편한가요  
수학시험능력평가 당일에는 기분이 어땠나요  
은메달과 동메달 수상자 중 더 기쁜 사람은 누굴까요  
원형탈모를 겪어 봤나요  
재능기부를 하나요  
작가의 의도를 맞추는 문제를 풀어봤나요  
어린 시절 동생과 나눠 쓰라며 받은 용돈 중에서 얼마를 동생과 나눴나요  
“고속도로 사망자 30% 안전벨트 미착용”이라는 경고문을 본 적이 있나요  
〈껍데기는 가라〉라는 시를 읽어 봤나요  
“뱃속에 나비가 날아다닌다”라는 표현을 쓰나요  
무례함이란 무엇일까요  
조언과 자신이 하는 의사결정 중 무엇이 더 정확할까요  
“기왕 하는 김에 ◯◯도 해버리자”라는 방법을 쓰나요  
여러분은 어떤 리더를 좋아하나요  
눈 내리는 날을 좋아하나요  
성장에 도움이 된 태도는 무엇인가요  
호구를 잡혀 봤나요  
“저 사람 엄청나대”라는 소문을 들어봤나요  
해피빈 서비스를 아나요  
오랜만에 만난 친구들을 보면 어떤 변화가 보이나요  
사람은 변할까요  
실패를 통해 배우나요  
죽기 전에 무엇이 생각날까요  
남의 떡이 커보이나요  
집값이 오르면 누가 스트레스를 받을까요  
단호하게 말하나요  
배움은 언제 시작될까요  
풀 브레이킹을 사용할 줄 아나요  
원숭이는 나무에서 떨어질까요  
호주 생태계의 심각한 위협 요소는 무엇일까요  
자사주 매입 효과는 무엇일까요  
선입견과 편견은 얼마나 큰 영향력을 발휘할까요  
규칙적인 운동을 하나요  
자신에 대해 잘 알고 있나요  
친한 친구가 힘든 일을 겪고 있으면 어떤 조언을 해 주나요  

2부. 일  
경기 침체로 걱정인가요  
발표 자료에 애니메이션 효과를 사용하나요  
한 가지 일에 얼마나 오래 집중할 수 있나요  
하루 중 면접에 유리한 시간이 있을까요  
‘3체병’을 아나요  
지식노동자는 개인 역량만으로 높은 성과를 달성할 수 있을까요  
회사와 관련해서 어떤 질문을 받나요  
조직 내에서 효과적으로 정보를 소통하려면 어떻게 해야 할까요  
면접을 준비하고 있나요  
자기소개서를 작성하고 있나요  
어떤 회사에 취업해야 할까요  
입사 지원한 회사에 불합격하면 어떤 기분이 드나요  
이직은 언제 해야 할까요  
면접에서 자기소개를 어떻게 하나요  
단점을 질문받으면 뭐라고 답변하나요  
면접에서 장점을 어떻게 설명하나요  
면접에서 지원동기를 어떻게 설명하나요  
목표를 어떻게 달성하나요  
독서를 좋아하나요  
“별거 아니야”라며 안심을 시키나요  
소프트웨어학과는 인기학과일까요  
위대한 기업은 영원할까요  
직원들과 글을 공유하나요  
협의 자리에서 좋은 결과를 만들었다는 것은 무슨 의미일까요  
꾸준히 실천하기가 쉽나요  
상대방의 의사를 확인하고 도움을 주나요  
무료함을 어떻게 버티나요  
조직이 언제 위기에 빠진다고 생각하나요 Ⅰ  
조직이 언제 위기에 빠진다고 생각하나요 Ⅱ  
조직이 언제 위기에 빠진다고 생각하나요 Ⅲ  
조직이 언제 위기에 빠진다고 생각하나요 Ⅳ  
조직이 언제 위기에 빠진다고 생각하나요 Ⅴ  
평판조회를 아나요  
퇴직 사유를 뭐라고 설명하나요  
이직을 해봤나요  
노량진 컵밥을 아나요  
임원이 되면 좋을까요  
어떤 조직 구조에서 근무 중인가요 Ⅰ  
어떤 조직 구조에서 근무 중인가요 Ⅱ  
어떤 조직 구조에서 근무 중인가요 Ⅲ  
사람 사이의 갈등은 어떻게 해결하나요  
리처드 바크만의 작품을 아나요  
타인을 위해 일하나요  
〈모범택시〉라는 드라마를 아나요  
내적동기 부여를 위해 어떤 방법을 사용하나요  

3부. 사회  
도시전설을 아나요  
‘시다’라는 용어를 아나요  
서브프라임 모기지 사태를 아나요  
아까운 기회를 놓쳤다면 어떻게 해야 할까요  
크런치 모드를 아나요  
외적 보상은 내적동기를 저하시킬까요  
문제의 원인을 어떻게 파악하나요  
가장 강한 자가 살아남을까요  
기념일을 잘 챙기나요  
심청전을 읽어 봤나요  
세상은 안전할까요  
깨끗한 사무실에서 근무 중인가요  
한국 대중문화의 세계적 열풍을 실감하나요  
공정은 무엇일까요  
이상 기후를 체감하나요  
미국 청장년층(18세~45세) 사망원인 1위는 무엇일까요  
비가역 현상을 아나요  
솔선수범은 무엇일까요  
도서관을 좋아하나요  
민영화의 장점은 무엇일까요  
연말정산에서 세금을 돌려받나요  
새로운 조직을 맡은 직후 문제가 발생하면 누가 책임을 져야할까요  
어떻게 글을 작성하나요  
공직자의 ‘이해충돌방지법’을 알고 있나요  
‘조용한 사직’ ‘조용한 해고’ ‘조용한 고용’을 들어 봤나요  
상갓집에서 트로트 노래가 흘러나오면 어떤 기분이 들까요  

에필로그 
부록. 용어정리  



주요 내용

링크드인에서 저자의 1일 1글에 1만 팔로워가 공감하고 의견을 교환하며 함께 성장하고 있습니다.

리더십에 관한 여러 글들, 매우 인상 깊게 읽고 있습니다. 올려주신 글들 읽으면서 저를 돌아보곤 합니다. 
_조성*
새로운 인력은 조직의 문제점을 찾기보다는 현구성원에 대한 인정과 칭찬이 먼저일 거 같고 현구성원은 새로운 인력에 대한 배려와 포용이 필요한 것 같습니다. 써주신 글 읽으니 다시 한번 생각하게 되었습니다.
_Sally Y****
눈치 없이 나서면 "또 나선다", "또 저렇네" 라고 생각할 것 같고 그렇다고 무조건 방조하면 일이 진행되지 않거나 이 부분은 선배가 해줘야 하는데 라며 섭섭해 할 것 같습니다. 도움이 필요할지 항상 살펴보고 필요할 때만 묻는 문화가 만들어져도 좋겠네요.
_joon-ho k**
오늘은 정말 철학적인 내용의 글인데, 요즘 제가 실제로 말씀하신 일들을 좀 겪고 있어서 더 마음에 와 닿습니다. 이래서 상대방에 휘둘릴 필요 없이 내가 생각하고 판단한 대로 나는 나의 길을 가면 되는 게 아닌가 합니다.
_Sebas**** Jang
최근에 읽은 '휴먼카인드'의 메시지와 맞닿아 있는 글인 듯합니다. 타인에 대한 희망을 가지는 것이, 그것을 실현하는 첫 단계라고 느끼는 요즘입니다. 글 감사합니다.
_양성*
그 과잉 교정의 위험을 감수하면서 단호해지는 일이란 에너지를 많이 소모하는 일이겠다 싶기도 하고, 때문에 중요한 의사결정 사안에 있어 때때로 용기를 내서 단호해지는 분들이 멋진 것 같아요.
_다운*
정말 가슴에 와 닿는 좋은 글이네요. 어릴 적 그때 나름 인생의 큰 좌절을 겪었었는데, 그때 했던 실패에 대한 복기가 삶 전체의 태도에 대한 것을 바꾸어 주었습니다.
_Heemin K**
할 말이 많지만 공감한다는 말로 갈음합니다.
_김태*
먼저 좋은 글 감사합니다. 한국 사회에서는 장점이자 단점이 “인정(사사로운 정)을 하나의 무기로 사용할 때가 많은 것 같습니다. ”우리가 남이가“ 이런 예죠. 지난 수십 년부터 지금까지 여러 문화나 가치관 등의 과도기적인 문제점들이 잦은 이직의 또다른 원인이라고 생각합니다.
_Jaewoo** L**
기존 직장을 그만두고 다시 취업을 준비하는 입장에서 와닿는 내용이 많네요. 현실적이고 유용한 글 감사합니다.
_박지*


[책속의 문장들]

_p.49
다양성과 합의 과정이 언제나 갈등 없이 이루어지진 않겠지만 발전을 위한 비판과 토론을 피해서는 안 됩니다. 특히 정답을 만들어 내는 권위자와 추종자가 다른 의견을 공격하여 복종하게 만드는 압력을 조심해야 합니다.

_p.68
우리는 살면서 많은 의사결정을 합니다. 항상 옳은 결정만 할 수 있으면 좋겠지만 실수는 피할 수 없으므로 인정할 줄 알아야 합니다. 실수를 인정하면 배우고 더 나은 선택을 할 수 있게 되며 추가적인 실수를 예방할 수 있습니다.

_p.78
모른다는 것을 인정할 수 있게 된 후로는 세상살이가 많이 편해지기도 했고 또 배우고 협의를 하며 더 나은 방법을 찾을 수 있게 되었습니다. 모른다고 인정하는 순간 성장할 수 있는 기회를 얻게 되는 것이죠.

_p.97 
현실적인 문제에 부딪혀 자신이 좋아하고 잘하며 이루고 싶은 꿈을 포기해야 하는지를 고민하는 사람이라면 주호민 작가의 동기부여가 필요하고 미래를 낙관적으로 바라보며 현실인식이 부족한 경우라면 이말년 작가의 조언이 도움이 됩니다.

_p.102
자신의 집값보다 더 많이 상승한 곳을 보며 주택 소유자도 상대적 박탈감을 느끼고 누군가 갭투자를 통해 상당한 수익을 올렸다는 이야기를 듣게 되면 상실감은 더 커집니다. 결국 비교를 하는 순간 모두 패자가 됩니다.

_p.118
낮은 빈도라도 ‘나 하나쯤은 괜찮다’는 의사결정이 모이면 파괴적인 결과가 만들어지기에 ‘나만이라도 지키자’를 선택해야 합니다.

_p.119
어떤 결정은 아주 단기간만 영향을 줍니다. 식사로 무엇을 먹을지 결정하는 일은 하루에 여러 번 선택의 기회가 주어지고 각각의 선택으로 인한 영향도 길지 않습니다. 만족스럽거나 불만족스러운 한 끼의 식사가 평생 영향을 주지는 않습니다. 하지만 어떤 종류의 선택은 짧게는 몇 년, 길게는 남은 생 전체에 영향을 줍니다.

_p.136
낮은 처우와 좋지 못한 근무환경이라도 관심 분야에서 경력을 쌓으면 이직할 때 처우를 조정할 수 있어 장기적으로 경력 전체 보상의 총합을 높일 수 있습니다. 경력의 시작에 공백이 없도록 선택해야 하는 이유입니다.

_p.139
사이버로핑을 차단하며 갖는 기대는 ‘웹서핑에 사용할 시간을 전적으로 생산성 높은 업무에 활용하기’이지만 실제로는 어떤 방식을 이용하든 인간은 휴식을 취하게 되어 있습니다. 스마트폰을 들여다보거나 동료와 잡담을 나누는 방식이 대표적입니다.

_p.154
개인의 성과는 동료의 협업과 지원, 회사의 인프라에 많은 부분 의존합니다. 이를 온전한 자신의 능력으로 착각하면 안 됩니다. 자신의 역량만으로 충분하다 믿고 새로운 조직에서 동료를 존중하지 않고 이익을 위해 활용하는 대상으로 취급하면 좋은 성과를 만들 수 없으며 동료의 지지도 받을 수 없습니다.

_p.162
재택을 많이 하게 된 요즘에는 조용한 사무실이 집중하기 좋다며 출근을 선택하는 사람도 있습니다. 효과적인 협업을 위해서는 함께 논의하고 정보를 공유한 뒤 집중하여 문제를 해결하고 다시 긴밀하게 논의하는 사이클이 필요합니다. 결국 재택근무의 장점과 사무실에서 함께 공간을 공유하며 얻는 장점을 잘 조합할 수 있는 지혜가 필요합니다.

_p.170
시선을 잡아 두라는 이야기가 이상한 사람으로 보여도 된다는 의미는 아닙니다. 튀어야 한다는 강박관념에 사로잡혀 이상한 유머 코드를 넣거나 극단적인 시도를 하면 흥미 유발에는 성공할지 몰라도 함께 일하고 싶지 않다는 느낌을 줄 수 있습니다. 이상한 사람이 아닌 특별한 사람으로 표현해 보세요.
_p.176
‘저것만 가질 수 있다면 정말 행복하겠다’라는 생각에 열심히 돈을 모아 물건을 구입하고 만족감이 빠르게 사라져 버리는 경험은 회사라고 다르지 않습니다. 정말 가고 싶은 회사라고 생각하는 이유를 객관적으로 살펴봐야 하는 이유입니다.

_p.178
재직 중이라면 안 맞는 조건에 이직할 이유가 없다며 협상을 해볼 수 있고 조건이 맞지 않으면 재직 상태를 유지하고 다른 기회를 찾을 수 있습니다. 하지만 이미 퇴직했고 시간에 쫓기고 있다면 협상을 이끌어 나갈 동력이 없습니다.

_p.206
날카롭게 제련한 칼날이라도 시간이 지나면 녹이 습니다. 영원할 것이라는 막연한 기대와 요행을 버리고 더 나아질 방법을 찾고 기존의 익숙한 관행을 비판적으로 바라볼 때 위대한 기업과 개인은 영속성을 가질 수 있습니다.

_p.213
목표를 세우고 달성하는 일이 흥미진진하고 의욕 넘치는 과정이라 예상하기 쉽지만 대부분의 경우는 그냥 꾸역꾸역 하는 일입니다. 그 과정에 드물게 기쁜 일도 생기고 뭐 딱히 기쁠 정도는 아니라도 편안함이라든가 완료했다는 안도감을 느낄 수 있습니다. 한다고 당장 티도 안 나고 안 한다고 문제가 되지도 않으니 미루거나 외면하고 싶은 유혹은 언제나 생깁니다. 하지만 어쩔 수 없습니다. 그냥 꾸역꾸역 한 일이 모여 뒤를 돌아보면 엄청난 차이를 만들어 버리기 때문입니다.

_p.223
종종 자신보다 경험이 많은 사람을 판단하는 일에 부담을 느껴 정상적인 면접 대신 사적 만남으로 대체하는 경우가 있는데 절대로 해서는 안 되는 실수입니다. 면접관은 조직에 좋은 사람을 데려오는 역할임과 동시에 ‘조직에 안 맞는 사람이 들어오지 못하게 막는’ 역할입니다. 파급효과만 고려한다면 안 맞는 사람이 들어오지 못하게 막는 것이 더 중요합니다.

_p.226
판단은 리더가 하고 이후 필요한 절차 수행을 지원하는 전담부서가 필요합니다. 사람을 뽑는 채용팀만 있고 관리하는 팀이 없다면 조직 성장을 위해 전담 부서를 신설하기 바랍니다. 이러한 지원이 없으면 리더는 사람 문제에 매몰되어 지쳐가고 끝내 조직을 이탈하게 됩니다.


_p.231
외부 환경 변화에 따라 보상체계를 변경해야 한다면 자금 집행에 대한 조직원의 기대치 관리가 필수입니다. 막연히 “잘되면 알아서 잘해 줄게”와 같은 방식은 유효하지 않습니다. 기준을 명확하게 공유해야 합니다. 그래야만 불필요한 낙관론에 빠져 있다 실망하고 조직을 이탈하는 불상사를 막을 수 있습니다.

_p.239
지금 함께 하는 사람들이 자신의 평판조회 전화를 받게 될 것을 알고 늘 좋은 협업 관계를 형성하기 위해 최선을 다하는 것이 자신을 위한 최고의 투자입니다.

_p.243
이직은 지속적인 성장이 목표입니다. 명확한 목표를 가지고 차분하게 준비하고 좋은 기회가 왔을 때 잡아야 합니다. 때로는 자신에게 잘 맞는 기회를 오랜 시간 기다려야 할 때도 있습니다. 전체 경력 관점에서 좋은 의사결정 하길 응원합니다.

_p.251
직업은 1년 하고 끝나는 일이 아니라 수십 년을 지속해야 합니다. 중간에 완전히 다른 일을 선택할 수도 있지만 이는 매우 드문 일로 대부분 처음 선택한 직업의 주위를 맴돌게 됩니다. 지금 선택하고자 하는 일을 오래 반복할 수 있을지 숙고해 보아야 합니다. 그리고 그 일을 하며 겪게 될 어려움에 대해서도 미리 생각해 봐야 합니다.

_p. 254
자신을 이해하고 온전히 자신이 선택한 경우라면 어떤 선택이든 괜찮습니다. 선택의 결과 또한 스스로 결정하여 얻은 것이기에 수용할 수 있습니다. 언제나 자신의 욕망을 이해하고 실천하기를 바랍니다.

_p.268
모든 의사결정을 최상위권자에게 받으면 느릴 뿐 아니라 실무자의 의욕도 꺾입니다. 과하지도 덜하지도 않은 적절한 권한위임이 자기 동기 부여의 필수 요소입니다.

_p.271
리더의 무게는 인사권을 보유함에 있습니다. 그러므로 갈등을 회피하지 말아야 합니다. 사람의 갈등에 대한 의사결정은 리더만이 할 수 있습니다. 무게를 이기고 올바른 선택을 할 수 있기를 응원합니다.

_p.275
자신이 가진 재능이 무엇인지 찾기 위한 노력과 발견 후 갈고닦아 발전시키기 위한 노력을 해온 상태라면 언젠가 운이 찾아와 줍니다. 이때 여러분의 재능과 노력으로 운을 잡고 더 키워 나가면 됩니다.

_p.326
오늘 근무하고 있는 사무실이 깨끗한 환경이라면 이를 제공해 줄 수 있는 환경과 또 이를 구현하기 위해 직접 노동력을 제공해 주고 계신 청소노동자에게 감사의 마음을 가져 보면 좋겠습니다. 그리고 리더의 역할과 책임이 무엇인지를 살펴보는 기회로도 활용해 보기 바랍니다.

_p.334
공정과 상식, 능력주의가 현실에서 어떻게 동작하고 있는지 이해하고 더 나은 대안을 함께 고민해야 할 때입니다.

_p.384
가진 것을 나누는 것 특히 경험과 지식을 나누는 일은 일방적인 희생이 아닙니다. 공유할수록 가치가 커지며 공유하는 과정에서 스스로 성장하는 기회가 만들어집니다. 함께 살아가는 가치 나아가 함께 성장하는 가치를 추구하길 응원합니다.


_저자 소개
지은이 유석문

좋은 개발자가 무엇인지 고민하고 실천하다 여기까지 와버렸습니다. LG전자, 벤처기업, 핸디소프트, 네이버, 라이엇게임즈를 거쳐 현재는 쏘카에서 CTO 역할을 수행중이며 좋은 개발자가 성장하는 문화를 만들기 위해 고군분투 중입니다. 네이버에서 지도서비스를, 라이엇게임즈에서 부정행위 방지 프로그램을 개발한 일이 세상에 긍정적 영향이었기를 바라며 현재는 모든 사람이 자유롭고 행복하게 이동하는 세상을 만드는 쏘카의 미션에 빠져 있습니다. 공유의 가치를 실천하기 위해 <NHN은 이렇게 한다 소프트웨어 품질관리>, <프로그래머로 산다는 것>, <프로그래머 철학을 만나다>, <리더의 생각> 집필에 참여했습니다.


_끝

posted by 로드북
:
신간소개 2023. 6. 15. 15:08

 

 

  ● 저자: 심교훈

  ● 페이지: 476

  ● 판형: 188*257

  ● 도수: 2도(부분 4도)

  ● 정가: 30,000원

  ● 발행일: 2023년 6월 20일

  ● ISBN: 979-11-982686-8-6 93000

 

 

 

 

 

 

[오탈자 사이트]  [예제 소스 [질의응답]    

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용
파이썬을 너무너무 사랑하고 파이썬으로 본인과 가족을 먹여살리고 있으며,  매일 5000명이 방문하는 개발 블로그 운영자이기도 한 저자가  누구나 쓸모 있는 프로그램을 만들며 배울 수 있게 만든 책이다. 계속 기본서만 읽다가 포기하려는 입문자는 그 다음으로 도약할 수 있고, 다른 언어를 쓰는 개발자는 빠르게 파이썬으로 갈아탈 수 있다. 이 책이 제공하는 프로그램에 상상력과 응용력을 더한다면 더 멋진 프로그램을 만들어낼 수도 있다.

_대상 독자
파이썬 기본서를 읽었지만 파이썬으로 무엇을 할 수 있는지 잘 모르겠다.
파이썬 문법을 공부할 시간은 없지만 일단 코딩으로 뭐라도 만들어보고 싶다.
파이썬 개발자의 실무 노하우를 얻고 싶다.
파이썬을 통해 업무 효율을 높이고 싶다.
파이썬으로 돈을 벌고 싶다.

_목차

서문 
이 책의 활용 방법 

Part 1_파이썬으로 쓸모 있고 재미난 일을 하기 위한 준비운동

Chapter 1_ 파이썬 설치 
1.1 파이썬 다운로드 
1.2 파이썬 설치하기 
1.3 메모장으로 코딩하기 
1.4 파이썬이 제공하는 코드 편집 및 실행기, IDLE 

Chapter 2_ 비주얼 스튜디오 코드 설치 
2.1 비주얼 스튜디오 코드 다운로드 
2.2 비주얼 스튜디오 코드 설치하기 
2.3 비주얼 스튜디오 코드에 추가로 설정하기 
2.4 비주얼 스튜디오 코드 사용해보기 

Chapter 3_ 외부 라이브러리 설치 
3.1 외부 라이브러리 목록 확인하기 
3.2 외부 라이브러리 설치하기 
3.4 외부 라이브러리 제거하기 

Chapter 4_ 가상환경 생성 
4.1 virtualenv 가상환경 사용하기 

Part 2_파이썬으로 쓸모 있고 재미난 일 하기

Chapter 1_ 기념일 계산하기 
1.1 실습 준비 
1.2 만난 지/결혼한 지 며칠인지 계산하기 
1.3 만난 지/결혼한 지 2000일이 언제인지 계산하기 
1.4 이모지 터미널에 출력되게 하기 
1.5 정리하며 

Chapter 2_ 코딩으로 프러포즈하기 
2.1 실습 준비 
2.2 웹 브라우저 실행하여 URL 열기 
2.3 상대방의 대답에 따라 보여줄 영상 다르게 하기 
2.4 애인에게 프러포즈 프로그램 전달하기 
2.5 정리하며 

Chapter 3_ 로또 번호 자동 생성하기 
3.1 실습 준비 
3.2 무작위로 숫자 6개 선택하기 
3.3 숫자 6개 조합 5세트 만들기 
3.4 정리하며 

Chapter 4_ 숫자 야구 게임 만들기 
4.1 실습 준비 
4.2 숫자 야구 게임 규칙 
4.3 중복되지 않는 랜덤 숫자 세 개 생성하기 
4.4 제시한 숫자에 대해서 스트라이크, 볼 판정하기 
4.5 맞출 때까지 게임이 진행되게 하기 
4.6 중복된 숫자를 입력했을 때 문제 발생 
4.7 정리하며 

Chapter 5_ 웹 사이트 홍보를 위한 QR 코드 만들기 
5.1 실습 준비 
5.2 QR 코드 만들기 
5.3 정리하며 

Chapter 6_ PDF 파일 추출, 병합하기 
6.1 실습 준비 
6.2 PDF 파일 내에서 특정 페이지 추출하기 
6.3 PDF 파일에서 여러 페이지 추출하기 
6.4 여러 개의 PDF 파일 병합하기 
6.5 PDF 파일에서 텍스트 추출하기 
6.6 정리하며 

Chapter 7_ 웹 페이지를 캡처하여 이미지로 저장하기 
7.1 실습 준비 
7.2 웹 페이지 캡처하기 
7.3 한 번에 여러 페이지 캡처하기 
7.4 직접 작성한 html, css를 이미지 파일로 만들기 
7.5 정리하며 

Chapter 8_ 메모장에서 주민등록번호와 전화번호 추출하기 
8.1 실습 준비 
8.2 정규식 없이 주민등록번호 추출하기 
8.3 정규식으로 주민등록번호 추출하기 
8.4 주민등록번호와 전화번호 추출하기 
8.5 정리하며 

Chapter 9_ Hex 코드를 RGB 색상으로 변환하기 
9.1 실습 준비 
9.2 Hex 코드를 RGB 색상으로 변환하기 
9.3 RGB 색상을 Hex 코드로 변환하기 
9.4 Hex 코드, RGB 색상 변환 프로그램 
9.5 Hex 코드, RGB 색상 변환 프로그램을 정교하게 만들기 
9.6 정리하며 

Chapter 10_ 특정 시간마다 반복해서 실행되는 프로그램 만들기 
10.1 실습 준비 
10.2 1초마다 100원을 버는 프로그램 
10.3 2시간마다 물을 마시라고 알려주는 프로그램 
10.4 매일 0시마다 정기 결제를 하게 만드는 프로그램 
10.5 정리하며 

Chapter 11_ 사내 방송 프로그램 만들기 
11.1 실습 준비 
11.2 텍스트를 음성으로 변환하기 
11.3 텍스트를 음성으로 변환한 후 바로 재생하기 
11.4 예약된 시간에 음성 알림을 해주는 프로그램 만들기 
11.5 정리하며 

Chapter 12_ 현재 날씨 정보 가져오기 
12.1 실습 준비 
12.2 OpenWeather API key 얻기 
12.3 위도, 경도 좌표 얻기 
12.4 현재 기온 정보 얻기 
12.5 원하는 도시의 현재 기온 확인하기 
12.6 우리가 입력한 도시의 기온이 맞는지 확인하기 
12.7 정리하며 

Chapter 13_ SMS 문자 보내기 
13.1 실습 준비 
13.2 문자 전송 API 
13.3 다른 사람에게 문자 메시지 보내기(유료) 
13.4 엑셀 파일에 있는 회원에게 일괄적으로 문자 보내기 
13.5 정리하며 

Chapter 14_ 코딩으로 주식 매매하기 
14.1 실습 준비 
14.2 한국투자증권 API 사용 준비하기 
14.3 특정 종목 현재 주가 확인하기 
14.4 현재 계좌에 있는 현금 잔고 확인하기 
14.5 주식 시장가로 매수하기 
14.6 보유 주식 확인하기 
14.7 주식 시장가로 매도하기 
14.8 간단한 주식 매매 프로그램 
14.9 정리하며 

Chapter 15_ 수학 시험 문제 출제용 그래프 그리기 
15.1 실습 준비 
15.2 1차 함수 그래프 그리기 
15.3 x축, y축 위치 바꾸기 
15.4 x축, y축 눈금 스케일 동일하게 만들기 
15.5 그래프에 함수식 및 x축, y축 정보 넣기 
15.6 2차 함수 그래프 그리기 
15.7 정리하며 

Chapter 16_ CPU, 메모리 사용량 모니터링 프로그램 만들기 
16.1 실습 준비 
16.2 실시간 CPU, 메모리 사용량 체크하기 
16.3 실시간 CPU, 메모리 사용량 그래프 그리기 
16.4 실시간 CPU, 메모리 사용량 그래프 그리기(개선) 
16.5 그래프 꾸미기 
16.6 메모리/CPU 사용량 많을 시 경고음 나게 하기 
16.7 정리하며 

Chapter 17_ 맛집 추천 지도 만들기 
17.1 실습 준비 
17.2 맛집 목록 엑셀에 정리하기 
17.3 웹 지도 만들기 
17.4 도로명 주소를 위도, 경도 좌표로 변환하기 
17.5 엑셀에 있는 도로명 주소를 위도, 경도 좌표로 변환하기 
17.6 지도에 맛집 마커 찍기 
17.7 정리하며 

Chapter 18_ 고객들에게 이벤트 당첨 이메일 보내기 
18.1 실습 준비 
18.2 코드로 네이버 이메일을 보내기 위한 설정하기 
18.3 네이버 이메일 보내기 
18.4 파일 첨부해서 이메일 보내기 
18.5 이메일 내용을 예쁘게 꾸미기 
18.6 엑셀 파일에 있는 데이터를 파이썬으로 가져오기 
18.7 엑셀 파일에 있는 고객 중 당첨 고객에게 이메일 보내기 
18.8 정리하며 

Chapter 19_ 임시 비밀번호를 이메일로 발송하기 
19.1 실습 준비 
19.2 랜덤 비밀번호 생성하기 
19.3 이메일로 임시 비밀번호 전송하기 
19.4 정리하며 

Chapter 20_ 엑셀 파일 꾸미기 
20.1 실습 준비 
20.2 특정 셀에 배경색 넣기 
20.3 값에 따라 셀마다 다른 배경색 넣기 
20.4 글자 크기 변경하기 
20.5 정리하며 

Chapter 21_ 로또 당첨번호를 크롤링하여 통계내기 
21.1 실습 준비 
21.2 가장 최근 회차의 당첨번호를 일부 크롤링하기 
21.3 가장 최근 회차의 당첨번호와 보너스번호 크롤링하기 
21.4 가장 자주 당첨된 번호 확인하기(번호별 당첨 빈도 파악) 
21.5 정리하며 

Chapter 22_ 커쇼와 류현진 선수 MLB 데이터 비교하기 
22.1 실습 준비 
22.2 파이썬과 Sqlite3 데이터베이스 연동하기 
22.3 조회한 데이터를 보기 좋은 형태로 변환하기 
22.4 류현진 선수의 승, 패, ERA, 탈삼진, 볼넷, 피안타 평균 구하기 
22.5 류현진 선수의 시즌별 ERA 선 그래프 그리기 
22.6 류현진 선수와 클레이튼 커쇼 선수의 데이터 비교하기 
22.7 정리하며 

Chapter 23_ 머신러닝으로 타이타닉호 생존자 예측하기 
23.1 실습 준비 
23.2 타이타닉 데이터셋 
23.3 불필요한 컬럼 제거하기 
23.4 null 값 처리하기 
23.5 문자 데이터 숫자로 바꿔주기 
23.6 분류에 유용한 특성 선택하기 
23.7 kNN 분류 모델 훈련 및 테스트 
23.8 정리하며 

Chapter 24_ 이미지에 워터마크 넣기 
24.1 실습 준비 
24.2 이미지에 워터마크 넣기 
24.3 원하는 위치에 워터마크 넣기 
24.4 폴더에 있는 모든 이미지에 워터마크 처리하기 
24.5 코드 수정 없이 워터마크 적용하기 
24.6 정리하며 

Chapter 25_ 사진을 이용해서 웹툰 만들기 
25.1 실습 준비 
25.2 사진을 만화로 바꾸기 
25.3 이미지에 말풍선 넣기 
25.4 말풍선에 텍스트 넣기 
25.5 세 컷 웹툰 만들기 
25.6 정리하며 

Chapter 26_ 사진에서 명함 부분만 잘라서 저장하기 
26.1 실습 준비 
26.2 사진에서 명함 영역을 찾기 위한 전처리 
26.3 이미지에서 명함 부분의 후보 바운딩 박스 찾아내기 
26.4 명함 바운딩 박스만 남기고 명함 윤곽 그리기 
26.5 명함 부분만 잘라서 직사각형으로 만들기 
26.6 다른 명함 사진들로 테스트해보기 
26.7 정리하며 

Chapter 27_ 사진에서 사람 얼굴 검출하여 모자이크로 처리하기 
27.1 실습 준비 
27.2 사람 얼굴 검출하기 
27.3 사람 얼굴에 모자이크로 처리하기 
27.4 주인공이 아닌 사람 얼굴만 모자이크로 처리하기 
27.5 정리하며 

Chapter 28_ 손으로 쓴 전화번호 인식 프로그램 만들기 
28.1 실습 준비 
28.2 MNIST 데이터셋 
28.3 간단하게 딥러닝 모델 학습시키기 
28.4 우리가 직접 손으로 쓴 숫자 인식하기 
28.5 손으로 쓴 전화번호 인식하기 
28.6 정리하며 

Chapter 29_ 사람 얼굴 분석하기 
29.1 실습 준비 
29.2 사진 속 인물 분석하기 
29.3 분석 결과 이미지에 쓰기(CIA 관련 영화 흉내내기) 
29.4 정리하며 

Chapter 30_ 마스크 착용 유무 판별하기 
30.1 실습 준비 
30.2 마스크 착용 얼굴 및 미착용 얼굴 이미지 수집하기 
30.3 마스크 착용을 판별하는 딥러닝 모델 만들기 
30.4 훈련된 마스크 착용 판별 모델로 테스트해보기 
30.5 정리하며 

Chapter 31_ Flask로 API 서버 만들기 
31.1 실습 준비 
31.2 아주 간단한 웹 사이트 만들기 
31.3 조선시대 왕 목록 얻기 
31.4 조선시대 왕 추가하기 
31.5 조선시대 왕 추가하기(잘못된 요청 처리) 
31.6 조선시대 왕 수정하기 
31.7 조선시대 왕 삭제하기 
31.8 Access Token을 발급 받은 경우에만 API 사용 허가하기 
31.9 정리하며 

Chapter 32_ 번역 사이트 만들기 
32.1 실습 준비 
32.2 번역 기능 만들기 
32.3 아주 간단한 웹 사이트 만들기 
32.4 html 문서가 127.0.0.1:5000에 접속했을 때 나오게 하기 
32.5 웹 사이트에서 입력한 문장이 번역되어 웹 사이트에서 보이게 하기 
32.6 CSS로 심파고를 파파고처럼 디자인하기 
32.7 정리하며 

Chapter 33_ Flask, Django 없이 웹 애플리케이션 만들기 
33.1 실습 준비 
33.2 파이썬만으로 웹 사이트 띄우기 
33.3 웹 페이지에 그래프 띄우기 
33.4 matplotlib으로 그린 그래프 띄우기 
33.5 사용자가 업로드한 엑셀 파일 시각화하기 
33.6 번역 웹 사이트 만들기 
33.7 정리하며 

Chapter 34_ 백색 소음 GUI 프로그램 만들기 
34.1 실습 준비 
34.2 GUI 프로그램 윈도우 띄우기 
34.3 윈도우에 버튼 추가하기 
34.4 버튼에 기능 부여하기 
34.5 버튼 클릭 시 음악 재생되게 하기 
34.6 버튼 클릭 시 음악 재생되게 하기(멀티 프로세스 활용) 
34.7 정리하며 

Chapter 35_ 갹출 금액 랜덤 분할 프로그램 만들기 
35.1 실습 준비 
35.2 금액 인원에 따라 랜덤 분할하기 
35.3 갹출 금액 랜덤 분할 프로그램 UI 만들기 
35.4 갹출 금액 랜덤 분할 프로그램에 기능 부여하기 
35.5 exe 실행 파일 만들기 
35.6 프로그램 아이콘 바꾸기 
35.7 정리하며 

Chapter 36_ 감사 일기 프로그램 만들기 
36.1 실습 준비 
36.2 sqlite3 데이터베이스 설정하기 
36.3 감사 일기 테이블 생성하기 
36.4 입력한 감사제목을 GUI 창에 띄우기 
36.5 감사제목을 입력하는 기능 추가하기 
36.6 입력한 감사제목을 수정/삭제 기능 추가하기 
36.7 프로그램 빌드하기 
36.8 정리하며 

Chapter 37_ 객체 지향 프로그래밍하기 
37.1 실습 준비 
37.2 클래스 만들기 
37.3 상속 
37.4 정리하며 

Chapter 38_ 로그 예쁘게 찍기 
38.1 실습 준비 
38.2 원래 찍히는 평범한 로그 
38.3 컬러로 로그 표현하기 
38.4 로그 메시지 포맷 바꾸기 
38.5 메모장에 로그 찍어 주기 
38.6 정리하며 

Chapter 39_ 타입 힌트 사용하여 코드의 가독성 높이기 
39.1 실습 준비 
39.2 타입 힌트 
39.3 함수의 출력에도 타입 힌트를 주자 
39.4 정리하며 

Chapter 40_ 최적화된 서비스를 위해 캐싱 처리하기 
40.1 실습 준비 
40.2 캐싱이란 
40.3 데코레이터란 
40.4 파이썬에서 캐싱 처리하기 
40.5 @cache 데코레이터와 @lru_cache 데코레이터 
40.6 정리하며 

찾아보기

 

_주요 내용

파이썬 때문에 매일 5000명이 방문하는 블로그 운영자가 쓴 쓸모 있는 파이썬 프로그램 레시피북
만들고 만들며 만들다 보면 나도 어느덧 파이썬 개발자
누군가의 인생을 바꾸는 기술 서적이길 바라며

[이 책의 특징]
_1부의 개발환경만 먼저 설정해 놓으면 만들고 싶은 프로그램 아무거나 찾아서 실습해도 문제가 없다.
_파이썬으로 일도 하고 취미생활도 하는 저자가 엄선해 뽑은 주제 40개를 선정하였다.
_단 한줄의 코드도 생략하지 않고, 모든 코드의 기능을 행 (묶음) 단위로 자세하게 설명해 두었다.
_하나의 프로그램에 하나의 가상환경을 만들어 두었다. 가상환경의 이점은 1부에서 확인할 수 있다.

[이런 생각을 갖고 있는 독자에게 안성맞춤]

_파이썬 기본서를 읽었지만 파이썬으로 무엇을 할 수 있는지 잘 모르겠다.
_파이썬 문법을 공부할 시간은 없지만 일단 코딩으로 뭐라도 만들어보고 싶다.
_파이썬 개발자의 실무 노하우를 얻고 싶다.
_파이썬을 통해 업무 효율을 높이고 싶다.
_파이썬으로 돈을 벌고 싶다.

여러분이 이 책을 완독하는 데 도움을 주고자 다음과 같은 채널을 통해 소통합니다. 책을 따라하다가 막히는 부분이 있으면 언제든지 질문해주세요. 최대한 빠르게 답변하도록 노력하겠습니다. 여러분이 사용하기 편한 채널로 연락주세요.

질의응답사이트 cafe.naver.com/codefirst

블로그 https://bskyvision.com
깃허브 https://github.com/kyohoonsim

이 책에서 다루는 파이썬은 저와 제 가족을 먹여 살리고 있는 아주 고마운 존재입니다. 저는 파이썬을 정말 사랑합니다. 파이썬은 제가 만들고 싶은 것을 만들게 해줬고, 또한 누군가가 만들고 싶어하는 것을 제가 대신 만들 수 있게 도와줬기 때문입니다.

파이썬의 매력은 비교적 쉬운 문법에 파워풀한 라이브러리를 많이 보유하고 있다는 점입니다. 라이브러리만 잘 갖다 써도 만들 수 있는 것이 정말 무궁무진하게 많습니다. 이 책에서 여러분은 파이썬으로 정말 재미있는 일을 많이 할 수 있다는 것을 알게 될 것입니다. 
이 책의 내용에 여러분의 상상력과 응용력을 첨가한다면 멋진 프로그램을 많이 만들어 낼 수 있을 것입니다. 파이썬이 여러분의 삶을 더욱 더 윤택하게 만드는데 이 책이 작은 보탬이 되면 좋겠습니다.

_저자 소개
지은이 심교훈
대학교 2학년 때 C언어 수업에서 C+ 학점을 받고 코딩에 재능이 없다고 확신했지만, 윤성우 님의 <열혈강의 C 프로그래밍> 책을 만난 후 처음 개발자의 꿈을 꾸게 되었고, 현재는 파이썬으로 밥을 벌어먹고 있는 백엔드 개발자. 
로아와 인아의 아빠이자, 희의 남편. 일명 희로인의 남자. 
일 평균 5000명이 방문하는 블로그의 필자이자 파이썬 프로그래밍 강사. 
컴퓨터비전 & 영상처리 관련 8편의 SCI 논문 저자. 
• 동국대학교 전자공학 학사
• 톈진대학교 영상처리 석사 졸업, 박사 중퇴
• 스포츠를 좋아하여 스포츠 IT 회사에서 첫 직장 생활
• 현재는 대기업 금융 IT 회사에 재직


_상세 이미지



_끝

 

posted by 로드북
:
신간소개 2023. 6. 2. 18:22

 

 

  ● 저자: 김효실, 황중원

  ● 페이지: 252

  ● 판형: 188*257

  ● 도수: 2도

  ● 정가: 25,000원

  ● 발행일: 2023년 6월 13일

  ● ISBN: 979-11-982686-7-9 93000

 

 

 

 

 

 

[오탈자 사이트]  [예제 소스[질의응답]    

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용

이 책은 “사진을 올리면 강아지/고양이 종을 분류해주는 기능”을 AWS 클라우드 기반으로 서비스를 할 수 있게 만드는 과정을 보여주고 있다. 오픈 API를 활용하며 백엔드는 FastAPI, 프론트엔드는 Streamlit 기반으로 서비스를 구축하며, 마지막으로 AI/ML 파이프라인으로 전과정을 자동화해보는 경험을 할 수 있게 하였다. 초보자도 쉽게 따라할 수 있도록 생략된 과정 없이 자세하게 단계별로 설명하고 있다, 이 책으로 실습을 한번 경험해보 보면 인공지능 서비스를 어떻게 만들 수 있는지를 알 수 있게 되고 다양한 확장된 아이디어를 얻을 수 있다.

 

 

_대상 독자

_다음과 같은 선수 지식이 있는 독자

책에서 자세하게 코드 흐름은 알려주지만, 파이썬의 기초 문법을 숙지하면 훨씬 빠르게 학습할 수 있다.

 

_다음과 같은 목표를 갖고 있는 독자

서비스에 인공지능 기능을 추가해보고 싶은데, 무엇부터 해야 할지 막연하다.

딥러닝 책을 보면 수학, 코드, 모델 학습 등 모르는 얘기만 잔뜩 있어 포기한 경험이 있다.

인공지능 개발자가 되기 위해 기초적인 경험을 해보면서 성취감을 맛보고 싶다.

 

 

_목차

 

지은이의 글

베타테스터의 글

일러두기

 

1장 딥러닝 Open API를 이용한 강아지/고양이 종 분류 프로젝트

1.1 학습목표

1.2 사전 준비하기

1.2.1 AWS 클라우드 계정 생성

1.2.2 AWS 클라우드 액세스 키 발급

1.2.3 캐글 가입 및 데이터 다운로드

1.2.4 코랩 사용법

1.3 사전지식 쌓기

1.3.1 딥러닝

1.3.2 딥러닝 서비스

1.3.3 Open API 정의와 딥러닝 Open API 종류

1.4 구현하기

1.4.1 [스텝 1] AWS 웹화면에서 테스트하기

1.4.2 [스텝 2] AWS Open API 테스트하기

1.5 요약과 정리하기

 

2장 지도학습으로 딥러닝 모델 만들기 - 고양이 종 분류 프로젝트

2.1 학습목표

2.2 사전 준비하기

2.2.1 학습데이터 준비

2.2.2 Google Teachable Machine 사용 준비

2.3 사전지식 쌓기

2.3.1 , 커스텀 AI 분류 모델이 필요한가

2.3.2 분류 문제란 무엇인가

2.3.3 Google Teachable Machine 이해하기

2.3.4 Google Teachable Machine 모델 생성 과정

2.4 구현하기

2.4.1 [스텝 1] 각 데이터별로 학습시키기

2.4.2 [스텝 2] 학습된 결과를 비교하기

2.4.3 [스텝 3] AI모델을 추출하기

2.5 요약과 정리하기

 

3장 내 컴퓨터에서 AI/ML 서비스 구축하기

3.1 학습목표

3.2 사전 준비하기

3.2.1 파이썬 설치하기

3.2.2 FastAPI 설치하기

3.2.3 Streamlit 설치하기

3.3 사전지식 쌓기

3.3.1 딥러닝 모델을 서비스한다는 것의 의미

3.3.2 웹서비스를 구성하는 세 가지 기본 요소

3.3.3 RestAPI

3.3.4 FastAPI

3.3.5 Streamlit

3.4 구현하기

3.4.1 [스텝 1] 작업 파일 구성하기

3.4.2 [스텝 2] 프로토타입 설계하기

3.4.3 [스텝 3] 백엔드 만들기(FastAPI)

3.4.4 [스텝 4] 프런트엔드 만들기(Streamlit)

3.5 요약과 정리하기

 

4 AWS 클라우드에서 AI/ML 서비스 구축하기

4.1 학습목표

4.2 사전 준비하기

4.2.1 AWS 콘솔 로그인

4.2.2 소스코드 다운로드

4.3 사전지식 쌓기

4.3.1 AWS EC2

4.3.2 AWS S3

4.4 구현하기

4.4.1 [스텝 1] S3에 모델 아티펙트 업로드하기

4.4.2 [스텝 2] 생성한 EC2에 서빙 서버 구축하기

4.4.3 [스텝 3] 연동 테스트하기

4.5 요약과 정리하기

 

5 AI/ML Pipeline

5.1 학습목표

5.2 AI/ML Pipeline의 정의

5.3 AI/ML Pipeline의 필요성

5.4 AI/ML Pipeline의 구성요소

5.5 AWS SageMaket 스튜디오에서의 AI/ML Pipeline

5.5.1 SageMaker 프로젝트

5.5.2 SageMaker 프로젝트의 사용 시기

5.5.3 SageMaker 파이프라인

5.5.4 SageMaker 파이프라인 구조

5.5.5 IAM 액세스 관리

5.5.6 Pipeline 매개변수

5.5.7 Pipeline 스텝

5.5.8 Pipeline 정의하기

5.6 요약과 정리하기

 

6장 종합 프로젝트

6.1 학습목표

6.2 사전 준비하기

6.2.1 SageMaker 파이프라인 스텝 설계

6.2.2 소스코드 다운로드

6.2.3 AWS S3에 데이터 구성

6.3 사전지식 쌓기

6.3.1 ResNet18

6.3.2 전이 학습

6.3.3 온디맨드 인스턴스 및 요금(또는 제약사항)

6.4 구현하기

6.4.1 데이터 수집

6.4.2 데이터 검증

6.4.3 SageMaker 파이프라인 정의

6.4.4 API 테스트

6.4.5 서빙 서버 모니터링

6.4.6 서비스 사용을 위한 프런트엔드 애플리케이션과의 연동(interface)

6.5 요약과 정리하기

 

부록 A Anaconda의 설치 및 실행 방법

A.1 윈도우즈 버전

A.2 MacOS 버전

 

 

_주요 내용

 

“모델을 만들고 서비스해보고자 하는 독자에게 안성맞춤인 책”

“초보자가 쉽게 따라할 수 있는 딥러닝 서비스 만들기”

“군더더기를 쏙 뺀 딥러닝 실습 책”.

 

이 책을 통해 독자들은 다음과 같은 내용을 배울 수 있습니다.

1. 딥러닝 및 인공지능의 기본 개념과 원리를 이해한다.

2. Google Teachable Machine으로 고양이 종 분류 모델 생성을 통해 데이터 수집, 전처리, 모델

훈련 및 평가 과정을 직접 경험한다.

3. AWS 클라우드 서비스를 활용하여 딥러닝 서비스를 구축한다

 

딥러닝과 인공지능 학습 여정에 도움이 되고, 이 분야에서의 기본적인 지식과 경험을 쌓을 수 있습니다. 또한 아이디어를 실생활에 활용하고 서비스를 하는 데 힌트를 얻을 수 있습니다. 이 책과 함께 흥미진진한 딥러닝 서비스 구축 여정을 시작해보세요.

 

[5명의 베타테스터가 직접 따라해보았더니]

 

<파이썬 생활 밀착형 프로젝트>라는 책의 인연으로 베타테스터에 지원하게 되었습니다. 이 책은 순수하게 딥러닝 실습에 중점을 두었기에 제가 잘 따라갈 수 있을까 하는 걱정이 많았습니다. 그러나 걱정은 기우였습니다. 실습 전에 철저한 ‘사전 준비’ 코너가 있어 특별한 어려움 없이 따라갈 수 있었습니다. 1장과 2장을 통해 만든 모델을 어떻게 웹으로 서비스할 수 있는지에 대한 개념이 3장에서 딱 잡혔는데, 신기한 경험이었던 것 같습니다. 정말 내용이 심플하면서 모델을 만들고 서비스를 해보고자 하는 독자에게 안성맞춤으로 구성되어 있습니다.

_이민영(비전공 대학생 3학년)

 

첫 장부터 딥러닝 얘기를 하지는 않아 조금은 당황했습니다. AWS 가입 방법부터 활용법을 아주 자세하게 시작하고 코랩에서 이미지를 읽어 들이는 아주 단순한 작업부터 시작합니다. 그러면서 딥러닝 개념이 조금씩 양념처럼 나오지만 개념이 지루하지 않고 또 바로 실습으로 이어집니다. 딥러닝 초보자라 따라하다가 안 되는 부분도 더러 있었는데, 저자와 소통하면서 초보자가 쉽게 이해할 수 있도록 책에 조금이나마 기여했다는 게 정말 뿌듯합니다. 실습해보면서, “아~~ 모델을 이렇게 만들고 이렇게 서비스하는구나” “모델 만드는 게 이런 의미구나” 등의 전체 숲을 볼 수 있었습니다.

_박상철(개발자 취업 준비생)

 

이 책은 아주 간단한 서비스같지만, 여기에서 좀더 독자의 상상력과 노력이 더해진다면 정말 근사한 딥러닝 서비스를 만들 수 있으리라 생각합니다. 군더더기를 완전히 빼고 실습 위주로 깔끔해서 저에겐 안성맞춤이었습니다. 개념적으로는 뭔지 알겠는데, “그래서 뭘 어쩌라는거지?” 하며 힘들어 하는 분들에게 단비 같은 내용이 될 것 같습니다.

_김인수(2년차 주니어 웹 개발자)

 

간단한 것 같지만, 2장을 통해 학습하고 모델을 만들어내고 그 과정에서 알아야 할 내용들을 이후에 실습을 통해 정말 잘 전달해주신 것 같습니다. 이론적인 설명도 중간중간 곁들여 이해하는 데 많은 도움이 되었습니다.

_임영희(컴퓨터공학 전공 대학생 2학년)

 

마지막 장에서 백엔드 서비스와 프런트엔드 서비스를 종합한 AI/ML Pipeline AWS 클라우드에 직접 작성하고 테스트해 본 게 큰 도움이 되었습니다. 특히 파이프라인 자동화하는 부분이 인상적이었습니다.

_이순철(AI 기업 신입 개발자)

 

_저자 소개

지은이

김효실

컴퓨터공학과 빅데이터를 전공하였다. 서울대학교, 숭실대학교, LG전자, 삼성전자에서 전문강사로 활동하였으며, 국민대학교 겸임교수로 활동하였다.

다양한 산업군을 거치면서 고객들의 문제를 AI/ML로 해결하는 업무를 담당하고 있다. 프로그래머, 데이터사이언티스트, 강사, 겸임교수 등 다양한 경험에서 쌓인 지식을 쉽고, 재밌게 전파하는 사람이 되고 싶다.

그리고, 배움 앞에선 늙지 않는자가 되기 위해 오늘도 노력중이다.

 

황중원

컴퓨터공학을 전공했고 빅데이터와 AI(인공지능) 분야에서 실무 경험을 쌓고 있으며, 주로 자연어 처리, 추천, 컴퓨터비전 도메인에서 활동하였다. 빅데이터에서 AI로 넘어가는 산업계의 큰 흐름에서 쌓아오던 AI 분야의 지식으로 실제 비지니스에 필요한 서비스들을 만들어 런칭하고 있다.

새로운 기술 트랜드를 학습하는 데 관심이 많으며, 소위학습의 피라미드에서 처럼 습득한 지식을 공유하고 전파하여 자신의 것으로 만들고, 사회에 기여하는 것을 목표로 하고 있다.

 

 

_상세 이미지

                                                                                                _

posted by 로드북
:
신간소개 2023. 5. 8. 10:56

 

  ● 저자: 홍창수

  ● 페이지: 264

  ● 판형: 152*223

  ● 도수: 2도

  ● 정가: 22,000원

  ● 발행일: 2023년 5월 15일

  ● ISBN: 979-11-982686-4-8 93000

 

 

 

 [오탈자 사이트]  

 

 

[강컴] [교보] [반디] [알라딘] [예스24] [인터파크]

 

_도서 내용

이 책은 챗GPT를 활용하여 데이터 분석 언어를 학습하고, 코딩 실전에 활용하여, 커리어 코칭을 받아 가장 빠르게 데이터 분석 전문가가 될 수 있는 방법을 알려준다. 또한, 코딩 실전에서는 코드 작성, 데이터 전처리, 코드 자동 완성, 코드 설명, 코드 변환, 코드 최적화, 코드 디버깅, 단위 테스트, 감성 분석, 기술 문서 작성 등 챗GPT를 활용하여 다양하게 코딩에 사용할 수 있는 방법을 소개하고 있다. 특별부록으로 데이터 과학 분야 언어별 챗GPT활용 프롬프트를 수록하였다.

 

_대상 독자

현재는 비교적 오류 있는 응답을 하는 챗GPT5년 안에 기술이 발전되어 오류가 거의 없는 문장 생성과 코드를 생성할 것으로 기대된다. 인공지능과 자동화 기술에 따라 데이터 과학자의 업무가 빠르게 대체될 것이며, 이때 가장 타격을 받을 사람들이 주니어가 될 것이다.

앞으로 코드 생성은 챗GPT와 같은 거대언어모델(LLM)이 진행하고 코드 리뷰를 할 수 있는 시니어 인원만 있으면 되기 때문에 신입 직원과 주니어 인원이 챗GPT로 대체될 가능성이 높다. 이에 대한 대비로 챗GPT를 활용하여 가장 빠르게 데이터 분석 전문가로 도약할 수 있는 방법을 제시하고 있어, 주니어인 경우 챗GPT를 활용하여 전문성, 독창성, 도메인 전문지식을 빠르게 학습하고 시니어와 대등하게 인공지능을 활용하여 더 높은 수준의 분석과 생산성을 높일 수 있을 것이다.

이 책이 그런 일에 조금이라도 일조를 한다면 책을 저술한 저자로서 큰 보람일 것이다.

 

_목차

 

프롤로그

추천사

 

DAY 1_ 마법과 같은 챗GPT에 대해 알아보자

1. GPT는 문과와 이과 통합형 인재다

2. GPT는 글쓰기와 프로그래밍 혁명이다

3. GPT는 무엇인가

_3.1 GPT의 발전과정: 트랜스포머에서 GPT4까지

_3.2 GPT는 어떤 분야에 적합한가

_3.3 GPT는 언어 모델이다

_3.4 GPT 이해를 위한 세 가지 개념

4. 알파고와 챗GPT는 강화학습이 핵심이다

5. 맥락을 구별하는 질의어 생성이 핵심인프롬프트 엔지니어는 무엇인가

6. GPT 활용을 위한 핵심 용어를 알아보자

7. GPT는 기업용보다 개인 맞춤형 인공지능 비서로 활용하자

8. 직장인의 미래는프롬프트 엔지니어가 될 것이다

9. GPT 프롬프트 시장은 활황 중이다

10. 일반인공지능의 가능성을 생성형 AI가 열었다

11. 생성 인공지능은멀티모달로 가고 있는 중이다

12. 우문을 하고 현답을 기대하지 마라

13. 현재 발생하고 있는 정보는 알 수 없다

14. 인공지능 기업의 전략 : 기반 모델에서 도메인 특화 모델까지

15. 월가에서 챗GPT를 금지하는 이유는 신뢰성과 보안 문제때문이다

16. 데이터분석가를 위한 챗GPT 활용

17. 데이터과학 교육에 적극 활용한다

18. 노코딩, 로코딩, 그리고 코파일럿

19. 〔마이크로소프트〕 365 코파일럿은 사무자동화를 위한 게임 체인저가 될 것이다

 

DAY 2_ GPT의 기본 활용법을 알아보자

1. GPT 기본활용법: 미세조정하여 질의하고 응답에 대해 미세조정한다

2. 자연어 처리: 질의(프롬프트)에 따른 텍스트를 생성한다

3. 문장 요약, 패러프레이징, 다국어 번역

_3.1 문장 요약

_3.2 패러프레이징

_3.3 다국어 번역

4. 콘텐츠 생성 마스터: 블로그, 유튜브, SNS 생성을 통한 수익창출

더보기

5. 새로운 책, 강의, 비즈니스 기획 보조로 활용하자

_5.1 새로운 책

_5.2 새로운 강의

_5.2 새로운 비즈니스

6. GPT로 제안서 작성하기: 데이터분석 관련 컨설팅 제안서 작성

7. 엑셀 업무 활용

_7.1 엑셀 실전 활용: GPT를 활용하여 엑셀에서 수식 작성 방법

_7.2 엑셀 VBA를 활용한 업무자동화

_7.3 엑셀 VBA를 활용한 업무자동화 실전 예제 83

 

DAY 3_ GPT를 통해 전문 교육을 받아보자

1. GPT의 등장은프로그래밍의 종말을 뜻하는가

2. GPT를 코딩에 활용하는 방법

3. GPT는 어떻게 프로그래밍을 할 수 있는 코딩 기능을 갖추게 되었나

4. 파이썬과 R 언어: 데이터분석을 위한 오픈소스 언어의 활용 방안

_4.1 데이터과학 코딩과 학습은 챗GPT DIY하자

_4.2 20달러로 학습과 업무역량을 증강시키자

5. 구글 코랩으로 파이썬을 마스터하자

6. GPT를 활용한 파이썬 교육

_6.1 데이터과학을 위한 통계 학습

_6.2 파이썬을 활용한 통계 실습

7. GPT를 활용한 머신러닝 교육

8. GPT를 활용한 R 프로그래밍 학습

9. GPT를 활용한 SQL 학습

_9.1 GPT에서 오라클에서처럼 SQL 실습하기

_9.2 SQL 실전 활용법

10. GPT를 활용한 파이썬 기초 활용법

 

DAY 4_ GPT를 코딩 실전에 활용해 보자

1. 코드 작성

2. 데이터 전처리

3. 코드 자동완성

4. 코드 설명

5. 코드 변환

6. 코드 최적화

7. 코드 디버깅

8. 단위 테스트

9. 코딩 테스트 실전문제 풀이 및 문제출제

10. 감성분석: 긍정 및 부정을 통한 심리분석

11. 기술문서 작성

 

 

DAY 5_금융 데이터분석 실전에 활용하자

1. GPT가 퀀트 트레이딩 책을 쓰다

2. GPT는 퀀트분석과 퀀트 트레이딩에도 활용할 수 있다

_2.1 퀀트투자란 무엇인가

_2.2 퀀트투자를 위한 금융데이터의 유형

_2.3 퀀트투자를 위한 금융데이터 수집하기

_2.4 단말기 및 홈페이지를 통한 엑셀 다운로드

_2.5 파이썬 금융 라이브러리

2.6 웹크롤링

2.7 퀀트투자 기초와 개념 학습

2.8 추세추종 전략의 기초: 모멘텀과 이동평균

3. GPT를 활용한 자산관리 활용: 로보어드바이저를 대체한다

[참고 1] GPT를 활용한 블록체인과 스마트 컨트랙트 활용

[참고 2] GPT를 이용하여 자동매매시스템을 구축해보자

 

 

DAY 6_ GPT에게 데이터전문가 커리어코칭을 받자

1. 이력서와 자기소개서 작성 및 개선

: 작성보다는 개선에 많은 코칭을 받자

_1.1 커리어 코칭

_1.2 예상 면접 질문

 

 

DAY 7_ AI과 함께 하는 데이터 과학자의 미래

1. GPT는 데이터 과학자를 대체할 수 있는가

_1.1 증강형 데이터 과학자의 탄생

2. GPT를 활용에 발생할 수 있는 여러 문제

_2.1 저작권 문제

_2.2 보안 및 저작권 문제

_2.3 오토파일럿이 될 때까지는 코파일럿으로 활용하자

3. 데이터 과학자의 미래: 처음에는 주니어를 대체하게 될 것이다

_3.1 GPT 시대 유망 기업

_3.2 코딩은 중요하지 않게 된다: 좋은 질문을 던지는 인재를 양성하자

_3.3 GPT는 일반인공지능(AGI)의 서막을 열고 있다

 

부록. 데이터과학 분야 언어별 챗GPT 활용 프롬프트

01 파이썬 입문

02 데이터과학: 기초통계와 데이터분석 입문

03 데이터과학: 인공지능, 머신러닝, 딥러닝

04 R 언어 입문

05 SQL

06 VBA

07 금융데이터 분석

07 금융데이터 분석

 

찾아보기

 

 

 

주요 내용

 

GPT

문이과 통합형 인재이며,

글쓰기와 프로그래밍 혁명이다.

 

이제 전문가가 되는 법이 달라진다!

GPT를 사용한 데이터 분석 학습과 실전용 치트키(공략집)

 

데이터 분석을 위한 필수 언어와 클라우드 플랫폼을 중심으로 기초 통계에서 머신러닝과 딥러닝에 관한 데이터 학습과 실전을 경험해볼 수 있도록 구성했다.

 

 

데이터 분석 대가들이 추천한 책

 

"우문을 하고 현답을 기대하지 마라"라는 격언은 이 책의 중요성을 간결하게 전달합니다. ChatGPT를 활용하여 프로그래밍, 금융 데이터 분석, 커리어 코칭 등 다양한 주제에 대한 현실적인 질문과 답변의 예시들을 소개합니다.

_김성훈, 홍콩과기대 컴퓨터 공학과 교수

 

저자가 인용한 '충분히 발달한 과학 기술은 마법과 구별할 수 없다' SF 소설의 거장인 아서 C. 클라크의 말처럼 지금의 챗GPT 광풍과 마법이 나란히 언급된 이유를 알게 해주는 책입니다. ‘마법’처럼 끝까지 술술 읽히며 금융공학과 인공지능, 그리고 지금의 AI 트렌드를 하나씩 과장되지 않게 차분하게 잘 풀어냈습니다.

_오순영, KB국민은행 금융AI센터장

 

금융전문가인 저자는 금융 데이터의 처리와 분석, 금융공학의 실무적인 내용들과 함께 ESG, 블록체인, AI 이슈 등과 같은 주제들을 폭넓게 다루며 챗GPT를 사용한 프롬프트 엔지니어링을 알려줍니다. 금융 업무와 학습에 챗GPT를 활용하고자 하는 분들에게 길잡이가 될 것입니다.

_박진문, 유로인스트루먼츠 대표이사

 

GPT를 기본 업무, 코딩, 데이터 분석 등에 활용하는 과정을 친절히 설명하고 있어, GPT에 대한 관심이 있는 여러 독자에게 큰 도움이 될 것 같습니다. 책 곳곳에서 저자의 풍부한 경험이 빛을 발하고 있습니다. 새로운 AI 시대를 준비하고자 하는 모든 분들에게 추천합니다.

_최선용, 가천대학교 금융수학과 교수

 

데이터분석에 관해 코딩 교육, 코딩 실전, 커리어 관리, 금융데이터분석에 대한 폭넓은 내용을 담고 있어, 데이터 분석 분야에 입문하고자 하는 사람들부터 이미 경험이 있는 전문가까지 모두에게 유용한 책입니다. 아울러, 금융 데이터 분석에 대한 전문 지식도 함께 제공하여, 데이터 분석과 컨설팅 분야에 입문하고 성장하고자 하는 사람에게 지침서로 안성맞춤입니다.

_이대희, 딜로이트 안진회계법인 상무

 

데이터 분석 분야에서 가장 빠르게 성장하고 있는 기술 중 하나인 ChatGPT의 활용법을 자세하게 안내하고 있습니다. 특히, 데이터 분석의 기초부터 심화까지 다양한 내용을 다루며, ChatGPT를 활용한 데이터 분석 방법과 실제 활용 사례를 다양하게 제시합니다.

_배원성, 쿼터백그룹 R&D 총괄

 

나의 연구분야에 어떻게, 얼마나, 어느 정도까지 챗GPT를 활용할 수 있을지에 대해 막연한 의문을 가지고 있었으나, 이 책으로 인해 그 활용법을 확실히 확인할 수 있었습니다. 실제 금융데이터 분석을 하는 분야에서 일하거나, 관련분야에 관심이 많은 분들이 챗GPT를 활용하기에 앞서 꼭 일독 하시길 권하고 싶습니다. 당분간은 가까이에 두고 자주 찾아보게 되는 책이 될 것입니다.

_임순영 박시, 한국거래소 증권파생상품연구센터

 

 

 

_저자 소개

지은이 ­­­ 홍창수

경북대학교에서 재무전공으로 경영학 석사학위를 받고, 한국외대에서 “장외개별주식옵션의 내재변동성 실증분석”으로 경영학 박사학위를 받았다. 2000년 외환선물㈜ 투자공학팀 애널리스트로 첫 직장생활을 시작한 이후로, 리딩투자증권 파생상품운용팀 옵션딜러, 한국투자증권 리스크관리부 리스크퀀트로 근무했다. 한화투자증권에서 장외파생상품경영인가 취득에 참여한 이후 금융공학팀, OTC파생팀에서 장외파생상품 담당 차장으로 근무했다. 이후 금융자산평가회사인 NICE P&I㈜ 금융공학연구소 실장으로 근무했으며, 현재는 정보사업본부에서 장외파생상품 및 리스크관리 관련 금융공학컨설팅 업무를 수행하고 있다.

지은 책으로는 <장외파생상품 실무입문>(서울경제경영, 2014), <퀀트의 세계>(에이콘출판, 2022)이 있으며, 번역서로는 <퀀트 투자를 위한 머신러닝ㆍ딥러닝 알고리즘 트레이딩>(에이콘출판, 2021)이 있다. SCI급 저널인 PLOS ONE을 비롯 국내 유수의 재무금융 및 경영 학술지인 증권학회지, 재무관리연구, 금융공학연구, 경영연구 등에 재무 및 파생상품 관련 논문을 게재했다. 중앙대학교에서 금융공학융합전공 강사로 ‘금융공학 실습’ 과목을 강의했으며, 한국금융공학회 산학협력위원으로 활동했다.

 

_상세 이미지

                                                                                                _

 

posted by 로드북
: