아래 내용은 DeepL로 기계 번역 후 수기로 감수함
컴퓨팅 사고는 컴퓨터 과학에서 차용한 다양한 기술과 사고 과정을 포함하는 문제 해결 과정입니다. 여기에는 분해, 패턴 인식, 추상화 및 알고리즘 사고와 같은 기술이 포함되어 있어 복잡한 문제를 관리하기 쉬운 부분으로 나누고 패턴을 파악하며 단계별 솔루션을 개발하여 해결할 수 있습니다. 컴퓨팅 사고는 프로그래밍에만 국한된 것이 아니라 비판적 사고와 분석 능력을 향상 시키기 위해 다양한 분야에 적용할 수 있는 기본 기술입니다.
기술이 우리 삶의 거의 모든 측면에 계속 통합됨에 따라 어릴 때부터 컴퓨팅 사고력을 키우는 것은 학생들이 현대 노동력의 요구에 대비할 수 있도록 준비 시킵니다. 컴퓨팅 사고를 커리큘럼에 통합함으로써 교육자는 학생들이 체계적이고 창의적으로 문제에 접근할 수 있는 능력을 갖추게 하여 디지털 시대의 과제를 보다 능숙하게 해결할 수 있도록 도울 수 있습니다.
컴퓨팅 사고 소개
컴퓨팅 사고는 2006년 J. M. 윙이 미국수학회지 커뮤니케이션에 발표한 에세이에서 이 용어를 사용한 것으로 널리 알려져 있습니다. 비슷한 표현인 “절차적 사고”는 10년 전에 MIT 수학과 소속으로 1960년대에 로고 프로그래밍 언어 개발을 도왔던 S. 파퍼트가 사용했습니다.
컴퓨터 과학과 관련된 현대적 정의이지만, 컴퓨팅 사고는 오랫동안 과학부터 예술에 이르기까지 일상 생활에서 사용되는 문제 해결의 고유한 시스템으로 사용되어 왔습니다. 하지만 이 프로세스가 정의되고 이름이 붙여진 것은 최근의 일입니다.
컴퓨팅 사고의 정의와 이해가 향상됨에 따라 교사와 기타 강사는 학생들이 보다 전략적이고 반복 가능한 방식으로 복잡한 문제를 해결할 수 있는 도구와 프로세스를 더 잘 지원할 수 있습니다.
컴퓨팅 사고 정의
컴퓨팅 사고는 복잡한 문제에 대한 명확한 단계별 해결책을 찾아내는 과정입니다. 문제를 더 작은 조각으로 나누고, 패턴을 인식하고, 불필요한 요소를 제거한 다음 단계별 해결책을 만들어내는 것으로 시작하여 이를 반복할 수 있습니다.
컴퓨팅 사고는 컴퓨터 과학의 핵심 원리와 방법론에서 직접 도출되기 때문에 “컴퓨팅”이라고 불립니다. 이 접근 방식은 알고리즘, 데이터 구조, 자동화와 같은 개념을 활용하여 컴퓨터 또는 알고리즘이 문제 해결에 도움을 줄 수 있는 방식으로 문제를 구성하는 것을 포함합니다. 이는 기계가 복제하고 실행할 수 있는 정확하고 논리적 단계를 사용하여 문제 해결 프로세스를 보다 효율적이고 확장 가능하게 만드는 것을 강조합니다. 계산적으로 사고함으로써 개인은 복잡한 작업을 더 작고 관리하기 쉬운 하위 작업으로 나누고, 패턴과 추세를 인식하며, 자동화할 수 있는 일반화 가능한 솔루션을 만드는 방법을 배우게 되는데, 이 모든 것이 컴퓨팅과 프로그래밍의 영역에서 기본이 되는 요소입니다.
이러한 문제 해결 패턴은 컴퓨터 과학 뿐만 아니라 언어, 역사, 과학, 수학, 예술 등 일상 생활에서도 사용됩니다. “언플러그드” 컴퓨팅 사고와 같은 것이 있지만, 현대의 컴퓨팅 사고에는 알고리즘을 실행하기 위해 컴퓨터와 같은 기술과 관련된 솔루션이 포함되는 경우가 많습니다.
컴퓨팅 사고의 4가지 요소
컴퓨팅적사고가 컴퓨터 과학에서 사용되든 다른 주제 영역에서 사용되든 관계없이 컴퓨팅 사고의 과정은 네 가지 요소 또는 단계로 나눌 수 있습니다.
1. 분해
컴퓨팅 사고의 첫 번째 단계는 분해입니다. 사고의 학파에 따라 다른 이름으로 불릴 수 있지만, 복잡한 문제를 풀려면 먼저 문제를 더 작고 관리하기 쉬운 부분으로 분해해야 한다는 기본 과정은 동일합니다.
분해는 문제를 더 관리하기 쉽게 만드는 데 도움이 되기 때문에 컴퓨팅 사고의 중요한 부분입니다(“코끼리를 먹는 가장 좋은 방법은 한 번에 한 입씩 먹는 것”이라는 표현을 들어보셨을 것입니다). 또한 문제 해결자가 해결하려는 문제를 더 잘 정의하고 이해하는 동시에 패턴 인식과 추상화를 통해 문제를 단순화할 수 있도록 도와줍니다.
2. 패턴 인식
컴퓨팅 사고의 일부도 패턴 인식입니다. 이는 더 큰 문제의 여러 부분 사이의 패턴이나 연관성을 식별하는 과정입니다. 패턴 인식의 목적은 세부 사항이 비슷하거나 다른 부분을 찾아 문제를 더욱 단순화하고 더 복잡한 문제에 대한 지속적인 이해를 구축하는 것입니다.
3. 추상화
추상화는 분해된 각 문제에서 가장 관련성이 높은 정보를 추출하는 과정입니다. 이는 문제를 전체적으로 해결하기 위해 정확히 무엇을 해야 하는지 정의하거나 일반화하는 데 도움이 됩니다. 컴퓨팅 사고 과정의 이 단계는 학생들이 이러한 중요한 세부 정보가 같은 문제의 다른 영역을 해결하는 데 어떻게 사용될 수 있는지 파악하는 데 도움이 됩니다.
4. 알고리즘 사고
컴퓨팅 사고의 마지막 구성 요소는 알고리즘 사고입니다. 이는 예측 가능하고 신뢰할 수 있는 결과를 위해 복제할 수 있는 문제에 대한 단계별 해결책을 정의하는 과정입니다. 컴퓨터 과학과 관련된 컴퓨팅 사고의 현대적 정의에서 이 솔루션은 컴퓨터에 의해 완성되는 단계별 프로세스가 될 것입니다. 그러나 이 과정은 사람이 부분적으로 또는 전체적으로 완료할 수도 있습니다.
최종 생각
컴퓨터 과학 업계에서든 일상 생활에서든 컴퓨팅 사고는 복잡한 문제를 정의하고 해결하는 데 매우 유용한 도구가 될 수 있습니다. 어린이 교육에서 컴퓨팅 기술을 가르치고 강화하는 것은 컴퓨터 코딩과 같은 취업 준비 기술을 증진할 뿐만 아니라 학생들이 미래에 직면하게 될 문제를 더 잘 관리하는 데도 도움이 될 수 있습니다.