신간소개 2023. 4. 17. 17:00

  ● 저자: 전상현

  ● 그림: 미친감자(不狂不及)

  ● 페이지: 432

  ● 판형: 172*224

  ● 도수: 1도

  ● 정가: 30,000원

  ● 발행일: 2023년 4월 20일

  ● ISBN: 979-11-982686-3-1 93000

 

 [오탈자 사이트]  [예제소스]

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

_도서 내용

이 책은 현업에서 C++ 개발자로 일하고 있는 독자를 위한 책이다. 저자가 20년동안 개발하면서 풀기 힘들었던 문제들을 어떻게 해결할 수 있었는지를 정리해서 다른 개발자들은 좀 덜 헤매고 재밌게 개발할 수 있는 노하우를 가득 담아 놓았다. 목차만 자세히 보아도 개발하면서 부딪히는 문제들로 가득하다는 것을 알 수 있을 것이다. “C++은 모든 것의 보이지 않는 기반이라는 말이 있을 정도로 시스템의 핵심 구성요소에서 정말 중요하며 아직도 매력적인 C++ 개발자들에게 유익한 책이 될 것이다.

 

_대상 독자

선수지식은 다음과 같다.

_C 언어와 C++ 문법

_객체지향 프로그래밍

_UML

_자료구조와 및 알고리즘

_네트워크 구조

_소켓 프로그래밍

_시스템 API

위의 내용을 학습한 (예비) 개발자를 대상으로 하는 책이다.

[주의] 만화와 같이 재밌는 그림들이 툭툭 튀어나온다고 해서 만화 책은 결코 아니다. 초보자를 위한 쉬운 책은 더욱 아니다. 20년간 C++을 해온 저자가 정말 쉽게 알려주고 싶은 핵심 비급 노트 같은 책이다.

 

 

_목차

 

작가의 말

 

Chapter 1_ 시작하기

1.1 여행을 떠나기 전에

1.2 왜 코딩을 잘해야 하는가

1.3 소스파일이 난잡해서 정신이 혼미해요

1.4 내가 만든 exe를 친구가 실행할 수 없어요

1.5 과제로 제출한 소스코드 용량이 수백메가?

1.6 저는 윈도우즈에서만 개발합니다

1.7 재사용 가능한 코드란 무엇인가

1.8 더 이상 파이썬을 모욕하지 마라

1.9 코드가 길어지면 현기증이 나요

1.10 잘 배운 STL 하나, 열 알고리즘 부럽지 않다

1.11 C++의 보물, 스택 메모리

1.12 정적변수로 묘수를 두자

1.13 프로그램은 데이터를 가공하는 것뿐이다

1.14 스레드로 팀 플레이를 배우자

1.15 소켓 프로그래밍으로 네트워크 세계를 누비자

 

Chapter 2_ 소스코드 관리기술

2.1 처음에는 깨끗하게 비우는 것부터

2.2 공통 헤더파일 만들기

2.3 리소스파일 추가하기

2.4 산출물을 관리하기 위한 파일 정리 기술

2.5 빌드된 산출물 경로 관리하기

2.6 중요한 파일과 그렇지 않은 파일

 

Chapter 3_ 윈도우즈 빌드 옵션 이해하기

3.1 다양한 빌드 방법

3.2 구성과 플랫폼

3.3 일괄 빌드

3.4 구성 관리자

3.5 코드 생성(런타임 라이브러리)

3.6 컴파일러 버전(플랫폼 도구 집합)

3.7 문자 집합

3.8 여러 프로젝트 관리

3.9 여러 프로젝트 중 시작 프로젝트 설정하기

3.10 동적 라이브러리 실행 설정

3.11 미리 컴파일된 헤더

 

Chapter 4_ 리눅스와 맥을 위한 크로스플랫폼 빌드 - CMake

4.1 리눅스와 맥 플랫폼 빌드 환경의 특징

4.2 CMake의 동작원리

4.3 CMake 설정파일과 위치

4.4 프로젝트 타입의 설정파일 구성

4.5 솔루션 타입의 설정파일 구성

4.6 전체 빌드는 개별 빌드의 합이 아니다

4.7 두근두근, CMake 빌드 수행

4.8 CMake 빌드 시 주의사항

 

Chapter 5_ C++의 꽃, 정적 라이브러리 정복하기

5.1 함수의 집합인 프로그램

