본문 바로가기
IT

컴퓨터 과학 (Computer Science)

by 비준 2022. 10. 19.

컴퓨터 과학

컴퓨터 과학 (Computer Science) 또는 전산학은 알고리즘 과정, 계산 기계 그리고 계산 자체에 대한 학문이다. 컴퓨터 과학은 알고리즘, 계산 및 정보에 대한 이론적 연구에서부터 하드웨어와 소프트웨어의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐져 있다. 전산 이론 및 시스템 설계를 다루는 전문가를 컴퓨터 과학자, 전산학자라고 부른다. 컴퓨터 과학 분야는 이론적인 분야와 실용적인 분야로 나눌 수 있다. 컴퓨터 그래픽스나 계산 기하학은 보다 구체적인 응용을 강조하는 반면, 계산 이론은 추상적인 계산 모델과 그것들을 사용하여 해결할 수 있는 일반적인 종류의 문제에 관한 것이다. 알고리즘과 데이터 구조는 컴퓨터 과학의 핵심이라고 불렸다. 프로그래밍 언어론은 계산 프로세스의 설명에 대한 접근 방식을 고려하는 반면 컴퓨터 프로그래밍은 복잡한 시스템을 만들기 위해 그것들을 사용하는 것을 포함한다. 컴퓨터 구조는 컴퓨터 구성요소와 컴퓨터 작동원리를 설명한다. 인공지능은 인간과 동물에게서 발견되는 문제를 해결, 의사결정, 환경 적응, 계획, 학습과 같은 목표 지향적인 과정을 종합하는 것을 목표로 하고 있다. 디지털 컴퓨터는 다양한 정보 과정을 시뮬레이션할 수 있다. 컴퓨터 과학은 근본적인 관심사는 자동화할 수 있는 것과 자동화할 수 없는 것을 결정하는 것이다. 

 

본질

1967년 사이먼 (H.A Simon) 교수는 이와 같은 기본적인 의문에 대해서 뉴웰 (A. Newell) 팰리스 (A.G. Pelris)와의 연명으로 "사이언스"지의 공개장에서 말을 하였는데 그 내용을 요약하자면, 현상이 있는 곳에는 이 현상을 기술하는 과학이 존재한다. 예를 들어 식물학이 식물연구의 과학이고, 천문학이 별 연구를 목적으로 하는 과학인 것처럼 모든 과학은 현상에 의해서 창조된다. 그래서 컴퓨터가 있는 한 컴퓨터를 연구하는 과학으로서의 "컴퓨터 과학"이 있어야 할 것이다. 컴퓨터를 둘러싼 환경, 현상이 여러 갈래이고 복잡하며 문제점이 다수 존재하는 지금, 그런 것의 과학적인 추구의 중요성은 다른 모든 과학의 그것에 비해 다름이 없음을 명백히 하고 회의론자에 의해서 제기된 반론에 대해서 논리적인 6가지 점을 열거하여 과학으로서의 정당성을 주장하고 있다. 자연현상만이 과학을 창조하며 컴퓨터는 인위적, 인공적인 뿐만 아니라 그에 대한 불변의 법칙이 없다 따라서 과학적인 논거가 불비하다는 반론에 대해서는 컴퓨터나 컴퓨터 프로그램은 나날이 발전하고 있고 컴퓨터의 정의는 명확하지 않으며 그 뜻이 새로운 개발에 의해서 변화한다고 해도 과학의 현상, 영역은 모두 항상 변화하는 것이며 컴퓨터 과학만이 그러한 것은 아니라고 말하였다. 천문학도 당초 천체 사이의 가스는 그 영역 밖에 있었고 물리학에도 방사선이 포함되어 있지 않았으며 심리학도 동물행동 연구를 범위 외로 하였던 때가 있음을 지적하고 또한 수학이 예전에는 "수량의 과학"이라고 정의되었던 사실을 예증하고 있다. "컴퓨터 과학"은 어디까지나 컴퓨터를 둘러싼 현상의 연구를 하려는 과학이지 컴퓨터를 다른 장비와 같이 단지 기기로서의 파악하는 것을 부정한다. 그리고 과학을 일렉트로닉스, 수학, 심리학 등의 분지 과학이라고 하는 반론에 대해서 컴퓨터의 연구에는 위에 든 기존 과학의 연구도 필요하다는 것을 긍정하면서도 현상이 과학의 중심을 정의하고 다른 과학과의 경계를 정의하는 것이 아니라고 말하였다. 또 컴퓨터가 엔지니어링에 귀속되며 과학의 대상이 될 수 없지 않는가라는 의문점에 대해서는 전기가 물리학과 엔지니어링, 식물이 식물학과 농학에 각각 연관이 되어있는 것과 같이 컴퓨터도 엔지니어링과 과학의 양자에 상관관계가 있다고 말하였다. "컴퓨터 과학"은 그것의 전문적인 과학으로서의 발전과정에서 더욱더 분석과 가설과의 조합, 순수 연구와 애플리케이션 분석의 통합, 그리고 상관적 전개를 통하여 학문적 체계의 특성을 명확히 할 필연성을 갖는다고 말하고 있다. "컴퓨터 과학"이 생명력을 갖춘 컴퓨터의 추구를 목적으로 한 과학 체계로써 발전할 것을 사실이며 컴퓨터 과학자의 과제는 여러 인접과학자와의 협동을 활발히 하고 "컴퓨터 과학"으로 하여금 인간 사회 발전을 위해 유효한 과학 체계로서 공헌할 수 있도록 하는 데 있다.

 

