본문 바로가기
[Review]/Book

[도서 리뷰] 러닝 SQL(Learning SQL)

by 해피빈이 2021. 4. 18.

> 진행에 앞서

SQL 관련 책을 오랫만에 보게 된 것 같다.

학부때 공부한 이후로, 쉬운 책을 몇 번 접하기는 했으나, 취직한 이후로는 안드로이드 개발자로 살아왔기에, 실제 실무에서는 크게 다룰 일이 없었기 때문일 듯 싶다.

서버 개발자라면 많이 다뤘을 주제이지만, 안드로이드 개발자로서는 SQLite 정도가 전부였다.

그래도 모를수는 없는 전산학의 기본중의 기본이기 때문에 알아야 하는 부분이기 때문에 관심은 항상 있었다.

 

> 책에 대한 간단한 정보

그러던 중 이 책을 접했다.

SQL에 대해 어떤 내용이 적혀있는지는 알 수 없었지만, 두께도 적당했고, 완전 초보자를 위한 내용이 적혀있는 것으로 보이지 않는 목차가 눈에 띄었다.

 

18개의 챕터로 되어있는 것을 보면서 드는 또 하나의 생각으로는 누군가에게 학습용으로 가르치고 배우기 좋다는 생각도 들었다. 물론 스터디 그룹도 해당된다.

 

 

 

> 인상깊은 부분들

 

눈에 띄는 부분들이 몇 군데 있었는데, 그 중 몇 개만 기록하자면 다음과 같았다.

SQL 자체에 대해 생각보다 디테일한 정의를 말하고 있는 부분이다.

 

비 절차적 언어라는 측면에서 SQL을 바라본 적은 없었다.

하지만, 그런 관점에서 설명하고나니 뭔가 하나의 언어로서 대할 수 있도록 만들어 준 느낌이다.

 

 

그리고, 조인과 같은 부분이 나오는건 어찌보면 당연하기 때문에 특별할 것은 없지만, 이에 대해 심화로 다룬 부분은 인상깊었다. 사실 조인은 그냥 하면 되지 않나 생각을 하고 넘어가기도 하지만, 닥쳐오는 상황은 여러 상황이 있을 수 있는데, 이에 대해 상황별로 적용할 수 있도록 다양한 조인에 대해 언급하고 있다.

 

 

그리고, 학습에 대해 초점을 맞춘 책이니만큼, 학습 점검에 대한 부분이 각 챕터별로 할당되어 있었다.

그래서 문제가 나오고, 해당되는 답이 책의 맨 뒤에 적혀있다.

그래서 이런것들로 인해 한 번 더 생각하게 만들었다. 이런 부분이 중요하다고 생각한건 사실 책을 보면서 학습할 때에는 그런가보다... 혹은 당연하다는 것으로 생각할 수 있는데, 막상 그렇게 넘어갈 경우 제대로 내용을 파악하지 못했을 가능성이 높다.

따라서 그렇게 되지 않도록 노력하는 부분이 필요하다. 퀴즈는 그런 부분을 보강해 주는 좋은 도구가 된다고 생각하기 때문에 인상깊게 와 닿았다.

 

책의 뒷 표지 부분에는 각 분야에서 일하시는 분들의 추천으로 좀 더 신뢰를 주고 있고, 추가로 관련 도서를 보고 싶도록 만들고 있다고 생각한다.

 

 

 

> 괜찮은 부분

1. 학습에 포커스를 맞췄다.

학습이 필요한 사람이 볼 수 있도록 책의 제목부터 러닝 SQL이다. 제목만 이럴 것이다 라고 생각을 했지만, 들여다볼수록 학습을 신경 썼다는 생각이 들었다. 대표적으로 각 챕터 마지막에 적혀있는 실습 문제에 대한 부분이었다. 그 외에도 이론적인 부분부터 차근히 업그레이드 시켜주는 느낌의 목차 배치가 학습에 도움이 되도록 했다는 생각이 들었다.

 

2. 넓은 학습 범위

1번과 이어지는 장점이 될 것 같은데, 처음이나 아직 제대로 개념잡히지 않은 사람이 SQL을 배우고 싶어서 이 책을 보는 경우 초보적인 개념부터, SQL문을 잘 만들 수 있는 부분에 이르기까지 학습범위가 넓게 되어있다. 물론 더 고급적인 문장을 만들기 위해서는 다른 책을 추가로 접해야겠지만, 여기에 수록된 내용만으로도 어느정도 실무에서 도움이 될 내용이라고 생각이 든다. 기초 없이 응용이 불가능하기 때문이다.

 

3. 하나의 실습 예제로 전체를 다룸

ER다이어그램도 부록에 수록되어 있지만, 하나의 예제 데이터베이스를 기반으로 이 책 전체를 커버한다. 그래서 실제 하나의 시스템이 존재한다고 가정하고 그것을 자유자재로 다루면서 실습하는 느낌이 들도록 하였다고 생각이 든다. 또한 예제가 바뀌지 않기 때문에, 예제에 집중하기보다는 그 안에 담긴 내용에 더 집중하도록 만들었다는 생각이 든다.

 

> 아쉬운 부분

1. RDBMS에 대해서만 다룸

SQL이 RDBMS에 대한 부분을 뜻하기 때문일까. NoSQL에 대한 언급이 끝에 살짝 나오기는 하지만, 크게 다루지는 않는다. 목차를 보고서 NoSQL에 대해서 어느정도 다뤘을 것이라고 착각을 해서인지 이 부분은 아쉬웠다. 오히려 예제의 일부를 발췌해서 RDBMS에서는 이렇게 다루지만, NoSQL로 가져왔을 경우에는 어떻게 활용이 가능할 것이라는 정도의 수록이 있었다면 좀 더 와닿는 부분도 크고, 트렌드에 맞춘 지식도 어느정도 커버할 수 있었을 것이라고 생각했다.

 

2. 각 내용을 발췌해서 보기는 어려움

학습에 포커싱을 맞춰서 그런것일 수도 있으나, 전체를 다 본다면 상관없겠지만, 내용을 일부 발췌해서 보고 싶은 경우 해당하는 주제나 키워드를 찾아서 보기는 어려워보였다. 가령 함수를 찾고 싶을 때에도 여러페이지를 넘겨가며 내용을 보면서 찾지 않으면 눈에 잘 띄지 않는다.

 

3. 데이터베이스 도구 설명 필요

데이터베이스를 다루기 위해서는 일반적으로 커맨드 창만을 활용하지는 않는다. 실무에서는 여러 도구를 사용하게 될 텐데, 그에 대한 소개가 부족해 보인다. 실제 책의 내용을 도구 기반으로 설명할 필요는 없지만, 어느정도의 지면을 할당하여 도구를 알려주었더라면, 그 각각의 장단점을 알고 활용하는 데 도움이 되지 않았을까 생각이 든다.

 

> 개인적인 평점

- 가격: 5 / 10

- 내용: 7 / 10

- 디자인: 6 / 10

- 구성: 6 / 10

 

> 정보

저자: 앨런 볼리외

옮긴이: 류수미, 송희정

출판사: 한빛미디어

가격: 30,000원

전체 페이지: 455페이지

 

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

반응형

댓글