5.2 컴파일 및 링크 오류

5.3 오픈소스가 만드는 오류

5.4 정적 라이브러리 만들기

5.5 정적 라이브러리 가져다 쓰기

5.6 정적 라이브러리 배포하기

5.7 대체 왜 꽃인가

 

더보기

Chapter 6_ 오픈소스 사용하기

6.1 리눅스에서 오픈소스 빌드하기

6.2 OSX에서 오픈소스 빌드하기

6.3 윈도우즈에서 오픈소스 빌드하기

6.4 OpenSSL 빌드하기

6.5 SQlite 빌드하기

6.6 zlib 빌드하기

6.7 오픈소스 빌드하는 것을 두려워하지 말자

 

Chapter 7_ 긴 코드를 작성할 수 있는 기술

7.1 변수와 함수 네이밍

7.2 함수는 어떻게 나눌 것인가

7.3 클래스와 구조체 네이밍

7.4 클래스에 Manager라는 용어 피하기

7.5 For문에 사용하는 i, j, k 네이밍

7.6 파일 시스템과 Path 네이밍

7.7 전치사 From/To를 사용한 네이밍

7.8 조건문에서의 부등호 사용 기술

7.9 다양한 코딩 규칙

 

Chapter 8_ STL 자료구조 응용하기

8.1 자료구조의 개념적 이해

8.2 벡터와 그 응용

8.3 벡터를 동적 버퍼처럼 활용하기

8.4 리스트와 그 응용

8.5 맵과 그 응용

8.6 맵을 정렬 알고리즘처럼 활용하기

8.7 셋과 그 응용

8.8 유일한 항목으로 추릴 때 활용하기

8.9 문자열과 그 응용

8.10 STL 문자열의 단점들

8.11 STL의 일관성을 알아두자

 

Chapter 9_ 메모리 정복하기

9.1 이미 잘 알고 있는 힙 메모리

9.2 잘 알고 쓰면 너무나 훌륭한 스택 메모리

9.3 스택 메모리 크기의 한계

9.4 스택 메모리 침범 오류

9.5 스택 메모리 구조 이해하기

9.6 스택 메모리 가드

9.7 스택 메모리 현명하게 사용하기

9.8 링 메모리

 

Chapter 10_ 전역변수와 정적변수, 그리고 함수들

10.1 데이터 영역에 기록되는 변수

10.2 전역변수 이해하기

10.3 전역변수와 정적변수 그리고 extern 키워드

10.4 함수 안으로 범위를 한정하는 정적변수

10.5 전역함수와 정적함수

10.6 정적 멤버함수

10.7 정적 멤버변수

10.8 완벽한 싱글턴 패턴 구현하기

 

Chapter 11_ 데이터 정복하기

11.1 개념잡기

11.2 데이터 기획하기

11.3 포매터 설계하기

11.4 채널과 포매터의 공통 인터페이스

11.5 포매터와 구조체의 인터페이스

11.6 최상위 인터페이스 설계

11.7 최상위 인터페이스 구현

11.8 포매터 구현하기

11.9 포매터 사용하기

 

Chapter 12_ 멀티 스레드 정복하기

12.1 멀티 프로세스와 멀티 스레드

12.2 스레드 기능 나누기

12.3 스레드에 직접 데이터 넘겨주기

12.4 큐를 이용한 자료 교환

12.5 재사용 가능한 스레드

12.6 지시자-수행자 모델

12.7 생성자-소비자 모델

12.8 발행자-구독자 모델

 

Chapter 13_ 소켓 정복하기

13.1 소켓이란

13.2 소켓 프로그래밍의 시작

13.3 TCP 소켓 이해하기

13.4 TCP 서버 코드 작성하기

13.5 TCP 클라이언트 코드 작성하기

13.6 UDP 소켓 이해하기

13.7 UDP 서버 코드 작성하기

13.8 UDP 클라이언트 코드 작성하기

13.9 UDP 천공

 

Chapter 14_ 네트워크 정복하기

14.1 OSI 7 계층과 네트워크 패킷

14.2 패킷은 원자단위 데이터

14.3 TCP 패킷을 읽어오는 recv 함수의 비밀

14.4 UDP 패킷을 읽어오는 recvfrom 함수의 비밀

14.5 순서가 바뀌거나 유실되는 이유

 

Chapter 15_ 프로토콜 구현하기

