본문 바로가기

카테고리 없음

전문가를 위한 C++ 5th

반응형

우리나라 언어에서 가장 오랫동안 사용하는 언어 중에 하나가 C++입니다.

오랜 역사만큼 수많은 레퍼런스가 있는데요.

처음 C언어가 만들질 당시 불렸던 K&R에서 출발해서 수많은 버전들이 만들어지고 C에서 C++ 언어가 만들어지기도 했습니다.

C++의 역사는 덴마크 출신의 컴퓨터 과학자 비야네 스트롭스트룹이 C언어에 클래스를 추가한 버전으로 1982년 개발되었습니다.

1998년에는 C++ 98이라 부르는 표준화 버전이 만들어졌고요.

C++ 03, C++ 11, C++ 14, C++ 17, C++ 20으로 이어지고 있습니다.

이번 개정판에서 C++ 20의 많은 부분을 업데이트 한 책입니다.

이 책은 여러 가지 다양한 상황 속에서 자신을 전문가 수준으로 끌어올리기 위한 사람을 대상으로 만든 책입니다.

C++ 언어에 대한 경험이 부족해도, C++의 고급 기능을 다루지 못해도, C++ 코딩은 자신 있지만 C++로 설계하는 방법을 배워보고 싶어 하는 사람이든 상관없이 자신을 전문가 수준으로 올리고 싶다면 이 책을 학습하는 것이 좋다고 저자는 얘기합니다.

초급이냐 중급이냐가 중요한 것이 아니라 전문 C++ 프로그래머가 되고 싶은 분을 목적으로 만들어진 책입니다.

다만 기본적인 프로그래밍 기초는 어느 정도 갖춰다고 가정하고 설명하고 있습니다.

 
 

1장은 C++와 표준 라이브러리 초단기 속성 코스인데요.

C++ 언어의 기초를 설명하는 것이 아니라 오래전에 C++을 공부한 사람의 기억을 되살리거나, C++ 경험이 없는 C, 자바, C# 등 다른 언어 프로그래밍 경험이 있는 독자에게 C++의 기초를 다지는 용도로 사용됩니다.

다른 언어에 대한 지식이 없는 상태에서 처음 C++ 언어를 배우려는 분이 생각하는 그런 기초가 아닙니다.

다만 객체지향 프로그래밍은 5장에서 다루기 때문에 객체지향 프로그램을 모르는 분들은 5장에서 학습할 수 있게 꾸며졌습니다.

 
 

책에서 중요하게 다루는 것은

프로그래밍 방법론과 재사용 가능한 디자인 패턴, 바람직한 프로그래밍 스타일입니다.

이 책은 코드를 설계하고 작성하는 단계부터 디버깅하고 협업하는 단계에 이르는 전반적인 소프트웨어 개발 프로세스에 따라 설명하고 있습니다.

그럼 전문 프로그래머에게 필요한 것은 무엇일까요?

설계의 중요성을 알아야 하고요.

객체지향 프로그램과 라이브러리에 대한 이해와 활용

유용한 코드와 재사용 가능한 기능을 개발한 경험이 있어야 합니다.

다양한 디자인 패턴을 알고 있어야 시스템의 효용성을 높일 수 있습니다.

 
 
 
 

1부는 C++ 언어에 대한 초단기 속성코스와 스트링, 스트링 뷰를 다루는 방법을 설명합니다.

2부 전문가 다운 C++ 소프트웨어 설계 방법에서는 설계의 중요성과 객체지향 방법론, 코드 재사용의 중요성 등을 설명합니다.

3부 전문가답게 C++ 코딩하기에서는 C++에서 메모리를 관리하기 위한 바름직한 방법, 재사용 가능한 클래스 작성법, 상속과 같이 언어의 주요 기능을 최대한 활용하는 방법을 소개합니다.

4부와 5부에서는 고급 기능을 마스터하고 엔터프라이즈급 소프트웨어를 작성하는 방법을 설명하고 있습니다.

마지막으로 6부에서는 기술 면접에서 나올 법한 C++ 예상 질문을 정리해 놓았고, 시스템 설계할 때 사용하는 UML에 대한 간단한 설명으로 책을 마무리하고 있습니다.`

반응형