-
1. 컴퓨팅 사고Computer Science/Boostcourse CS50 2021. 12. 24. 02:02728x90
"컴퓨팅 사고력"이란 말을 들어보신 분도 있으실테고, 낯선 분도 계실겁니다.
들어봤다 하더라도 정확히 어떤 의미인지는 모르는 경우가 많습니다.
사실 컴퓨팅 사고는 저희가 어떠한 문제를 해결할 때에도 적용될 수 있을 것 같습니다.
문제를 해결하기 위한 접근 방법 중의 하나로서,
문제를 분해하고 어떻게 해결할 것인지 파악하는 것이 바로 "컴퓨팅 사고"입니다.
컴퓨팅 사고의 과정을 알아보기 전 컴퓨티 과학에 대해서 소개하고자 합니다.
컴퓨터 과학은 문제 해결에 대한 학문을 뜻하고,
여기서 말하는 문제 해결이란 아래 그림과 같이 입력을 전달받아 출력을 만들어내는 과정인데
이 과정 속의 중간에 있는 과정이 바로 컴퓨터 과학이라고 말할 수 있습니다.
그렇다면 문제 해결을 위해 어떠한 과정으로 컴퓨팅 사고를 하는 것일까요?
컴퓨팅 사고는 4단계로 나뉘는데, 다음과 같습니다.
1. 분해
-> 문제를 나누어 각각의 조각을 확인하거나, 어떻게 문제를 나누면 될 지 생각해내는 과정
2. 패턴 파악
-> "어떠한 예측"을 위해 각각의 조각의 유사한 점과 차이점을 찾아내는 과정
3. 추상화
-> 앞에서 찾아낸 패턴들을 만들어낸 원리를 찾아내는 과정으로 디테일한 부분을 간추려 핵심 요소만 뽑아내는 것
4. 알고리즘 설계
-> 유사한 문제들을 해결하기 위한 절차적인 명령(과정)을 만드는 것
이와 같이 문제 해결을 위한 과정이자, 추상적으로 사고하는 방법이 바로 컴퓨팅 사고라고 할 수 있습니다.
이 과정을 본인이 실제로 문제에 적용할 수 있을까에 관한 의문점도 생길 수 있지만,
의식하면서 오래걸리더라도 꾸준히 연습하고 이 과정을 거치고나면 어느새 나도 모르게 무의식적으로
컴퓨팅 사고를 하고 있지않을까 생각합니다.
중요한 건 스스로 컴퓨팅 사고를 통하여 문제에 대해 숨겨진 패턴과 원리(통찰)를 찾아야한다는 것입니다.
이를 통해 알고리즘 문제뿐만 아니라 앞으로의 어떤 문제든 정복해 나아가시길 바랍니다.
728x90'Computer Science > Boostcourse CS50' 카테고리의 다른 글
3-1 학점 계산 프로그램 (0) 2021.12.24 3. 배열 (0) 2021.12.24 2-2 음식메뉴 소개 프로그램 (0) 2021.12.24 2-1 재고량 관리 프로그램 (0) 2021.12.24 2. C언어 (0) 2021.12.24