15.1 이제 STX, ETX 개념은 졸업하자

15.2 프로토콜 기획하기

15.3 패킷 정의하기

15.4 패킷 헤더 선언

15.5 패킷 헤더와 패킷 결합, 패키타이저

15.6 데이터 패딩 문제와 패킷 최적화

15.7 가변 패킷을 위한 패키타이저

15.8 포매터를 이용한 가변 패키타이저

15.9 패킷 스타일에 따른 차이

 

Chapter 16_ 맺음말, 그리고 하고 싶은 이야기

16.1 집중과 각성의 기술을 이해하자

16.2 월급은 명성에 비례한다

16.3 방황하는 분을 위해서

찾아보기

 

 

주요 내용

 

C++ 20년 하면서 깨달은 것은 고급 개념이 아니라 기본적인 C++의 동작 원리와 문법이었다

 

불굴의 의지로 여기까지 왔습니다. 어떤 경우에는 회사의 일정에 쫓기는 와중에 2주나 걸려 간신히 해결한 문제도 있었고, 무려 5년 만에 알게 된 것도 있습니다. 그렇다고 그게 엄청나게 어려운 고급 개념이 아니라 기본적인 C++의 동작 원리나 문법들이었다는 게 저를 더 맥 빠지게 했습니다.

나는 이 지식들을 힘들게 얻었지만 여러분은 안 그랬으면 좋겠습니다. 재밌게 코딩했으면 좋겠습니다. 그리고 저보다 더 많은 지식을 또다시 후배들에게 나눠주었으면 합니다. 여러분이 힘들었던 부분이 되풀이되지 않게요. 그렇게 지속적으로 이어질 때 개발자들이, 그리고 나아가서는 인류가재미라는 본질에 충실하며 살게 될 것이라고 믿습니다.

 

_주요 내용

_여행을 떠나기 전 알아야 할 것들

_소스코드 관리 기술

_윈도우 빌드 옵션 이해하기

_리눅스와 맥을 위한 크로스 플랫폼 빌드 – CMAKE

_C++의 꽃, 정적 라이브러리 정복하기 

_오픈소스 사용하기

_긴 코드를 작성할 수 있는 기술

_STL 자료구조 응용하기 

_메모리 정복하기

_전역변수와 정적변수, 그리고 함수들  

_데이터 정복하기

_멀티 스레드 정복하기

_소켓 정복하기

_네트워크 정복하기

_프로토콜 구현하기

_집중과 각성의 기술, 월급은 명세에 비례한다, 방황하는 분들을 위해

 

 

_저자 소개

지은이 전상현

생각이 많고 사소한 것에도 의미를 부여하는 편입니다. 덕분에 프로그래밍과 어울리기 좋았던 것 같습니다.

C++로 게임, 멀티미디어, 보안 3개의 풀스택을 갖고 있습니다. 캐주얼 온라인 게임을 시작으로 365/24 동작하는 스트리밍 서버나 메일중계 서비스 등 지독하게 힘든 상용화를 여러 번 경험했습니다. 10년 전부터는 안랩과 인연이 닿아 APT 솔루션과 악성코드 분석엔진을 만들었고 그와 동시에 크고 작은 여섯 번의 창업 경험이 있습니다.

경영과 인재관리, 절차 등을 익혔으며, 최근 5년은 교육에 몸 담으며 후배 양성에도 힘쓰고 있습니다. 그리고 1년 전부터 제 이름을 걸고 시작한 일곱 번째 스타트업, 악성코드검거단을 창업했습니다. 세상에 유익할 무언가를 오늘도 만들어갑니다.

 

그린이 미친감자

전상현님을 만나 C++의 참맛을 알게 된 개발자 중 한 명입니다. 저 미친감자는 보안프로그램 개발 및 시스템 뻘짓(?)을 즐거워합니다. 시스템 개발자가 되길 원하신다면 이 책은 피가 되고 살이 될 것입니다.

 

_상세 이미지

                                                                                                _

posted by 로드북
:
오탈자 정보 2023. 4. 17. 16:59

2023년 4월 초판 발행 기준입니다.

posted by 로드북
:
자료실 2023. 4. 17. 16:57
posted by 로드북
:
신간소개 2022. 12. 12. 15:47

  

  ● 저자: 장무경

  ● 페이지: 584

  ● 판형: 사륙배변형(187*240)

  ● 도수: 2도

  ● 정가: 35,000원

  ● 발행일: 2022년 12월 26일

  ● ISBN: 979-11-978880-1-4 93000

 

 [오탈자 사이트] [예제소스 자료실]

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

 

