[컴퓨터 공학 공부 리뷰란?]
제가 대학에 진학할 시절에는 처음 웹을 공부하기 위해서는 생활코딩말고는 좋은 강의가 드물었습니다. C언어 공부한다 하면 대부분 윤성우씨의 강의를 수강했고요. 그러나 불과 몇 년 사이에 훌륭한 분들이 앱이나 웹만드는 강의가 많아졌습니다. Youtube에 C언어 부터 시작해서 머신러닝까지 많은 강의를 무료로 볼 수 있습니다. 그러나 컴퓨터 공학의 고전적인 과목들 예를 들어서 컴퓨터구조 운영체제, 네트워크, 데이타베이스, 혹은 보안 쪽을 독학으로 공부하려고 하면 좋은 강의도 없고 막막한 것이 현실입니다. 구글에 운영체제 공부법 같은 키워드로 검색을 하면 특정 학원 홍보와, 막상 사보면 지나치게 어렵거나 추천하는 본인도 읽어보지 않은 책을 추천하는 게시글만 만날 수 있는 것이 현실입니다. 고전적인 컴퓨터 공학 과목을 배우면 당장 개발을 하는데 도움보다는 기술을 깊게 바라보는 관점을 갖게 해주기에 중요한 공부라고 생각합니다만 마땅한 공부 자료를 찾기 힘듭니다.
공부 리뷰는 제가 4년 동안 컴퓨터 공학을 공부하면서 책도 많이 사 보고 수 많은 시행착오를 겪으면서 괜찮았던 강의와 책을 추천하는 포스팅입니다. 과거로 돌아가서 처음 공부를 시작하는 저에게 맨토링해준다는 생각으로, 직접 공부해보고, 직접 사본 책 위주로 리뷰해봅니다.
[강의]
[1] 컴퓨터구조 - 최규상 교수님
KOCW의 최규상 교수님의 강의입니다. PPT를 제공하지 않는데 PPT의 내용 일부를 구글에 검색하면 해외의 대학에서 디자인만 다르고 같은 내용의 PPT가 나옵니다. 컴퓨터 구조 및 설계 - David A. Patterson를 교제로 하기 때무에 이 책으로 공부한다면 큰 도움을 받으면서 공부할 수 있습니다. 설렁설렁 설명하는게 아닌 PPT의 한 줄 한 줄 설명해 줍니다. 저는 한 번에 이해하지는 못 했고 한 번 듣고 책으로 내용 파악하고 한 번 더 들었습니다.
[도서]
[1] 컴퓨터 구조 및 설계 - David A. Patterson,John L. Hennessy 공저
http://www.yes24.com/24/goods/16426341?scode=032&OzSrank=1
해외의 대학도 이 책을 엄청 많이 봅니다. 연습문제에 대한 솔루션도 구글링으로 쉽게 얻을 수 있습니다. 컴퓨터 구조의 최고의 교제입니다만 혼자 공부하면 어렵습니다. 위의 인터넷 강좌와 함께 공부하는 것을 추천합니다. 특히 Ch5부분은 OS의 공룡 책보다 자세하게 설명해 줍니다.
[2] 컴퓨터 구조 프로그래밍 관점에서 바라보는 컴퓨터 구조 - 정기철 저
(책의 실물은 위 그림처럼 두껍지도 않습니다..)
http://www.yes24.com/24/goods/59273646?scode=032&OzSrank=2
책 이름은 컴퓨터 구조이지만 컴퓨터 구조의 번외판 느낌입니다. 처음 컴퓨터 구조 공부 할 때 큰 그림을 그리기 힘든데 큰 그림 그리는데 도움을 줍니다.(Ch6, 7부분) 논리 회로 설명도 매우 좋습니다. 하지만 컴퓨터 구조의 전통적인 서술방식이 아닌 처음 공부할 때 짚고 가면 좋은 느낌의 책입니다.
[3] 윈도우즈 시스템 프로그래밍 - 윤성우 저
http://www.yes24.com/24/goods/2502445?scode=032&OzSrank=1
OS 도서 추천에서 등장한 책입니다. 본 책은 4부로 이루어져 있는데 각 부의 시작에 컴퓨터 구조애 대한 설명을 해줍니다. 윤성우 저자의 물흐르는 듯한 편한 설명으로 컴퓨터 구조에 접근하는데 도움이 됩니다. 처음 공부할 때 이 부분을 읽었더라면 삽질을 덜했을텐데 아쉽습니다. 상당수 내용은 OS와 시스템 프로그래밍에 대한 내용이라 이에 대한 공부 계획이 없으면 다소 비싼(?) 책값을 지불했다고 생각할 수 있겠네요.
[사족]
컴퓨터 구조과목이 독학하기에 많은 자료가 없습니다. 꼭 공부해야할 사명이 있는게 아니라면 컴퓨터 구조에 대한 흐름을 담은 서적이나(후에 추천 도서를 올리겠습니다.) OS나 시스템 프로그래밍을 공부하는 것을 추천합니다.
...
<><
...
'Review > Study Review' 카테고리의 다른 글
[컴퓨터 공학] 어떻게 네트워크를 공부할 것인가?(네트워크 공부 방법에 대하여) (28) | 2018.07.16 |
---|---|
[컴퓨터 공학]어떻게 C++을 공부할 것인가? (2) | 2018.07.13 |
[컴퓨터 공학]웹 개발은 어떻게 시작하면 좋을까? (2) | 2018.07.13 |
[컴퓨터 공학] 파이썬 공부 리뷰(어떻게 파이썬공부를 할까?) (4) | 2018.07.13 |
[컴퓨터 공학]운영체제 공부 리뷰(어떻게 운영체제 공부를 시작할까?) (60) | 2018.07.12 |