본문 바로가기
외부활동/리뷰어

『그림으로 이해하는 알고리즘』 서적 리뷰

by yoon_seon 2024. 9. 8.

 

길벗 출판사의 '개발자 리뷰어' 활동으로 『그림으로 이해하는 알고리즘』 서적을 제공받아 작성하게된 서평입니다.

 

특정 기술을 처음 접할 때는, 세부적인 부분에 집중하기 전에 전체적인 구조를 먼저 파악하는 것이 이해에 더 도움이 된다고 생각합니다. 흔히 말하는 '나무보다 숲을 보라'는 말처럼 말이죠.

 

저에게는 길벗의 '그림으로 이해하는' 시리즈의 책들이 그런 역할을 해주었습니다.

 

이번에 리뷰할 『그림으로 이해하는 알고리즘』 을 읽기 전,

『그림으로 이해하는 AWS 구조와 기술』 과 『그림으로 이해하는 가상화와 컨테이너』 서적을 먼저 접했었는데요!

 

당시 위 기술들을 어떻게 공부해야 할지 막막했지만, '그림으로 이해하는' 시리즈의 책들은 심화된 내용을 다루기보다 초보자를 위한 쉬운 설명과 그림으로 개념을 쉽게 이해할 수 있도록 해줘서 기초 지식을 빠르게 쌓을 수 있었습니다.

 

그래서 이번에는 복잡한 알고리즘 개념을 보다 쉽게 이해하고 싶어, 『그림으로 이해하는 알고리즘』 을 선택하게 되었습니다.

 

이번 리뷰에서는 이 책이 알고리즘을 어떻게 설명하는지, 그리고 시각적 접근 방식이 얼마나 효과적인지에 대해 이야기해 보겠습니다.

 

어떤 책 인가?

 

서점에는 수많은 알고리즘 관련 서적이 있으며, 각 책마다 장단점이 있습니다.

이 책 또한 독특한 장점이 있는데요. 책의 구성을 보면 다음과 같은 장점이 있습니다.

 

1. 시각적 구성

이 책의 가장 큰 장점은 제목에서도 알 수 있듯이, 복잡한 알고리즘 개념을 단계별로 그림으로 설명하고 있다는 점입니다.

복잡한 다익스트라 알고리즘도 단계별로 설명하고 있어서 쉽게 이해할 수 있었습니다.

 

2. 개념별 해설과 보충자료

개념 중간 중간마다 원포인트 라는 키워드가 등장하는데, 이 부분에서는 이해를 돕는 개념을 추가적으로 설명합니다.

또 한 개념이 끝날 때 마다 해설과 보충자료, 활용사례가 나와있어서 알고리즘 개념의 이해를 돕는 부분이 좋았습니다.

 

3. 보안, 클러스터링, 데이터 압축의 알고리즘 소개

이 책은 단순히 프로그래밍 알고리즘만을 다루는 것이 아닌 '보안', '클러스터링', '데이터 압축' 등 다양한 알고리즘을 소개하고 있습니다 !

이러한 폭넓은 알고리즘의 소개 덕분에, 알고리즘의 응용과 실제 활용 사례를 이해하는 데 큰 도움이 되었어요.

 

특히 보안 관련 알고리즘 부분이 인상 깊었습니다.

몇 달 전 팀 프로젝트에서 로그인 인증 및 인가를 구현할 때, 이 책의 내용을 조금 더 일찍 접할 수 있었다면 좋았겠다는 생각이 들었습니다 😊

 

지은이의 말

대부분의 독자들은 책을 읽을 때 저자의 말을 먼저 읽고 본문을 읽게 되지만, 저는 반대로 책을 다 읽고 나서 저자의 말을 읽곤 합니다.

책을 완독한 후에 제가 어떻게 이해했는지, 그리고 저자가 의도한 독자의 모습과 얼마나 일치하는지를 비교하는 것이 더 재미있기 때문이에요.

 

이 책에서 말하는 지은이의 말은 아래와 같습니다.

 

이 책은 다양한 알고리즘과 자료 구조의 동작을 그림과 함께 설명합니다.

알고리즘은 같은 목적을 달성하더라도 서로 다른 성질을 가지는데, 어떤 알고리즘은 실행시간이 짧지만 메모리를 많이 사용하고, 어떤 알고리즘은 실행 시간이 길지만 메모리를 적게 사용합니다.

다양한 알고리즘을 안다는 건 프로그램을 만들 때 선택지가 늘어난다는 의미로 상황에 맞게 알고리즘을 선택할 수 있는 능력은 좋은 프로그래머가 되기 위한 조건 중 하나입니다.

 

 

어떻게 보면 당연한 말일 수 있지만, 알고리즘의 선택과 이해가 프로그램의 효율성과 성능에 미치는 영향을 고려할 때, 이 점이 얼마나 중요한지 새삼 느끼게 되었습니다.

 

이런 사람에게 추천 합니다.

  • 프로그래밍 입문자
    • 알고리즘에 대한 기본적인 이해를 돕고, 이후 더 심화된 학습을 위한 기초를 마련하고 싶은 초보 프로그래머에게 적합합니다.
  • 시각적 학습을 선호하는 분
    • 그림을 통해 개념을 쉽게 설명하고 있어, 시각적 접근을 통해 학습하는 것을 선호하는 독자들에게 추천합니다.
  • 다양한 알고리즘의 응용을 이해하고 싶은 분
    • 프로그래밍 알고리즘 뿐만 아니라 보안, 클러스터링, 데이터 압축 등 다양한 알고리즘의 적용 사례와 특징을 알고 싶은 분들에게 유용합니다.

 

이런 사람에게는 추천하지 않습니다.

  • 코드를 통해 알고리즘 학습을 원하는 분
    • 이 책은 알고리즘을 코드로 설명하고 있지 않기 때문에 프로그래밍 언어를 통한 실질적인 코드 예제를 통해 학습하고자 하는 분들에게는 적합하지 않을 수 있습니다.
  • 심화된 알고리즘 학습을 원하는 분
    • 이미 알고리즘에 대한 기초 지식이 있고, 더 복잡하고 심화된 알고리즘을 학습하고자 하는 분들에게는 내용이 다소 기본적일 수 있습니다.
  • 문자 기반 학습을 선호하는 분
    • 시각적 설명보다는 상세한 텍스트 설명을 통해 학습하는 것을 선호하는 독자에게는 이 책이 적합하지 않을 수 있습니다.

 

마무리

'개발자 리뷰어' 활동으로 책을 제공받아 서평을 작성하게 되었는데, 서평 목적이 아니더라도 책장에 쟁여두고 싶을 정도로 좋은 내용이었습니다!

 

궁금한데 읽어볼까? 고민하시는 분들은 한 번쯤 읽어보셨으면 좋겠습니다 :)

 

그림으로 이해하는 알고리즘 | 이시다 모리테루 - 교보문고

그림으로 이해하는 알고리즘 | 알고리즘과 자료 구조, 이렇게 쉽게 표현하고 이해할 수 있다고? 전 세계 250만 다운로드 ‘알고리즘 도감’ 앱을 책으로 엮은 일본 아마존 스테디셀러, 개정2판!알

product.kyobobook.co.kr

댓글