_도서 내용

파이썬 문법, 알고리즘, 객체지향, 코딩의 기술을 한권으로 배울 수 있다. 문법 떼고 알고리즘 책 보고 객체지향 등을 따로 공부해야 하는 불편함을 없앴다. 셀프 스터디(Self Study)로 코딩을 공부하려는 학생을 위해 친절하게 설명하다 보니 글과 그림이 많은 책이다. 읽고 생각하고 그림으로 이해하고 코드를 만들어보며 문제 해결이라는 코딩의 목적에 맞게 파이썬을 배울 수 있다.

 

 

_대상 독자와 공부 방법

1. 가장 좋은 방법은 처음부터 끝까지 정독하며 하나하나 코드를 쳐보고 의미를 파악하는 것입니다.

2. 빠르게 파이썬 문법을 배우고자 하는 독자는 이 책의 3분의 1만 학습하면 됩니다. 최소한 10장의 자료구조까지만 익히면 파이썬의 기초는 뗄 수 있습니다.

3. 파이썬 기본 문법서를 이미 뗀 독자라면 10장 자료구조부터 읽어볼 것을 추천합니다. 이 책은 기초 문법 외에 알고리즘, 객체지향 및 코딩의 기술을 다루고 있기에 파이썬을 제대로 활용할 수 있도록 도움을 받을 수 있습니다.

 

_목차

 

저자 서문

파알객코(파이썬 알고리즘 객체지향 코딩의 기술)를 소개합니다

 

1장 코딩을 공부해야 하는 이유

컴퓨터를 이용해서 기계를 자동화합니다

소프트웨어가 하드웨어를 움직입니다

소프트웨어의 기본은 알고리즘입니다

컴퓨터 언어는 사람의 언어와 다르지 않습니다

그래서 우리는 이 책에서 이런 공부를 하려고 합니다

 

2장 파이썬을 설치하고 개발환경 갖추기

1단계: 파이썬을 설치합니다

2단계: 파이썬 가상환경을 설치합니다

3단계: IPython 개발도구를 설치합니다

IPython의 사용법을 간단하게 소개합니다

2장을 정리하겠습니다

 

3장 주피터 노트북을 설치하고 사용하기

주피터 노트북을 설치하겠습니다

주피터 노트북을 실행해보겠습니다

주피터 노트북의 사용법을 알아보겠습니다

3장을 정리하겠습니다

 

4장 변수와 함수로 구성되는 프로그램

사람의 언어와 컴퓨터 언어는 서로 다르지 않습니다

컴퓨터 프로그램은 IPO입니다

컴퓨터 명령문은 y=s.f(x) 형태로 만들어집니다

변수는 데이터의 이름, 함수는 프로세스의 이름입니다

4장을 정리하겠습니다

 

5장 데이터와 연산, 그리고 변수

변수란 데이터의 이름입니다. 그럼, 데이터는 무엇인가요?

데이터는 숫자, 문자, 불리언으로 구분할 수 있습니다

데이터의 연산을 살펴보겠습니다

숫자 데이터의 산술연산을 알아봅니다

데이터를 가리키는 이름을변수라고 부릅니다

리어사인먼트: 변수가 가리키는 값이 바뀝니다

변수명은 마음대로 짓는 것이 아닙니다. 규칙이 있습니다

5장을 정리하겠습니다

 

더보기

6장 입출력함수, input( ) print( )

파이썬은 기본적인 기능을 내장함수로 제공하고 있습니다

출력함수인 print( )를 알아보겠습니다

print( ) 함수에는 몇 가지 옵션이 있습니다

입력함수인 input( )을 알아보겠습니다

input( ) 함수와 형변환(Type Casting)

6장을 정리하겠습니다

 

7장 컨트롤구조의 개요

가장 기본적인 형태는 순차입니다

프로그램의 실행은 토큰의 흐름으로 설명할 수 있습니다

분기: “경우(조건)에 따라서라는 로직을 표현합니다

반복: “여러 번반복하는 로직을 표현합니다

조건: 조건식은 비교연산으로 만들어집니다

복합조건: 조건식을 연결하여 복잡한 로직을 표현합니다

7장을 정리하겠습니다

 

