IT

[북리뷰] 『전문가를 위한 C++』C++20, 병렬 알고리즘, 파일시스템, 제네릭 람다, 디자인 패턴, 객체지향의 원리를 익히는 확실한 방법 | 5 판 (한빛미디어)

BoBooBoo 2023. 4. 23. 21:27
반응형

작성일: 2023. 4. 23. 일요일

내용: IT 개발 도서 리뷰

제목: 『전문가를 위한 C++』 C++20, 병렬 알고리즘, 파일시스템, 제네릭 람다, 디자인 패턴, 객체지향의 원리를 익히는 확실한 방법 | 5 판

출판사: 한빛미디어

저자: 마크 그레고리 저자(글) · 남기혁 번역

분야: 프로그래밍, C, C++, C++20

출간일 : 2023년 03월 30일

 

 

전문가를 위한 C++ | 마크 그레고리 - 교보문고

전문가를 위한 C++ | 더 쉽게, 더 빠르게, 더 깔끔하게!프로그래머가 알아야 할 C++와 C++20의 모든 것C++는 마스터하기 어렵기로 악명 높지만, 풍부한 기능 덕분에 게임이나 상용 소프트웨어 애플리

product.kyobobook.co.kr

 

 

 

    드디어 최근 가장 많이 사용하고 있는 C++ 와 관련된 도서를 보게 되었습니다. 기본기는 10년도 더 지난 학생 때 배웠고 그 이후로는 회사 업무로 인해 그냥 그때그때 찾아서 사용하곤 했었는데요. 그러다 보니 점점 발전도 없는 것 같고 똑같은 것만 계속하면서 이슈만 처리하는 기계가 되어가고 있는 것 같아서 정말 아쉬운 부분이 많았습니다. 이번 책으로 또 한 번 실력을 업그레이드시키는 기회가 되었으면 하는 기분으로 차근차근 살펴보도록 하겠습니다.

 

 

    책의 소개를 보는데 마치 저를 타겟팅해서 말하듯이 적어 둔 듯합니다. C++ 의 설계 방법도 제대로 익히지 못하고 프로그래밍을 하고 있다고 생각하고 있었기 때문이죠. 이미 퇴사하고 없는 사람들의 코드를 보면서 엉망진창인 부분에 대해 지적만 하지 딱히 어떻게 고칠 수 있을까를 생각해 보면 뚜렷한 방법은 없다 보니 더 힘든 상황이었습니다. 이 책을 보고 나면 완전히는 아니더라도 많은 부분이 개선될 수 있지 않을까 생각이 듭니다.

 

 

    특히 C++ 의 다양한 고급 기능들에 익숙하지 않은 부분에 대해서 많은 도움을 얻을 수 있을 것 같네요. 앞으로 새롭게 만들 프로그램들은 남들에게 내놓아도 부끄럽지 않았으면 하다 보니 공부의 필요성을 많이 느낍니다. 대상 독자는 바로 저네요.

 

 

    특히 좋은 점은 C++20 에 대한 부분이 별도로 잘 작성되어 있어서 참고하기 좋다는 점 입니다. 개발자마다, 회사마다, 프로젝트마다 사용하는 개발환경과 언어의 버전이 다르기 때문이 이 내용을 잘 알고 있는 것은 실수를 줄이기 위해 정말 중요한 부분이라고 생각합니다.

 

 

    설계를 곁들인 부분에 대해서는 위와 같이 UML을 통해 설명하거나 그 외 다양한 이미지나 방법으로 자세하게 표현해 줘서 책을 읽는 동안 이해가 안돼서 힘든 부분은 많이 없었어요. 어느 정도 프로그래밍을 해 본 사람이라면 눈으로, 손으로 코딩을 해 가면서 읽는 것이 더 빨리 이 책을 읽는 방법이 될 수도 있겠습니다.

 

 

    전문가를 위한 책 답게 그저 C++ 언어에 대한 내용만 작성된 것이 아니라, 아니 오히려 C++ 그 자체의 내용보다는 C++로 개발할 때 사용하는 도구들과 디자인 패턴 그리고 다양한 개발 기법들에 대해서 작성된 것이 훨씬 많았습니다. 이런 내용을 보면 이 책은 절대 초심자나 입문자들이 볼 책은 아닙니다.

 

 

    이미 C++ 에 대해서 어느 정도 알고 있는 개발자들을 대상으로 하다 보니 어떤 때는 설명 자체가 조금 매정하다고 느껴질 정도로 간단하게 넘어가는 경우도 있다. 잘 이해가 되지 않는다면 다른 책들을 함께 보는 것도 좋을 것 같습니다. 이런 부분까지 다루면 책은 천 페이지, 이 천 페이지까지 늘어나 버릴 수도 있겠네요.

 

 

    물론 자료구조도 배울 수 있다. 엄청 자세하게 다루지는 않아요. 기본적인 내용은 이미 모두 알고 있지 않나요...? stack에 대한 설명만 보자면 위 이미지가 사실상 전부라고 할 수 있습니다. 이미 아는 사람들에게는 이 정도면 충분하지...라는 생각이 들 정도로 간단한 내용이에요.

 

 

    고급 프로그래밍의 단계로 들어가려면 역시 운영체제 그 자체에 대한 내용을 공부해야 합니다. 이 책에서도 간단하게 언급은 해주고 있지만 일반적인 초보 개발자들에게는 결코 충분한 내용은 아닐 거에요. 이 책을 베이스로 공부한다면 부가적으로 필요한 책들이 상당히 많을 지도 모릅니다. 

 

 

    그 외 테스트, 디자인 패턴 등 다양한 프로그래밍 기법에 대해서도 배울 수 있고 마지막 챕터에서는 면접에서 자주 나올 만한 내용까지 다뤄줍니다. 이 책 한 권을 다 본다면 진짜 왠만한 초급, 중급 개발자 이상의 지식만큼은 쌓을 수 있지 않을까 싶어요. 물론 실전 경험이 더 필요하겠지만 말이에요. 나에게도 정말 많은 도움이 될 책이라 앞으로도 꾸준히 더 곱씹어보면서 읽어봐야겠습니다.

 

끝.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

반응형