컴퓨터 과학
컴퓨터 과학(Computer Science)은 정보와 계산을 표현하고 처리하는 원리, 이를 수행하는 알고리즘과 계산 장치, 그리고 그 위에서 동작하는 소프트웨어와 정보 시스템을 연구하는 학문이다. 컴퓨터라는 물리적 기계를 사용하는 방법만을 다루는 것이 아니라, 어떤 문제가 계산 가능한지...
| 영문명 | Computer Science |
|---|---|
| 분류 | 형식과학, 계산과 정보에 관한 학문 |
| 주요 대상 | 알고리즘, 데이터, 계산, 컴퓨터 시스템, 소프트웨어 |
| 이론적 기반 | 수학, 논리학, 통계학 |
| 관련 분야 | 컴퓨터 공학, 소프트웨어 공학, 정보과학, 인공지능 |
컴퓨터 과학(Computer Science)은 정보와 계산을 표현하고 처리하는 원리, 이를 수행하는 알고리즘과 계산 장치, 그리고 그 위에서 동작하는 소프트웨어와 정보 시스템을 연구하는 학문이다. 컴퓨터라는 물리적 기계를 사용하는 방법만을 다루는 것이 아니라, 어떤 문제가 계산 가능한지, 문제를 얼마나 효율적으로 해결할 수 있는지, 데이터를 어떤 구조로 표현할지, 하드웨어와 소프트웨어를 어떻게 구성할지까지 폭넓게 탐구한다.
컴퓨터 과학의 중심에는 문제를 명확한 절차로 표현하고, 그 절차의 정확성과 자원 사용량을 분석하며, 실제 컴퓨터 시스템에서 실행 가능한 형태로 구현하는 과정이 있다. 이러한 과정은 알고리즘, 자료구조, 계산 이론, 프로그래밍 언어, 컴퓨터 구조, 운영체제, 데이터베이스, 컴퓨터 네트워크와 같은 여러 분야로 이어진다. 계산 가능성 이론은 모든 문제가 알고리즘으로 해결되는 것은 아니며, 원리적으로 계산할 수 없는 문제도 존재한다는 사실을 다룬다.[1]
현대의 컴퓨터 과학은 추상적인 계산 모델과 수학적 증명에서 출발해 프로세서, 운영체제, 분산 시스템과 같은 기반 기술을 연구하는 한편, 인공지능, 컴퓨터 그래픽스, 인간-컴퓨터 상호작용, 사이버 보안, 데이터 과학처럼 현실의 정보와 사용자를 다루는 분야까지 확장되어 있다. ACM, IEEE Computer Society와 AAAI가 공동으로 마련한 CS2023 지침도 알고리즘, 컴퓨터 구조, 인공지능, 데이터 관리, 프로그래밍 언어, 그래픽스, 인간-컴퓨터 상호작용, 네트워크, 운영체제, 분산 컴퓨팅, 보안과 소프트웨어 공학 등을 컴퓨터 과학의 상호 연결된 지식 영역으로 제시한다.[2]
컴퓨터 과학은 컴퓨터 공학, 소프트웨어 공학, 정보기술과 밀접하게 연결되지만 연구의 중심은 서로 다르다. 컴퓨터 공학이 계산 장치를 구성하는 전자 회로와 하드웨어·소프트웨어의 결합에 무게를 둔다면, 소프트웨어 공학은 규모가 크고 장기간 유지되는 소프트웨어를 체계적으로 설계하고 개발하는 과정에 집중한다. 정보기술은 조직에서 실제 컴퓨팅 기반 시설과 서비스를 구축하고 운영하는 활동을 중심으로 한다. 컴퓨터 과학은 이들 분야의 기반이 되는 계산 원리와 알고리즘부터 실제 시스템과 응용까지를 포괄한다.[3]