8장 분기를 나타내는 if

if: “~이면의 논리를 표현합니다

if~else: “그렇지 않으면의 논리를 표현합니다

if~elif~else: 세 개 이상의 경로를 표현합니다

8장을 정리하겠습니다

 

9장 반복을 위한 for문과 while

for 루프를 알아보겠습니다

while 루프를 알아보겠습니다

9장을 정리하겠습니다

 

10장 표준 데이터구조: 리스트, 튜플, 문자열, 딕셔너리

데이터를 메모리에 저장하고 참조하는 방법을 알아봅니다

리스트 데이터구조를 알아보겠습니다

튜플은 수정할 수 없는 리스트입니다

문자열은 문자들의 튜플입니다

딕셔너리의 형태는 key:value입니다

10장을 정리하겠습니다

 

11장 알고리즘 연습 파트 1

알고리즘은 문제해결 절차입니다

첫 번째 알고리즘 연습: 최댓값을 찾는 문제입니다

확장이 쉬운 알고리즘이 좋은 알고리즘입니다

최댓값 알고리즘을 응용해보겠습니다

11장을 정리하겠습니다

 

12장 알고리즘 연습 파트

여러 값의 합을 구하는 문제를 풀어봅니다

데이터 개수를 카운트합니다

프로그램 실행은 변수 할당의 연속입니다

12장을 정리하겠습니다

 

13장 알고리즘 연습 파트 3

선택정렬을 알아봅니다

거품정렬을 알아봅니다

문자열도 정렬이 가능합니다

13장을 정리하겠습니다

 

14장 알고리즘 연습 파트 4

아이디어 1: 최댓값을 찾아서 최솟값으로 대체한 후에 다시 최댓값을 찾습니다

아이디어 2: 오름차순으로 정렬했을 때 마지막에서 두 번째로 있는 값입니다

아이디어 3: 리스트의 각 값에 대해 자신의 값보다 큰 값의 개수를 세었을 때

그 개수가 1인 수가 두 번째로 큰 값입니다

아이디어 4: 두 번째로 큰 값은 max 값보다 작은 값 중에 가장 큰 값입니다

14장을 정리하겠습니다

 

15장 함수

함수는 def 키워드를 사용해서 정의합니다

함수는 알고리즘을 담는 그릇이 됩니다

함수의 호출은 토큰의 전달입니다

프로그램은 IPO로 만들어진 하나의 서비스입니다

인자와 반환값이 있는 함수를 만들어 보겠습니다

15장을 정리하겠습니다

 

16장 함수의 인자와 반환값

함수는 프로그램을 구성하는 기본 단위입니다

함수의 인자 전달을 알아보겠습니다

변수의 범위와 이름공간, 그리고 수명주기를 이해해야 합니다

인자 전달 방식에는 위치인자와 키워드인자, 그리고 디폴트인자가 있습니다

함수의 반환을 알아봅니다

16장을 정리하겠습니다

 

17장 코딩의 완성: 테스팅과 디버깅

첫 번째는 구문에러입니다

실행 중에 만나게 되는 런타임에러를 살펴봅니다

마지막으로 논리에러를 만나보겠습니다

먼저, 블랙박스 테스팅을 살펴보겠습니다

다음으로, 화이트박스 테스팅을 살펴보겠습니다

그럼, 실제로 디버깅은 어떻게 해야 하는 것일까요?

17장을 정리하겠습니다

 

18장 스크립트와 모듈 그리고 매직명령어

파이썬은 대화형 모드와 스크립트 모드로 사용할 수 있습니다

파일과 폴더(디렉터리)를 알아보겠습니다

매직명령어를 소개합니다

이제 모듈과 패키지를 알아봅니다

파이썬 스크립트를 실행합니다

18장을 정리하겠습니다

부록 A_ 노트패드++를 소개합니다

 

19장 객체의 개요

객체를 활용하여 행위의 주체를 표현할 수 있습니다

클래스와 객체 간의 의미를 구별하는 것이 객체 공부의 시작입니다

객체를 생성하고 객체와 커뮤니케이션해봅니다

객체의 정적인 속성은 인스턴스 변수로 표현됩니다

19장을 정리하겠습니다

 

20장 객체와 캡슐화

메서드의 호출은 실제로는 ECA로 동작합니다

자판기 예제로 객체 개발을 연습하겠습니다

