[서평 작성] 이것이 컴퓨터 과학이다 with CS 기술 면접

목차.

Chapter 01. 기술 면접과 실무를 위한 컴퓨터 과학

Chapter 02. 컴퓨터 구조

Chapter 03. 운영체제

Chapter 04. 자료구조

Chapter 05. 네트워크

Chapter 06. 데이터 베이스

들어가며…

안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 이것이 컴퓨터 과학이다 라는 책에 대해서 서평을 해보려고합니다. 필자는 컴퓨터 공학과 출신이 아닙니다. 정규적인 컴퓨터 기본 과정에 대해서 학습을 하거나 배운적이 없습니다. 그래서 더 더욱 컴퓨터 구조/운영 체제에 대해서 항상 궁금증이 많았습니다. 물론 현업에서 일을 10년 이상 하다보니 기본적인것은 어느정도 자연스럽게 학습이 됐던 것 같습니다. 이번 기회를 통해서 기본적인 컴퓨터 지식을 습득하는데 목적을 두고 읽었습니다. 그럼 각 챕터 별로 서평을 이어가겠습니다.

서평

첫 번째 챕터

무려 650여 페이지에 달하는 책의 전체적인 청사진을 제공하고 있습니다. 각 챕터의 hierarchy(계층) 형태로 소개를 하고 있어서 이부분이 앞으로 읽을 챕터들에 대해서 확인할 수 있어서 너무 좋았습니다.

두 번째 챕터

컴퓨터 구조에대해서 소개를 하고 있습니다. 여기서는 CPU, Memory, Disk I/O에 대해서 설명을 하고 있습니다. 컴퓨터를 배우는 초심자 입장에서는 이 챕터만큼은 반드시 읽고 넘어가야 할만큼 모든것의 근간이 되는 챕터가 아닐까 생각해봅니다.

무엇보다도 다소 어렵고 지루한 내용일수도 있는 부분들을 캡쳐본과 그림을 통해서 쉽게 쉽게 설명하고 있습니다. 컴퓨터 지식이 없다고 하더라도 그림과 함께 보면서 이해하는데는 어려움이 없을것이라고 생각합니다.

CPU부분에서는 레지스터, 인터럽트, 성능 향상을 위한 설계(병렬성, 동시성) 등에 대해서 소개를 하고 있습니다. Memory 부분에서는 RAM(Random Access Memory), 캐시 메모리 등에 대해서 소개를 하고 있습니다. 입출력 장치부분에서는 RAID(Redundant Array of Independent Disks) 부분에 대해서 소개를 하고 있습니다. 모두 중요한 내용으로 정독을 할것을 권장합니다.

챕터를 읽고 나면 취업 멘토가 알려주는 기술 면접 질문이라는 미니 섹션이 존재하는데요. 이쪽에서는 실제 면접에서 나올 법한 질문 목록과 답변으로 이루어져서 면접을 준비하는데도 도움이 많이 될것 같습니다.

세번째 챕터

운영 체제에 대해서 소개를 하고 있습니다. 운영 체제는 크게 다음의 역할을 수행하고있습니다.

  • 자원 관리
    • CPU 관리 : CPU 스케쥴링
    • 메모리 관리 : 가상 메모리
    • 파일/디렉터리 관리 : 파일 시스템
  • 프로세스 및 스레드 관리
    • 프로세스와 스레드
    • 동기화와 교착 상태

운영 체제가 왜 필요한지 그리고 어떤 역할을 하는지 큰 그림에서 이해할 수 있었던 챕터였습니다. 운영 체제를 통해서 자원 관리/프로세스 및 스레드 관리라는 부분에 대해서만 이해를 하게 되면 컴퓨터를 통해서 개발을 한다던지 프로그래밍을 하는 부분에 있어서 많은 이해와 도움이 될거싱라고 생각합니다.

네번째 챕터

자료구조를 설명하고 있습니다. 대부분의 IT 직종에 종사하는 사람 내지는 종사하기를 희망하는 추업 준비생들은 코딩 테스트라는 것을 많이 접하게 됩니다. 코딩 테스트를 요구하는 것은 자료구조를 이해하고있는지를 시험한다고 생각해도 됩니다.

자료구조에는 다음과 같은 것들이 있고 이를 책에서는 정확하게 설명하고 있습니다.

  • 배열과 연결 리스트
  • 스택과 큐
  • 해시 테이블
  • 트리
  • 그래프

필자도 한창 코딩 테스트를 공부할 때 위의 내용들을 지겹도록 공부했었는데요. 덕분에 해당 챕터는 쉽게 쉽게 읽을 수 있었습니다. 코드를 개발하는 개발자라면 해당 챕터를 꼼꼼하게 읽는게 중요할 것 같습니다.

다섯 번째 챕터

네트워크에 대해서 설명하고 있습니다. 필자가 약하다고 생각했던 부분이 네트워크 입니다. 네트워크는 별도로 네트워크 엔지니어가 존재하는 만큼 깊숙하게 들어가면 들어갈 수록 제일 어려운 분야가 아닐까 생각해봅니다. 책에서 소개하는 정도만 명확하게 이해한다면 개발자를 희망하거나 종사하는 사람들이라면 업무하는데 많은 도움이 될것이라고 생각합니다.

해당 챕터에서는 다음을 소개하고 있습니다.

  • OSI 7계층에 대한 소개
  • 물리 계층/데이터 링크 계층
  • 네트워크 계층
    • IP, ARP
  • 전송 계층
    • TCP/UDP
  • 응용 계층
    • HTTP/HTTP
  • 프록시와 안정적인 트래픽

여섯 번째 챕터

데이터 베이스를 설명하고 있습니다. 데이터 베이스도 필자가 굉장히 관심이 많고 학습을 오래했던 부분이라 쉽게 읽을 수 있었습니다. 이부분에서는 다음을 소개하고 있습니다.

  • 트랜잭션과 ACID
  • RDBMS의 기본(테이블, 무결정 제약조건)
  • SQL/효율적인 쿼리
  • 데이터베이스 설계
  • NoSQL

위의 내용들에 대해서 알아둔다면 개발하는 데 많은 도움이 될 것이라고 생각합니다.

마치며…

이번 시간에는 이것이 컴퓨터 과학이다라는 책을 서평해보았는데요. 이것이 시리즈를 굉장히 좋아합니다. 책의 구성을 보면 서두에는 지도 그리기를 통해서 해당 챕터에서 소개할 내용들을 계층구조로 보여주기 때문에 큰 흐름에서 이해를 하고 책을 읽을 수 있었습니다. 그리고 각 챕터 말미에는 기술 면접 질문들을 통해서 책을 읽고 학습했던 내용들을 다시금 상기할 수 있도록 배치를 해둬서 책을 읽는 다기보다는 학습을 할 수 있도록 도움을 많이 준 것 같습니다.

취업을 준비하거나 IT에 관심이 있는 초심자라면 이 책을 항상 옆에 두고 읽는것도 좋을것 같습니다. 서평을 마치겠습니다.

본 포스팅은 “한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다