더 나은 개발자가 되고 싶어서, 해당 책을 구매하여 1장씩 읽어 독서기록을 가지고자
만들었습니다. 총 9장임으로 9편으로 구성되어 있습니다.
"21세기 첨단 기술들이 발전하여, 컴퓨터 과확의 근본적 아이디어들은 잊혀지고, 그 아이디어들이 반영되지 않은 컴퓨터 장치는 사용이 불가능 하다"
라는 글이 나옵니다. 이는 현대 사회에서 컴퓨터의 흐름은 모르지만 단순히 사용할줄만 아는
현재의 개발자나, 관련 종사 직업들에 대한 비판을 담았다 라고 저는 해석을 했는데,
아래의 예시들을 통해 이해를 돕고자 합니다.
- 수십억개의 정보중
검색
을 통해 가장 적합한 2~3개의 문서를 찾는 경험- 수만개의 정보를 실수없이
저장
하거나전송
하는 경험- 수천명의 고객중 동시에 동일한
서버
를 이용하는 경험- 수백대의 컴퓨터들이
스니핑
가능한 회선을 거쳐 기밀 정보를 보내는 경험- 큰 사이즈의 사진, 영상들을 이메일에 첨부하기위해 작은 사이즈로
압축
하는 경험- ...
위같은 경험들은 결국엔 근본적인 아이디어에 기안한다고 책은 말하고 있습니다.
알고리즘이란 무엇인가?
라는 질문으로 시작합니다.
컴퓨터 과학자 들은"아이디어"
를 대부분 알고리즘이라 표현한다고 합니다.
그렇다면 다시 알고리즘이란 무엇인가를 정확하게 짚어주는데,
문제를 푸는데 필요한 단계의 순서, 구체적인 계산법
이라는 표현을 합니다.
예를 들어
129 + 129 를 풀어볼때
(9 + 9) = 18 -> 1 | 8 -> 이때 1을 2 위에 적고 했던 계산법 들도 알고리즘입니다.
저는 컴퓨터 공학쪽도 아니고, 이과도 아닙니다.
하지만 개발자의 길을 선택하였고, 실제 일하고 있는 사람들에게 밀리고 싶지 않아서
해당 책을 선택해 읽어 보고자 했습니다.
해당 책은 컴퓨터 과학을 몰라도, 이해할 수 있게 알고리즘, 컴퓨터의 흐름을 설명하는 책입니다.
사실 이외에도 1장에서 말하고자 하는 내용은 더 있었습니다.
다음장부터 ( 2 ~ 9 ) 어떤 알고리즘을 설명하며 어떤 아이디어들이 나올건지 정도
힌트를 주었는데 미리 알면 재미 없어지실 것 같아, 블로그에는 담지 않았습니다.