인스턴스 변수에 대한 접근과 setter/getter 메서드를 알아봅니다

20장을 정리하겠습니다

 

21장 객체 간의 관계: 컴포지션과 상속

인스턴스, 정적, 클래스 메서드를 살펴봅니다

일급 객체와 데코레이터를 알아봅니다

객체 간의 관계 중 첫 번째로, 컴포지션입니다

두 번째로 상속관계를 알아보겠습니다

21장을 정리하겠습니다

 

22장 종합편: 최단경로를 찾는 다익스트라 알고리즘

먼저, 컴퓨터에서 도로를 어떻게 표현할 수 있을지 살펴보겠습니다

최단 경로의 의의를 알아보겠습니다

다익스트라 알고리즘을 알아보겠습니다

다익스트라 알고리즘을 구현하겠습니다

22장을 정리하겠습니다

부록 B_ 다익스트라 알고리즘의 전체 코드

 

23장 라이브러리와 패키지

라이브러리가 무엇인지 알아보겠습니다

패키지에 대해 알아보겠습니다

패키지도 모듈처럼 임포트할 수 있습니다

패키지도 모듈처럼 명령창에서 실행할 수 있습니다

독스트링을 통해 도움말을 제공합니다

23장을 정리하겠습니다

 

24장 파이썬 라이브러리: 터틀

터틀 모듈을 알아보겠습니다

그 외에 유용한 몇 가지 메서드를 소개하겠습니다

터틀 그래픽스를 이용해서 그림을 그려보겠습니다

터틀 그래픽스를 확장해보겠습니다

24장을 정리하겠습니다

 

25장 파이썬 라이브러리: 맷플롯립

맷플롯립을 시작합니다

맷플롯립에서 한글을 사용하려면 조금 준비가 필요합니다

여러 개의 Axes를 포함하는 Figure 객체를 생성합니다

그 외에 다양한 차트를 그릴 수 있습니다

pyplot 모듈을 잠시 소개하겠습니다

매직명령어 %matplotlib을 활용해봅시다

몇 가지 유용한 메서드를 소개하겠습니다

25장을 정리하겠습니다

부록 C_ 위치인자와 키워드인자, 그리고 키워드온리 인자

 

26장 파이썬 라이브러리: 판다스

시리즈 데이터 타입을 살펴보겠습니다

데이터프레임을 살펴보겠습니다

26장을 정리하겠습니다

 

찾아보기

 

 

주요 내용

 

파이썬으로 생각하고 표현하는 능력을 키운다

문제에 대해 알고리즘을 만들어낼 수 있다

객체지향의 의미를 이해하고 설계를 할 수 있다

다양한 코딩의 기술을 연마한다

 

이 모든 것을 단 한권으로 배운다!

 

[주요 내용]

코딩을 공부해야 하는 이유

파이썬 설치와 개발환경 설정

변수와 함수, 데이터 연산

입출력 함수, 컨트롤 구조

분기와 반복문

데이터구조: 리스트, 튜플, 딕셔너리

알고리즘 연습( 4개 파트)

함수에 관한 모든 것

코딩의 완성: 테스팅과 디버깅

객체 기술과 설계를 잘할 수 있는 법

종합 실습: 최단경로를 찾는 다익스트라 알고리즘

라이브러리와 패키지

주요 라이브러리 기초 완성: 터틀, 맷플롯립, 판다스

 

[베타리더 서평]

“내용도 내용지만, 단어 하나 문장 하나 허투루 표현하지 않아 놀라웠습니다. 그냥 따라해보는 것이 아니라, “~ 이래서 이렇게 되는구나"하는 것을 마지막 페이지까지 느낄 수 있었습니다.”

_김영우(컴퓨터학과 3학년생)

 

“프로그램의 실행을 토큰의 흐름으로 설명한 부분이나, 자주 등장하는 컴퓨터과학 지식, 코드의 내용을 그림으로 표현한 부분(100개는 넘는 듯합니다)은 압권이었습니다.”

_이상훈(개발자 취업 준비생)

 

“자료구조, 알고리즘, 객체지향을 함께 배울 수 있었습니다. 특히 마지막에 맷플롯립(Matplotlib), 판다스(Pandas)는 맛뵈기 수준이 아니라 라이브러리를 어떻게 활용하는지 확실하게 알려주는 내용이었습니다.”

_ 박재훈(주니어 개발자)

 