역사

컴퓨터 과학의 역사는 현대의 디지털 컴퓨터의 역사만을 가르키는 것이 아니다. 주판과 같이 계산을 수행하는 기기는 오래전부터 있었다. 1623년에는 최초의 계산 기계가 만들어졌고 찰스 배비지는 19세기 초에 차분기관을 만들었다 1900년대에 들어서 IBM사가 펀치카드시스템 (PCS)을 개발하여 회계에 관련된 일을 하도록 보급하였다. 그러나 이것들은 모두 한 가지의 일만 할 수 있었다. 1920년 이전까지 "컴퓨터 (Computer)"는 "계산 (Compute)"을 담당하는 사무관을 말하는 용어였다.  쿠르트 괴텔, 알론조 처치, 앨런 튜링과 같은 컴퓨터 과학 초기의 학자들은 계산 가능성 문제에 흥미를 느꼈었다. 이러한 흥미는 계산이라고 하는 지겨울 수도 있고 오류율이 높은 작업을 자동화하고자 하는 욕구로부터 시작되었다. 그들은 이리하여 한 가지의 종류의 일만 수행할 수 있었던 기존의 기계와 다른 이론적으로 어떠한 계산도 가능한 기계를 만들고자 하였다. 이로한 노력이 현대 컴퓨터 과학의 시작이다. 1940년대에 들어서자 더욱 강력한 기능을 가진 계산기들이 등장하였고, 이때부터 "컴퓨터"는 사람이 아닌 이 기계들을 부르는 용어가 되었다. 컴퓨터가 단순한 숫자 계산보다 더 다양한 기능을 할 수 있는 것들이 알려지면서 컴퓨터 과학이라는 분야가 더욱더 넓어지기 시작하였다. 1960년대부터 여러 대학에 컴퓨터 과학 학과와 전공과정이 생기면서 컴퓨터 과학이 학문으로 인정받기 시작하였으며, 쓰임새에 따라 세분화되었다.

'IT' 카테고리의 다른 글

플래시 메모리 (Flash memory)  (0) 2022.10.19
단일 칩 시스템 (System On Chip, SoC)  (0) 2022.10.03
무선 통신 (Wireless Communication)  (0) 2022.09.28
스트리밍 (Streaming)  (0) 2022.09.27
스크럼 (Scrum, 애자일 개발 프로세스)  (0) 2022.09.27

댓글