검수요청.png검수요청.png

"컴퓨터과학"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(분야)
(태그: 모바일 편집, 모바일 웹 편집)
 
(사용자 2명의 중간 판 3개는 보이지 않습니다)
1번째 줄: 1번째 줄:
'''컴퓨터 과학'''({{llang|en|computer science}}, 컴퓨터 사이언스) 또는 '''전산학'''(電算學)은 [[계산 이론|계산]](computation 코딩이랑 컴퓨터과학이랑 구분 좀 해라 너는), [[정보]](information) 그리고 [[자동화]](automation)에 대한 학문이다.
+
'''컴퓨터과학'''<!--컴퓨터 과학-->(computer science, 컴퓨터 사이언스) 또는 '''전산학'''(電算學)은 [[계산]](computation), [[정보]](information) 그리고 [[자동화]](automation)에 대한 학문이다. 컴퓨터과학은 [[알고리즘]], [[계산]] 및 [[정보]]에 대한 이론적 [[연구]]에서부터 [[하드웨어]]와 [[소프트웨어]]의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐 있다. 전산 이론 및 시스템 설계를 다루는 전문가를 [[컴퓨터과학자]] 또는 [[전산학자]]라고 부른다.
  
컴퓨터 과학은 알고리즘, 계산 및 정보에 대한 이론적 연구에서부터 하드웨어와 소프트웨어의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐 있다.
+
== 개요 ==
 +
'''컴퓨터과학'''(컴퓨터 사이언스) 또는 '''전산학'''(電算學)은 [[계산 이론|계산]](computation), [[정보]](information) 그리고 [[자동화]](automation)에 대한 학문이다.
 +
 
 +
컴퓨터과학은 알고리즘, 계산 및 정보에 대한 이론적 연구에서부터 하드웨어와 소프트웨어의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐 있다.
 +
 
 +
전산 이론 및 시스템 설계를 다루는 전문가를 [[컴퓨터과학자]] 또는 [[전산학자]]라고 부른다.
 +
 
 +