[저자서문]

 

이 책을 통해서코딩의 원리를 찾아보려고 합니다. 모든 것에는원리가 있습니다. 한 움큼 정도 될까요? 알고 나면 너무 단순하고 당연해서 허무할 정도입니다. 지금 우리가 공부하고 있는 모든 지식은역사상가장 쉽고 단순한 것입니다. 만약, 그렇지 않다면 우리의 아버지 세대 중 누군가가더 쉬운새로운 방법을 찾아냈을 테고 다음 세대인 우리는 그새롭고 쉬운방법으로 세상을 배우며 살고 있겠지요. 코딩도 마찬가지입니다. 이 책은 (그 한 움큼 겨우 될까 말까 한) ‘코딩의 진짜 원리를 같이 탐구하고자 만들었습니다. 컴퓨터 언어는 사람들이자신의 언어를 본떠서만든 것이어서, ‘우리말을 쓰는 데 문제가 없으면어려울 것이 전혀 없습니다. 사람의 언어와 정말 많이 닮아 있기 때문입니다.

 

또한 이 책은 셀프 스터디(Self Study)로 코딩을 공부하려는 학생을 위해 만들었습니다. 이러한 목적에 맞추다 보니 코딩과 관련한 책이지만 코드보다는 말()이나 그림이 많은 책입니다. 외국어를 배울 때 초반에 조금 어려움을 겪는 것처럼, 컴퓨터 언어도 하나의 언어이다 보니 초반을 쉽게 지나가기는 어렵습니다. 제대로 된 문장을 하나 만들려면 단어도어느 정도는알아야 하고, 문법도어느 정도는알아야 합니다. 한참 뒤의 챕터에서나 배울 내용들에 대한 지식이어느 정도는있어야 하는 경우도 많습니다. 그래서 처음 시작은 조금 까다롭습니다. (어느 분야나 마찬가지겠지만) 좋은 선생님이나 좋은 책이 필요한 이유입니다.

 

마지막으로 이 책은 파이썬 언어를 통해 알고리즘(algorithm), 함수(function), 그리고 객체(object) 기술을 공부하는 책입니다. 세상에 컴퓨터 언어가 정말로 많지만, 컴퓨터 언어의 원리는 똑같습니다. 가끔은 두세 개 컴퓨터 언어를 동시에 공부하는 학생들이 있는데, 이는 바람직하지 않습니다. 한 가지 언어만 마스터하면 다른 언어는 금세 마스터합니다. 그렇다면 무슨 언어로 시작할지가 고민이 되는데, 파이썬은 정말 괜찮은 선택입니다. 실제로 파이썬은 쉽게 시작할 수 있는 언어입니다(오해하면 안 됩니다. 언어 자체가 쉽다는 뜻이 아닙니다. 말 그대로 시작하기가 쉽다는 뜻입니다. 세상에 쉬운 언어, 어려운 언어가 따로 있는 것이 아닙니다). 게다가 파이썬은 코딩 이외에도 빅데이터 분석이나 인공지능 분야에서도 많이 활용되고 있어서, 코딩 공부를 시작하는 데 이만한 언어가 없는 것 같습니다.

 

코딩의 첫발을 여러분과 함께 하게 되어 정말 영광입니다. 이제코딩의 진짜 원리를 탐

구하기 위한 여정을 함께 떠나볼까요?

 

_저자 장무경

 

 

 

_저자 소개

지은이 ­­­

지은이 장무경

서울대학교 산업공학과를 졸업하고, 포스텍 산업경영공학과에서 인공지능(컴퓨터 비전)과 컴퓨터 활용으로 석, 박사 학위를 받았다. 한국국방연구원, 서울연구원에서 국방 M&S (Modelling & Simulation), 서울시 정보화 정책 등을 연구하다가 2009년부터 남서울대학교 빅데이터경영공학과 교수로 재직 중이다.

.

_상세 이미지

 

                                                                                                _

posted by 로드북
:
오탈자 정보 2022. 12. 12. 15:46

2022년 12월 초판발행 기준입니다.

 

_p.258

In[18]의 결과값: 50 -> 5

_p.216

In[12]의 1행

print(a) -> print(a, b)

posted by 로드북
:
자료실 2022. 12. 12. 15:45

아래 URL에서 확인하실 수 있습니다.

 

https://github.com/roadbookgit/pyalgocoding

posted by 로드북
: