2010년 9월 15일 수요일

컴퓨터과학개론

00. 컴퓨터과학개론의 각 단원과 컴퓨터교육과 수업 사이의 연관성 찾아보기

Chapter 1. Bic Picture

컴퓨터과학에 대해서 배우게 될 개요와도 같은 것이다. 컴퓨터와 관련된 기본적인 정보를 실음으로써 흥미를 부르고 컴퓨터에 대한 전반적인 내용과 앞으로 배우게 될 내용을 암시하는 도입부 인 것 같다. 전반적인 전공과 연관되어 있을 것이다.


Chapter 2. Binary Values and number systems

컴퓨터의 시스템은 기본적으로 2진법을 사용한다. 0과 1을 통해 신호를 주고 받는데, 이러한 컴퓨터의 가장 기본적인 의사소통법이라고도 할 수 있는 Binary system을 다룸으로써 컴퓨터는 어떻게 작동될까 하는 근본적인 질문에 대한 실마리가 될 수 있는 단원이 될 것이라 생각한다.
프로그래밍 언어를 다루는 전공과목이라면 모두 이 내용이 기본이 될 것이다.


Chapter 3. Data representation

Data를 표현하는 방법에 대하여 다룬다. 실생활에서도 Data를 표현할 수 있는 방법엔 여러가지가 있다. 일반 생활에서 정해놓은 Data의 구분과 정의를 컴퓨터 또한 어떻게 분류하는가 그리고 어떤 종류가 있는 가를 배울 것 같다.
이 또한 C나 JAVA와 같은 내용의 기본이 될 것이다.


Chapter 4. Gates and Circuits

Gate와 Circuits은 컴퓨터를 이루는 부품들에 관한 내용인 것 같다. 컴퓨터의 소프트웨어적인 측면이라기보다는 하드웨어적 측면에서 컴퓨터의 구성요소는 무엇이고 그것의 가장 기본이 되는 것은 어떤 것인지에 관한 정보를 얻을 수 있을 것이다.
컴퓨터 구조나 논리설계 과목에서 나올 것이다.

Chapter 5. Computing componets

말 그대로 계산하는 것에 관한 것이다. 컴퓨터는 기본적으로 연산을 수행함으로써 프로그램을 작동시킨다. 그때 그 연산에는 어떤 종류가 있고 어떻게 작동하는지 그리고 어떤 방법이 있는지에 관하여 대략적으로 언급할 것이다.
모든 전공과목의 바탕으로 알고 가는 내용일 것이다.

Chapter 6. Low-level programming languages and pseudocode

흔히 인간들의 언어를 고급언어라 칭하고 컴퓨터 언어를 저급 언어라 칭한다. 따라서 이 단원은 컴퓨터가 사용하는 저급언어 즉 컴퓨터의 언어를 배우는 것이라 생각한다. 또한 수도코드가 나와있는데 이는 컴퓨터 프로그래밍을 할때 그 단계를 간략히 알아보기 쉽게 적어 놓은 것으로 이단원에서는 컴퓨터 언어와 수도코드를 사용하는 프로그래밍의 가장 기초적인 방법을 배울 것이라 생각한다.
C나 JAVA 그리고 Data structures에서 컴퓨터 프로그램 작성에서 나올 것 이다.


Chapter 7. Problem solving and algorithms

6단원에서 컴퓨터프로그래밍을 하는 기본적인 방법을 배운 후에 더 심화된 프로그래밍을 하기 위해 그 문제를 풀고 구성하는 방법을 배우는 것이다. 어떤 한 문제를 프로그램할때의 문제를 푸는 절차와 그 문제를 풀기 위해 필요한 알고리즘을 작성하는 방법들을 배울 것이다.
C나 JAVA에서 컴퓨터 프로그램작성의 마지막 단계에서 응용 될 것 같다. 또한 알고리즘 수업에도 등장 할 것이다.


Chatper 8. Abstract data types and subprograms

