-
-
C++ 최적화 - 최고 성능을 구현하는 10가지 검증된 기법
커트 건서로스 지음, 옥찬호 옮김 / 한빛미디어 / 2019년 7월
평점 :
지금까지 수많은 프로그래밍 언어가 개발되고 사용되었지만 C/C++ 처럼 그 역사가 오래되었음에도 현재까지 꾸준히 사용되고 있는 언어는 드물다. 많은 기능과 쉬운 사용법을 주장하는 최신 프로그래밍 언어들 사이에서도 C/C++이 여전한 인기를 유지하는 비결은 무엇일까? 그것은 바로 C/C++로 개발된 프로그램의 성능 아닐까 생각한다.
최근에는 하드웨어의 눈부신 발전으로 최적화의 중요도가 많이 줄어든 것은 사실이다. 하지만 최적화를 통해 성능이 낮은 하드웨에서도 문제없이 프로그램을 돌아가게 하거나, 서버 프로그램의 최적화를 통해 동시 유저 수를 늘릴 수 있다면 이는 곧 비용 절약을 통한 이익의 극대화를 추구할 수 있으므로 이러한 관점에서 볼 때 최적화는 여전히 중요하다고 생각된다.
이 책에서는 저자의 풍부한 개발 경험을 바탕으로 최적화 시 알아야 할 기초 상식과 방법들을 13장에 걸쳐 설명하고 있다. 각각의 최적화 방법에 대한 자세한 설명과 함께 간결한 예제 코드가 포함되어 있기 때문에 이해하는데 크게 어렵지는 않았다. 하지만 이 책을 읽다보면 C++의 최신 표준 및 STL, 시간 복잡성, 동시성 등의 개념이 나오는데 해당 지식에 익숙치 않은 독자들은 "C++ 최적화"를 읽기 전에 해당 부분들을 선행 학습하길 권하고 싶다.
이 책은 비록 C++을 이용한 최적화를 설명한 책이지만 이 책에 나와 있는 기본적인 개념 및 원리들은 다른 언어로 개발을 할 때에도 적용할 수 있겠다는 생각이 들었다. 그리고 단순히 프로그래밍 언어의 문법을 익히고 원하는 동작을 개발하는 수준을 넘어서서 내가 작성한 코드나 사용한 라이브러리가 내부적으로 어떤 식으로 동작하는지를 이해한다면 한 단계 높은 수준의 프로그래머로 발전할 수 있지 않을까 생각하면서 이 글을 마친다.