| 000 | 00000cam c2200205 c 4500 | |
| 001 | 000046185639 | |
| 005 | 20241004163019 | |
| 007 | ta | |
| 008 | 240930s2024 ggkad 001c kor | |
| 020 | ▼a 9791193926468 ▼g 93000 | |
| 035 | ▼a (KERIS)BIB000017101854 | |
| 040 | ▼a 211062 ▼c 211062 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h jon |
| 082 | 0 4 | ▼a 006.3 ▼2 23 |
| 085 | ▼a 006.3 ▼2 DDCK | |
| 090 | ▼a 006.3 ▼b 2024z44 | |
| 100 | 1 | ▼a 小野哲 |
| 245 | 1 0 | ▼a 소프트웨어 개발에 ChatGPT 사용하기 / ▼d 오노 사토시 지음 ; ▼e 김진호 옮김 |
| 246 | 1 | ▼i 판권기표제: ▼a ChatGPT를 소프트웨어 개발에 사용할 수 있을까 |
| 246 | 0 3 | ▼a 챗GPT를 활용한 프로그래밍부터 리팩터링, 문서 자동화, ChatGPT API, 랭체인까지 |
| 246 | 1 9 | ▼a ソフトウェア開発にChatGPTは使えるのか : ▼b 設計からコーディングまでAIの限界を探る |
| 246 | 3 | ▼a Sofutōea kaihatsu ni chatto jīpītī wa tsukaeru noka : ▼b sekkei kara kōdingu made ēai no genkai o saguru |
| 260 | ▼a 파주 : ▼b 제이펍, ▼c 2024 | |
| 300 | ▼a xx, 351 p. : ▼b 삽화, 도표 ; ▼c 25 cm | |
| 500 | ▼a 색인수록 | |
| 700 | 1 | ▼a 김진호, ▼e 역 |
| 900 | 1 0 | ▼a 오노 사토시, ▼e 저 |
| 900 | 1 0 | ▼a Ono, Satoshi, ▼e 저 |
| 945 | ▼a ITMT |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 중앙도서관/제2자료실(3층)/ | 청구기호 006.3 2024z44 | 등록번호 111902197 (2회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
챗GPT가 처음 등장했을 당시 충격을 뒤로하고 개발자들은 챗GPT가 가져올 가능성과 영향에 대해 고민했고, 그 결과 수많은 활용법이 쏟아져나왔다. 그리고 단어 몇 개만으로 실사 영상을 제작할 수 있는 단계까지 왔다. 2022년 11월 등장한 이후로 불과 2년도 안 된 사이에 벌어진 일이다. 이제 개발자는 기존 개발 방식이 AI의 등장으로 어떻게 변화할지 준비해야 한다.
이 책은 개발 경력 40년이 넘는 저자가 혁신적인 기술인 챗GPT를 실무에서 어떻게 활용할 것인지 치열하게 고민한 결과를 담았다. 코드 생성은 물론이고, 프로토타이핑, 테스트 주도 개발, 디버깅 등의 개발 프로세스와 각종 방법론을 결합하는 방법, 문서 작성과 애플리케이션 개발 시 활용법 등 수많은 질문과 답을 챗GPT와 주고받는다.
2025 세종도서 학술부문 선정 도서
성장하는 개발자가 되기 위해 챗GPT와 페어 프로그래밍 잘하는 방법
챗GPT가 처음 등장했을 당시 충격을 뒤로하고 개발자들은 챗GPT가 가져올 가능성과 영향에 대해 고민했고, 그 결과 수많은 활용법이 쏟아져나왔다. 그리고 단어 몇 개만으로 실사 영상을 제작할 수 있는 단계까지 왔다. 2022년 11월 등장한 이후로 불과 2년도 안 된 사이에 벌어진 일이다. 이제 개발자는 기존 개발 방식이 AI의 등장으로 어떻게 변화할지 준비해야 한다.
이 책은 개발 경력 40년이 넘는 저자가 혁신적인 기술인 챗GPT를 실무에서 어떻게 활용할 것인지 치열하게 고민한 결과를 담았다. 코드 생성은 물론이고, 프로토타이핑, 테스트 주도 개발, 디버깅 등의 개발 프로세스와 각종 방법론을 결합하는 방법, 문서 작성과 애플리케이션 개발 시 활용법 등 수많은 질문과 답을 챗GPT와 주고받는다.
1장에서는 챗GPT의 기본 개념과 작동 방식을, 2장에서는 자동 코드 생성, 오류 처리, 다지인 패턴 구현 등 챗GPT를 활용해 효율적으로 프로그래밍하는 방법을 소개한다. 3장에서는 챗GPT로 함수 분할, 변수명과 함수명 개선, 중복 코드 제거와 같은 리팩터링하는 방법뿐만 아니라 주석 작성과 문서화하는 방법까지 다루며, 4장에서는 챗GPT로 파워포인트, 엑셀, 워드 등의 문서를 자동으로 생성하고, 파이썬 라이브러리인 diagrams로 클라우드 구성도를 작성해본다.
5장에서는 도메인 주도 개발, 테스트 주도 개발 등 다양한 개발 방법론을 챗GPT에서 활용하는 방법을 알아보고, 6장에서는 Go, 러스트 등 프로그래밍 언어를 통해 학습할 때 챗GPT를 어떻게 활용할 것인지 살펴본다. 7장에서는 오픈AI가 제공하는 ChatGPT API의 기본적인 사용법과 설정 방법을 설명하면서 웹서비스에 챗GPT 기능을 호출해본다. 8장에서는 장문 데이터를 챗GPT로 생성하고 분석하는 방법을 라마인덱스 라이브러리를 사용하여 알아본다. 마지막으로 9장에서는 랭체인의 기본 개념과 구조를 알아보고, 랭체인의 에이전트와 챗GPT 기능과 결합한 프로세스 자동화 방법을 제시한다.
다양하고 유용한 챗GPT 활용법을 담은 이 책을 다 읽고 나면, 챗GPT를 페어 프로그래밍 동료로 활용하여 개발 효율성을 극대화하고 품질 높은 소프트웨어를 개발할 수 있게 될 것이다.
주요 내용
ChatGPT API 활용하기
라마인덱스, 랭체인으로 장문의 데이터 처리하기
랭체인으로 프로세스 자동화하기
코드 작성, 오류 대책 등 프로그래밍하기
주석, 예외 처리 개선 등 리팩터링하기
파워포인트, 워드, 엑셀 등 문서 작성하기
러스트, Go 등 프로그래밍 언어 학습하기
DDD, TDD 등 개발 방식과 연계하기
정보제공 :
저자소개
오노 사토시(지은이)
소프트웨어 개발 이력만 40년이 넘는 베테랑 기술자. 저서로는 <소프트웨어 개발에 ChatGPT는 쓸만한가?(ソフトウェア開?にChatGPTは使えるのか?)>, <역산식 SQL 교과서(逆算式SQL?科書)>, <최신 도해 데이터베이스의 모든 것(最新?解 デ?タベ?スのすべて)>, <3스텝으로 확실히 배우는 Oracle 입문(3ステップでしっかり?ぶ Oracle入門)>, <MCP입문-생성 AI 앱 본격 개발(MCP入門―生成AIアプリ本格開?)> 등이 다수. 웹 앱부터 데이터베이스까지 폭넓은 지식과 기술을 지니고 있으며, 최근에는 파이썬 AI 관련, IoT 관련 시스템 개발 업무를 주력으로 하고 있다.
김진호(옮긴이)
26년 차 소프트웨어 개발자로 SK텔레콤에서 싸이월드, 티맵 등의 모바일 설루션을 개발했으며, 사우디아라비아 등 중동의 여러 국가, 인도네시아, 멕시코에서 서버부터 단말기에 이르는 은행 결제 시스템을 개발해왔다. 이후 K팝, 블록체인, 애자일 설루션 등 다양한 분야의 업체에서 CTO와 개발 이사를 역임했으며, 지금은 헬스케어 플랫폼 업체에서 CTO로서 새로운 플랫폼을 개발하고 있다. 저서로는 《실전 안드로이드 프로그래밍》, 《갤럭시 S & 안드로이드폰 완전정복》, 《갤럭시 S 안드로이드폰 어플 활용 백서》, 《입문자를 위한 Windows CE Programming》 등이 있으며, 번역서로는 《디자인 패턴의 아름다움》, 《컴퓨터 밑바닥의 비밀》, 《파이썬 코딩의 기술 51》, 《소프트웨어 개발에 ChatGPT 사용하기》, 《프롬프트 엔지니어링의 비밀》, 《7가지 프로젝트로 배우는 LLM AI 에이전트 개발》이 있다.
목차
옮긴이 머리말 x 베타리더 후기 xii 시작하며 xiv 감사의 글 xvi 이 책에 대하여 xvii CHAPTER 1 ChatGPT로 할 수 있는 것은 무엇일까? 1 1.1 ChatGPT로 무엇을 할 수 있을까? 2 __1.1.1 ChatGPT를 비서로 5 __1.1.2 ChatGPT를 내 동료로 7 __1.1.3 개발 프로세스에서 ChatGPT 활용하기 8 1.2 어떻게 가능할까? 10 __1.2.1 트랜스포머의 탄생 10 __1.2.2 간단하게 살펴볼까요? 11 __1.2.3 토큰의 분해와 순서 부여 12 __1.2.4 주의 집중이란 13 __1.2.5 단일 주의 집중과 복수의 주의 집중 15 __1.2.6 부호기에 의해 생성된 문맥을 복호기에 연결하기 17 __1.2.7 더 이상 두렵지 않다! Attention Is All You Need 18 __1.2.8 GPT는 어떻게 문장을 생성하는 것일까? 19 CHAPTER 2 프로그래밍에서의 활용 23 2.1 자동 코드 작성 24 __2.1.1 이해는 하지만 잘하지 못하는 것을 맡기기 25 __2.1.2 작게 쪼개서 요청하기 28 __2.1.3 함수에 대한 테스트 코드도 함께 생성하기 31 __2.1.4 단계별로 쌓아 올리기 33 2.2 오류 대책 33 __2.2.1 오류 대책의 기본 33 __2.2.2 오류가 계속 반복되는 경우에 대한 대응 방법 35 __2.2.3 그래도 오류가 해결되지 않는다면 35 2.3 클래스화에 대하여 36 __2.3.1 클래스 구성도로부터 코드 생성 접근하기 40 2.4 상태전이표로 코드 생성하기 43 __2.4.1 상태전이표로부터 코드 생성 접근하기 44 2.5 디자인 패턴 제안받기 50 __2.5.1 적합한 디자인 패턴 찾기 52 2.6 알고리즘 제안받기 54 2.7 단계별로 쌓아 올리기 70 2.8 코드 변환 80 __2.8.1 SQL 버전이 달라도 두렵지 않다 81 __2.8.2 다른 프로그래밍 언어(또는 여러 개의 언어)도 쉽게 배울 수 있다 83 __2.8.3 다른 언어에서도 작동하는 코드로 변환하기 86 __2.8.4 이것까지 된다고? 90 2.9 테스트 케이스에서 주의할 점 93 CHAPTER 3 리팩터링에서의 활용 95 3.1 자투리 시간에 가볍게 리팩터링하기 97 __3.1.1 함수 분할 97 __3.1.2 변수 이름과 함수 이름의 개선 99 __3.1.3 중복 제거 100 3.2 주석과 문서화 102 __3.2.1 인라인 주석을 추가해달라고 하기 102 __3.2.2 함수 문서를 추가해달라고 하기 104 3.3 보안 취약성 확인 107 3.4 예외 처리와 논리 완전성 개선 112 __3.4.1 예외 처리 개선 112 __3.4.2 논리 완전성 확인과 개선 114 CHAPTER 4 문서의 자동 작성 117 4.1 파워포인트 슬라이드 자동 작성 118 4.2 워드 문서 자동 작성 124 4.3 엑셀 연계 문서 자동 작성 127 4.4 diagrams를 사용한 클라우드 구성도 작성 134 4.5 dbdiagram.io에 의한 개체 관계 구성도 작성 139 CHAPTER 5 각종 개발 방법의 제안 145 5.1 도메인 주도 설계와 구현 147 5.2 테스트 주도 개발에 의한 테스트 기반 구현 165 5.3 ChatGPT와 소프트웨어 개발의 접근 방식 175 CHAPTER 6 학습 과정에서의 활용 177 6.1 분야별 학습 178 __6.1.1 학습 체험을 시작하면서 179 __6.1.2 [Step 1] 학습 영역 범위 좁히기 179 __6.1.3 [Step 2] 학습 테마 결정 181 __6.1.4 [Step 3] 생성 코드로 직접 체험하는 학습 183 __6.1.5 [Step 4] 코드 학습 뒤 확인 작업 189 __6.1.6 [Step 5] 더욱 깊이 파고들어 의미 이해하기 190 __6.1.7 [Step 6] 현실 응용을 위해 함수 깊이 파고들기 190 __6.1.8 [Step 7] 소크라테스의 가정교사(GPT-4 전용) 192 __6.1.9 [Step 8] 무한 대화를 무기로 삼아 193 6.2 프로그래밍 언어 학습 194 __6.2.1 [Step 1] 대상 언어의 특징 이해하기 195 __6.2.2 [Step 2] 작동 환경 구축 196 __6.2.3 [Step 3] 언어 치트시트 작성하기 198 __6.2.4 [Step 4] 빌드 이해하기 199 __6.2.5 [Step 5] 소크라테스 대화법으로 정리 205 6.3 학습 속도를 높이는 ChatGPT 206 CHAPTER 7 ChatGPT API의 활용 207 7.1 가장 기본적인 사용 방법 208 __7.1.1 API 키 발급 208 __7.1.2 가장 간단한 코드 211 __7.1.3 결과를 스트림으로 표시하기 213 __7.1.4 챗봇화하기 214 7.2 요약으로 문맥 연결하기 216 7.3 자연어로 사내 데이터베이스 질의하기 222 7.4 사내 데이터베이스와 연계한 사용자 지원 232 __7.4.1 역할을 분담시키기 232 CHAPTER 8 ChatGPT로 장문 데이터 다루기 245 8.1 LlamaIndex로 장문 데이터 처리 247 __8.1.1 장문의 외부 데이터와의 연계 체험하기 247 __8.1.2 어떤 원리로 작동하는가 256 __8.1.3 적재기 사용하기 256 8.2 랭체인으로 장문 데이터 처리 261 __8.2.1 색인 저장과 적재 266 __8.2.2 적재기 사용하기 268 __8.2.3 장문을 ChatGPT에서 취급할 때의 요령 271 CHAPTER 9 랭체인을 이용한 과정 자동화 275 9.1 랭체인 구조 276 9.2 Chains로 작업 연결하기 278 __9.2.1 일단 사용해보기 279 __9.2.2 단독 체인으로 질의하기 280 __9.2.3 단독 체인을 연결해보기 282 __9.2.4 SimpleSequentialChain으로 한 번에 연결하기 285 __9.2.5 SequentialChain으로 여러 개의 결과 얻기 287 9.3 Chains 기반의 챗봇 예제 290 __9.3.1 랭체인을 이용한 기본적인 챗봇 291 __9.3.2 SQL 질의 방법 293 __9.3.3 챗봇 구현 296 9.4 Agent를 이용한 코드 실행 304 __9.4.1 파워포인트 자동 작성 304 __9.4.2 diagrams를 사용한 클라우드 구성도 자동 작성 307 __9.4.3 그래프 자동 작성 309 9.5 Agent를 이용한 판단/실행/과정 자동화 311 __9.5.1 자동으로 퍼즐을 푸는 간단한 예 311 __9.5.2 웹 검색에 대응하기 316 __9.5.3 색인 데이터베이스 검색 통합하기 319 __9.5.4 PDF 문서 검색하기 322 __9.5.5 여러 개의 색인 데이터베이스를 각각 별도의 도구로 생성하기 324 __9.5.6 SQL 데이터베이스 검색 통합하기 329 9.6 Agent를 이용한 챗봇 최종형 332 __9.6.1 대화 예시 336 __9.6.2 그게 무슨 상관인데요? 342 마치며 343 찾아보기 346



