반응형
모두를 위한 컴퓨터 과학(CS50 2019)를 바탕으로 부족한 CS지식을 다져보고자 정리해본다.
=======================================================================
▷추상화
추상화란 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다.인간은 복잡한 시스템과 개념을 추상화 할 수 있기 때문에 더 고차원적인 일에 집중할 수가 있다. 컴퓨터를 사용하면서 밑 단의 0과1을 하나하나 생각해야한다면 얼마나 복잡할까. 삼천포로 천재적인 서번트 증후군은 추상화 능력 대신 극단적인 밑 단의 능력을 갖춘 것이라고 한다. 극단적인 계산 능력은 있으나 사회 시스템을 추상화하여 전체를 이해하기는 어려운 것이다. 프로그래밍도 마찬가지이다. 우리는 실제 컴퓨터의 메모리에 1과0으로 저장이 되고 처리가 된다는 것을 이해하되 매 번 그러한 동작을 신경쓰지는 않는다.
프로그래밍은 추상화를 통하여 복잡한 기계어를 처리하는 행위인 것이다.
반응형
'CS > 모두를 위한 컴퓨터 과학 CS50' 카테고리의 다른 글
[CS50]컴파일,라이브러리, 메모리, 버그, 디버깅 (1) | 2023.02.24 |
---|---|
[CS50]컴퓨터 과학을 이해하기 위한 C언어의 기초 (0) | 2023.02.24 |
[CS50]알고리즘과 의사코드(algorithm and pseudo code) (0) | 2023.02.24 |
[CS50]컴퓨터의 표현법, 컴퓨터는 어떻게 데이터를 표현할까 (0) | 2023.02.24 |
[CS50] 컴퓨터 과학은 무엇일까 (0) | 2023.02.24 |