컴퓨터 data를 더욱 효율적으로 사용하기 위해 더욱 고차원적으로 개발된 컴퓨터 Data의 단계이다. 체계적인 프로그램 작성을 가능하게하여 이러한 것을 이용함으로써 사람이 컴퓨터 프로그램을 더욱 알아보기 쉽고 다루기 쉽게 만드는데 필요할 것이다.
모든 전공 특히 컴퓨터 언어를 다루는 것에서 가장 저변이 되는 내용이다.


Chapter 9. Object-oriented design and high level programming languages

객체지향이란 크고 긴 컴퓨터프로그램을 더욱더 효율적으로 그리고 비소비적으로 만들기 위해
고안한 것이다. 중요한 부분들을 모아 코드의 낭비를 막을 수 있고 결국 이러한 디자인을 함으로써 고급언어에 점점 가까워지게 되는 것이다. 좀더 효율적인 컴퓨터 프로그램을 작성하는 것을 가능하게 한다.
이 또한 프로그래밍에 있어서 베이스가 되지만 특히 JAVA에서 객체지향을 많이 강조하여 그 과목과 연관이 있을 것이다.


Chapter 10. Operating systems

컴퓨터를 가동시키는 운영체제에 관해 배우는 것 같다. 컴퓨터가 작동하려면 기본적으로 기능을 수행할 수 있는 어떤 프로그램이 필요한데 그것이 바로 OS이다. 이것은 하드웨어와 소프트웨어를 제어하여 인간이 컴퓨터를 사용할 수 있게 하는 것이다. 따라서 기본적인 컴퓨터 사용에 있어서 가장 필요한 요소이다.
유닉스, 리눅스를 배우는 전공과목과 그리고 오퍼레이팅시스템과 관련되어 있다.


Chapter 11. File systems and directories

기본적으로 파일시스템이나 디렉토리는 운영체제에서 파일을 관리하기 위해 사용되는 것으로 이러한 것들은 운영체제인 리눅스에서 사용되는 개념으로 리눅스 시스템 프로그래밍이나 유닉스의 이해와 같은 전공 내용에서 등장할 것이다.


Chatpter 12. Information systems

데이터를 저장하는 방법과 관리하는 방법에 관한 내용이다.얼마나 효율적으로 정보를 처리할 수 있느냐에 관한 것으로  따라서 데이타 베이스와 관련된 내용을 다룰 것 같다.


Chapter 13. Artificial intelligence

사람이 프로그램하는 것이 아니라 컴퓨터 스스로 작동할 수 있는 인공지능에 관한 내용을 다룬다. 전공과목중 인공지능과 연관이 될 것이다.


Chapter 14. Simulation, graphics, gaming, and other applications

컴퓨터 프로그램 후에 그것을 시각적으로 볼 수 있는 방법이 필요하다. 그러한 방법과 컴퓨터로 할 수 있는 여러가지 응용프로그램에 관하여 알 수 있을 것이다. 컴퓨터 그래픽스, 게임프로그래밍 처럼  여러 응용 프로그램을 다룬 전공선택 과목과 연관이 깊을 것 같다.


Chapter 15. Networks
네트워크는 컴퓨터 한대 가 아니라 여러대의 교류를 가능하게 해주는 것으로 이를 통해 현재와 같은 발달이 가능해 졌다고도 할 수 있다. 특히 인터넷의 기반이 되는 네트워크 기술은 앞으로 컴퓨터 네트워크와 관련한 전공 과목에 기본 지식을 제공할 수 있을 것이다.


Chapter 16. The world wide web
www는 인터넷 관련 용어를 지칭하는 것이다. 그리고 컴퓨터 네트워크의 모습을 말하기도 하는데 이렇게 광범위한 웹의 모습을 현재 컴퓨터의 활용 범위와 모습을 나타내 주고있다. 이 또한 네트워크 관련 전공에 도움이 될 것이다.


Chapter 17. Limitations of computing

computer가 다룰 수 있는 문제는 무엇이고 다를 수 없는 무엇인지에 관하여 다룰 것이고 만약 다룰 수 없는 문제가 없다면 이를 위해 앞으로 어떻게 컴퓨터가 발전해야 하는 지에 대한 비전을 제시해 두었을 것이다. 결국 모든 컴퓨터과학의 최종 과제를 제시한 부분이 아닌가 싶다.

댓글 없음:

댓글 쓰기