- 컴퓨터 제작과 관련 학문?
- 컴퓨터 프로그램의 작성/개발과 관련된 학문?
- 문서 작업 또는 인터넷 활용 등을 위한 컴퓨팅 도구를 배우고 다루는 학문?
- 데이터의 표현, 저장, 조작, 검색과 밀접히 관련된 분야
컴퓨터 -> 프로그램을 통해서 데이터를 입력하여 처리, 저장, 검색, 출력하는 전자적 장치 =>
데이터의 획득, 표현, 처리, 저장, 통신, 접근을 위한 방법들의 실행 가능성, 구조화, 표현, 기계화에 관련된 내용을 다루는 분야 - 컴퓨터, 데이터, 프로그램, 알고리즘에 대한 분야
데이터 : 자료구조, 데이터베이스
컴퓨터 : 디지털 논리회로, 컴퓨터 구조
프로그램 : 운영체제, 컴파일러, 프로그래밍 언어론, 정보통신망, 컴퓨터 그래픽스
알고리즘 : 이산구조, 선형대수, 알고리즘, 인공지능 - 알고리즘과 관련된 이슈를 다루는 분야
주어진 문제를 해결하기 위한 처리 과정을 절차적으로 나열한 명령어들의 집합
알고리즘의 존재 여부 = 문제의 해결 여부 -> "컴퓨터의 한계"
컴퓨터 과학의 특성
비교적 짧은 역사,빠른 변화와 사회 전반에 대한 엄청난 영향력
다른 분야와의 밀접한 연관/융합 -> 폭 넓은 연구/응용 범위
수학, 공학, 심리학, 생물학, 언어학, 경영과학, 물리학, 철학,...
컴퓨터 공학 vs 컴퓨터 과학
컴퓨터 공학 : 가격 대비 성능 특성이 좋은 컴퓨팅 엔진을 만들기 위해 하드웨어와 소프트웨어 요소의 조립에 중점
컴퓨터 과학 : 현재의 기술에 덜 의존적인 방식으로 주어진 문제에 대한 해결책의 효율성과 실현 가능성에 보다 중점
컴퓨터를 활용한 문제 해결에 대한 학문
좋은 컴퓨터과학 연구자가 되려면
컴퓨터과학은 퍼즐을 푸는 것과 같아서
- 멋진 해결 방법을 찾으려는 열정
- 해결 방법 평가를 위해 수학적 분석과 논리 정연함을 사용할 수 있는 능력
- 추상화를 통해 복잡한 문제의 모델링 과정에서 발휘할 수 있는 창의성
- 상세한 내용에 숨겨진 가정에 대해 주의를 기울일 수 있는 능력
- 동일한 문제라도 다른 환경에서의 차이점을 인지할 수 있는 능력
- 잘 알려진 효율적 해결 방법을 새로운 환경의 문제에 적용할 수 있는 능력