외국에서는 [[컴퓨터공학]](computer engineering)을 컴퓨터과학(computer science, 컴퓨터 사이언스) 분야 중에서 하드웨어를 다루는 세부 영역의 명칭으로 사용하는데 대한민국에서는 컴퓨터과학과 같은 뜻으로 자리 잡았다. Stanford의 경우 Computer Science전공에서 Computer Engineering트랙을 제공한다.[[https://www.cs.stanford.edu/bachelors-compsci-tracks-overview]]
  
전산 이론 및 시스템 설계를 다루는 전문가를 '''[[컴퓨터 과학자]]''' 또는 '''[[전산학자]]'''라 부른다.
+
[https://en.m.wikipedia.org/wiki/Computer_science_and_engineering Computer Science and Engineering] (CSE)이라는 이름으로 교육 프로그램을 운영하는 대학도 존재한다.
  
== 개요 ==
+
컴퓨터과학의 분야는 ([[알고리즘]], [[계산이론]], [[정보이론]] 같은) 이론적인 분야와 (하드웨어와 소프트웨어 설계 및 구현을 포함한) 실용적인 분야로 나눌 수 있다. 예를 들어, [[컴퓨터 그래픽스]][[계산기하학]]은 보다 구체적인 응용을 강조하는 반면, [[계산이론]]은 추상적인 계산 모델과 그것들을 사용하여 해결할 수 있는 일반적인 종류의 문제에 관한 것이다. [[알고리즘]][[자료구조]]는 컴퓨터과학의 심장이라고 불려왔다. [[프로그래밍 언어론]]은 계산 프로세스의 설명에 대한 접근 방식을 고려하는 반면, [[컴퓨터 프로그래밍]]은 복잡한 시스템을 만들기 위해 그것들을 사용하는 것을 포함한다. [[컴퓨터 구조]]는 컴퓨터 구성요소와 컴퓨터 작동원리를 설명한다. [[인공지능]]은 인간과 동물에게서 발견되는 문제 해결, 의사결정, 환경 적응, 계획, 학습과 같은 목표 지향적인 과정을 종합하는 것을 목표로 한다. 디지털 컴퓨터는 다양한 정보 과정을 시뮬레이션할 수 있다. 컴퓨터과학의 근본적인 관심사는 자동화할 수 있는 것과 없는 것을 결정하는 것이다. 컴퓨터과학자들은 보통 학술 연구에 집중한다. [[튜링상]]은 일반적으로 컴퓨터과학에서 가장 뛰어난 상으로 인정받고 있다.
컴퓨터과학은 컴퓨터 기기(하드웨어)가 아닌 자동 연산장치에 의한 계산 및 정보의 연구와 관련한 학문을 분류한 학문이다. 주로 [[연산]], [[알고리즘]], 컴퓨터 시스템 [[하드웨어]], [[소프트웨어]] [[응용프로그램]]의 설계 이론을 연구하고 [[통신]][[제어]], 인지 능력과 [[데이터베이스]]의 학습 등 만들어 낸 자연 정보 및 [[프로세스]] 일체를 취급한다. 정보 자체보다는 정보의 수집, 전달, 축적, 가공을 하는 도구로서의 기계를 연구 대상으로 삼는다. 또한 전산 및 그 응용기술에 대한 과학적이고 실용적인 접근을 의미하며, 전산 이론 및 시스템 설계를 다루는 전문가를 컴퓨터 과학자라고 부른다. 사례로, [[네덜란드]]의 유명한 수학자이자 컴퓨터 과학자인 [[에츠허르 비버 데이크스트라]](Edsger Wybe Dijkstra)"천문학이 망원경에 대한 학문이 아닌 것처럼 컴퓨터과학은 컴퓨터에 대한 학문이 아니다" 라고도 말했다. 별을 보기 위해 먼저 좋은 망원경을 만들고자 노력했던 시기에 좋은 망원경의 확보 여부는 연구에 끼치는 영향이 더 컸었지만, 망원경은 천문학을 돕는 도구이지 연구 대상은 아니다. 이처럼 [[컴퓨터]] 역시 컴퓨터과학에서 도구이지 주된 연구 대상은 아니다.<ref> 길현영, 〈[https://spri.kr/posts/view/21907?code=column 컴퓨터과학에 대한 오해와 진실]〉, 《소프트웨어정책연구소》, 2017-10-30 </ref><ref> 〈[https://jinkun-happy2you.tistory.com/25 컴퓨터과학의 역사로 알아보는 컴퓨터 공학과의 차이.]〉, 《티스토리》, 2020-06-23 </ref>
 
  
 
== 분야 ==
 
== 분야 ==
컴퓨터 과학은 그 이론의 적용법에 따라 여러 분야로 나뉜다. 일반적인 분류는 다음과 같다.
+
컴퓨터과학은 그 이론의 적용법에 따라 여러 분야로 나뉜다. 일반적인 분류는 다음과 같다.
 
 
=== 인접 학문 ===
 
  
 +
===인접 학문===
 
* [[정보철학]]
 
* [[정보철학]]
 
* [[정보심리학]]
 
* [[정보심리학]]
19번째 줄: 24번째 줄:
 
* [[사이버네틱스]]
 
* [[사이버네틱스]]
  
=== 바탕이 되는 이론 ===
+
===바탕이 되는 이론===
 
* [[이산수학]]
 
* [[이산수학]]
 
* [[정보이론]]
 
* [[정보이론]]
27번째 줄: 32번째 줄:
 
* [[암호학]]
 
* [[암호학]]
  
=== [[이론 컴퓨터 과학]] ===
+
===이론 컴퓨터과학===
* [[계산 이론]]
+
* [[계산이론]]
* [[그래프 이론]]
+
* [[그래프이론]]
* [[계산 이론|최적화 이론]]
+
* [[계산이론|최적화 이론]]
 
* [[오토마타 이론]]
 
* [[오토마타 이론]]
* [[유형 이론]]
+
* [[유형이론]]
* [[정보 이론]]
+
* [[정보이론]]
* [[부호 이론]]
+
* [[부호이론]]
* [[양자 컴퓨터|양자 컴퓨팅]]
+
* [[양자컴퓨터|양자 컴퓨팅]]
 
* [[계산 가능성 이론]]
 
* [[계산 가능성 이론]]
* [[형식 언어|형식언어]]
+
* [[형식언어|형식언어]]
* [[람다 대수]]
+
* [[람다대수]]
  
=== 알고리즘과 자료 구조 ===
+
===알고리즘과 자료구조===
 
* [[알고리즘]]
 
* [[알고리즘]]
 
* [[알고리즘 분석]]
 
* [[알고리즘 분석]]
 
* [[확률적 알고리즘]]
 
* [[확률적 알고리즘]]
* [[자료 구조]]
+
* [[자료구조]]
 
* [[계산기하학]]
 
* [[계산기하학]]
* [[조합 최적화]]
+
* [[조합최적화]]
  
=== [[:en:Programming_language_theory|프로그래밍 언어론]]과 [[정형 기법]] ===
+
===프로그래밍 언어론과 정형 기법===
 
* [[프로그래밍 언어]]
 
* [[프로그래밍 언어]]
* [[유형 이론|유형이론]]
+
* [[유형이론]]
 
* [[컴파일러]]
 
* [[컴파일러]]
 
* [[자동 정리 증명]]
 
* [[자동 정리 증명]]
  
=== 병행·병렬·분산 컴퓨팅 ===
+
===병행·병렬·분산 컴퓨팅===
 
* [[병렬 컴퓨팅]]
 
* [[병렬 컴퓨팅]]
 
* [[그리드 컴퓨팅]]
 
* [[그리드 컴퓨팅]]
62번째 줄: 67번째 줄:
  
 
=== 소프트웨어 공학 ===
 
=== 소프트웨어 공학 ===
 
 
* [[소프트웨어 공학]]
 
* [[소프트웨어 공학]]
 
* [[컴퓨터 프로그래밍]]
 
* [[컴퓨터 프로그래밍]]
  
=== 컴퓨터 시스템 ===
+
===컴퓨터 시스템===
 
+
* [[컴퓨터공학]]
* [[컴퓨터 공학]]
 
 
* [[컴퓨터 아키텍처]]
 
* [[컴퓨터 아키텍처]]
* [[마이크로아키텍처]]
+
* [[마이크로 아키텍처]]
 
* [[명령어 집합 구조]]
 
* [[명령어 집합 구조]]
* [[다중 처리]]
+
* [[다중처리]]
* [[운영 체제]]
+
* [[운영체제]]
 
* [[실시간 컴퓨팅]]
 
* [[실시간 컴퓨팅]]
 
* [https://en.m.wikipedia.org/wiki/Processor_design 프로세서 디자인]
 
* [https://en.m.wikipedia.org/wiki/Processor_design 프로세서 디자인]
  
=== 네트워크 ===
+
===네트워크===
 
* [[컴퓨터 네트워크]]
 
* [[컴퓨터 네트워크]]
  
=== [[인공지능]] ===
+
===인공지능===
 
* [[자동 추론]]
 
* [[자동 추론]]
 
* [[로봇공학|로보틱스]]
 
* [[로봇공학|로보틱스]]
 
* [[컴퓨터 비전]]
 
* [[컴퓨터 비전]]
* [[기계 학습]]
+
* [[기계학습]]
* [[진화 연산]]
+
* [[진화연산]]
* [[자율 컴퓨팅]]
+
* [[자율컴퓨팅]]
* [[패턴 인식]]
+
* [[패턴인식]]
* [[지식 표현]]
+
* [[지식표현]]
* [[강화 학습]]
+
* [[강화학습]]
* [[딥 러닝|심층 학습]]
+
* [[딥러닝]]
* [[인공 신경망]]
+
* [[인공신경망]]
* [[떼 지능]]
+
* [[떼지능]]
 
* [[게임이론]]
 
* [[게임이론]]
* [[:en:Algorithmic_game_theory|Algorithmic game theory]]
+
* [[알고리즘 게임이론]]
 
* [[인공생명]]
 
* [[인공생명]]
  
=== 데이터베이스 ===
+
===데이터베이스===
 
* [[데이터베이스]]
 
* [[데이터베이스]]
* [[데이터 마이닝]]
+
* [[데이터마이닝]]
* [[검색 엔진]]
+
* [[검색엔진]]
  
=== [[컴퓨터 그래픽스]]와 시각화 ===
+
===컴퓨터 그래픽스와 시각화===
 
* [[2차원 컴퓨터 그래픽스]]
 
* [[2차원 컴퓨터 그래픽스]]
 
* [[3차원 컴퓨터 그래픽스]]
 
* [[3차원 컴퓨터 그래픽스]]
108번째 줄: 111번째 줄:
 
* [[컴퓨터 애니메이션]]
 
* [[컴퓨터 애니메이션]]
 
* [[렌더링]]
 
* [[렌더링]]
* [[혼합 현실]]
+
* [[혼합현실]]
* [[가상 현실]]
+
* [[가상현실]]
* [[:en:Solid_modeling|솔리드 모델링]]
+
* [[솔리드 모델링]]
 
 
=== 이미지 처리와 음향 처리 ===
 
  
 +
===이미지 처리와 음향 처리===
 
* [[고속 푸리에 변환|FFT 알고리즘]]
 
* [[고속 푸리에 변환|FFT 알고리즘]]
* [[영상 처리|이미지 처리]]
+
* [[영상처리]]
* [[음성 인식]]
+
* [[음성인식]]
 
* [[데이터 압축]]
 
* [[데이터 압축]]
* [[음성 합성]]
+
* [[음성합성]]
  
=== 소셜 컴퓨팅과 인간과 컴퓨터 상호 작용 ===
+
===소셜 컴퓨팅과 인간과 컴퓨터 상호작용===
 
+
* [[소셜컴퓨팅]]
* [[소셜 컴퓨팅]]
 
 
* [[인간-컴퓨터 상호 작용|인간과 컴퓨터 상호작용]]
 
* [[인간-컴퓨터 상호 작용|인간과 컴퓨터 상호작용]]
  
=== [[계산과학]] ===
+
===계산과학===
 
 
 
* [[수치해석학]]
 
* [[수치해석학]]
 
* [[계산생물학]]
 
* [[계산생물학]]

2023년 11월 17일 (금) 01:10 기준 최신판

컴퓨터과학(computer science, 컴퓨터 사이언스) 또는 전산학(電算學)은 계산(computation), 정보(information) 그리고 자동화(automation)에 대한 학문이다. 컴퓨터과학은 알고리즘, 계산정보에 대한 이론적 연구에서부터 하드웨어소프트웨어의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐 있다. 전산 이론 및 시스템 설계를 다루는 전문가를 컴퓨터과학자 또는 전산학자라고 부른다.

개요[편집]

컴퓨터과학(컴퓨터 사이언스) 또는 전산학(電算學)은 계산(computation), 정보(information) 그리고 자동화(automation)에 대한 학문이다.

컴퓨터과학은 알고리즘, 계산 및 정보에 대한 이론적 연구에서부터 하드웨어와 소프트웨어의 계산 시스템 구현에 대한 실질적인 문제에 이르기까지 다양한 주제에 걸쳐 있다.

전산 이론 및 시스템 설계를 다루는 전문가를 컴퓨터과학자 또는 전산학자라고 부른다.

외국에서는 컴퓨터공학(computer engineering)을 컴퓨터과학(computer science, 컴퓨터 사이언스) 분야 중에서 하드웨어를 다루는 세부 영역의 명칭으로 사용하는데 대한민국에서는 컴퓨터과학과 같은 뜻으로 자리 잡았다. Stanford의 경우 Computer Science전공에서 Computer Engineering트랙을 제공한다.[[1]]

Computer Science and Engineering (CSE)이라는 이름으로 교육 프로그램을 운영하는 대학도 존재한다.

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

분야[편집]

컴퓨터과학은 그 이론의 적용법에 따라 여러 분야로 나뉜다. 일반적인 분류는 다음과 같다.

인접 학문[편집]

바탕이 되는 이론[편집]

이론 컴퓨터과학[편집]

알고리즘과 자료구조[편집]

프로그래밍 언어론과 정형 기법[편집]

병행·병렬·분산 컴퓨팅[편집]

소프트웨어 공학[편집]

컴퓨터 시스템[편집]

네트워크[편집]

인공지능[편집]

데이터베이스[편집]

컴퓨터 그래픽스와 시각화[편집]

이미지 처리와 음향 처리[편집]

소셜 컴퓨팅과 인간과 컴퓨터 상호작용[편집]

계산과학[편집]

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 컴퓨터과학 문서는 소프트웨어에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.