computer scince
TRANSCRIPT
Chapter 3: What is Computer Science?
Christian Jacob
TOC
1
Back
1 What is Computer Science? 3
2 Research Areas of Computer Science (CS) 9
2.1 Theoretical Computer Science 152.2 Programming Languages 162.3 Computer Structures 172.4 Operating Systems 182.5 Pattern Recognition 192.6 Database Systems 202.7 Communication Systems 212.8 Artificial Intelligence 222.9 Computer Graphics 232.10 System Simulation 242.11 Computers and their Environment 252.12 Computational “X” 26
3 New Frontiers of Computing? 27
4 Learning the Computers´ Languages 28
5 Conjuring the Spirits of the Computer … 29
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
3
Prev Next Last
1 What is Computer Science?
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
4
Prev Next Last
1 What is Computer Science?
to compute:
(French
computer
or Latin
computare
; as COM-,
putare
´reckon´)
Computer Science = Science of how to
Calculate
???
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
5
Prev Next Last
1 What is Computer Science?
to compute:
(French
computer
or Latin
computare
; as COM-,
putare
´reckon´)
Computer Science = Science of how to
Calculate
???
computer:
1. a
person who computes
or makes calulations (originally, well-trained mathematicians performing complex computations to set up logarithmic and trigonometric tables in the 18th century)
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
6
Prev Next Last
1 What is Computer Science?
to compute:
(French
computer
or Latin
computare
; as COM-,
putare
´reckon´)
Computer Science = Science of how to
Calculate
???
computer:
1. a
person who computes
or makes calulations (originally, well-trained mathematicians performing complex computations to set up logarithmic and trigonometric tables in the 18th century)
2. a usually electronic device for
storing
and
processing data
(usually in binary form), according to instructions given to it in a variable program
1
1. The Concise Oxford Dictionary, Ninth Edition
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
7
Prev Next Last
1 What is Computer Science?
to compute:
(French
computer
or Latin
computare
; as COM-,
putare
´reckon´)
Computer Science = Science of how to
Calculate
???
computer:
1. a
person who computes
or makes calulations (originally, well-trained mathematicians performing complex computations to set up logarithmic and trigonometric tables in the 18th century)
2. a usually electronic device for
storing
and
processing data
(usually in binary form), according to instructions given to it in a variable program
1
Computers are machines for the
processing
of
information:
- storage -generation- retrieval - transformation- analyzation - …
1. The Concise Oxford Dictionary, Ninth Edition
What is Computer Science?
What is Computer Science?
Christian Jacob
First Back TOC
8
Prev Next Last
Computer Science
=
Science of Processing Information by Computers
=
Informatics
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
9
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
10
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Computer Structures
Operating SystemsCommunication Systems
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
11
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Computer Structures
Operating SystemsCommunication Systems
Computers & their Environment
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
12
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Computer Structures
Operating Systems
Database Systems
Communication Systems
Computer Graphics
System Simulation
Computers & their Environment
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
13
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Computer Structures
Operating Systems
Pattern RecognitionDatabase Systems
Communication Systems
Artificial IntelligenceComputer Graphics
System Simulation
Computers & their Environment
Computational “X”
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
14
Prev Next Last
2 Research Areas of Computer Science (CS)
Theoretical CS
Programming Languages
Computer Structures
Operating Systems
Pattern RecognitionDatabase Systems
Communication Systems
Artificial IntelligenceComputer Graphics
System Simulation
Computers & their Environment
Computational “X”
New Frontiers …
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
15
Prev Next Last
2.1 Theoretical Computer Science
Theoretical CS
Automata Theory
Formal Languages
Grammars
ComputabilityCoding Theory
Complexity
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
16
Prev Next Last
2.2 Programming Languages
Theoretical CSProgramming Languages
Modern programming languages and concepts
Syntax analysis
Grammars
Compilers
Code optimization
Visual programming
Genetic programming
Efficient Algorithms
Interpreters
Debuggers
Procedural … Functional … Rule-based … Object-oriented Programming
Soft computing:
- neural networks
- fuzzy systems
- evolutionary algorithms
Software Engineering
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
17
Prev Next Last
2.3 Computer Structures
Theoretical CSComputer Structures
Multi-processing systems
Massively parallel computing architectures
Distributed computer architectures
Fault-tolerant computing systems
New Computer Architectures
Massively Parallel Computer Architectures
Alternative ComputingEnvironments
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
18
Prev Next Last
2.4 Operating Systems
Theoretical CSOperating Systems
Multiprocessor and Network ConfigurationsObject-oriented Distributed Control
Computational Processes
System Processes
Synchronisation
Resource Allocation
Resource Sharing
Time-shared Processing
Multi-User Processing
Multi-Threaded Processing
Quasi-Parallel Computation
Research Areas of Computer Science (CS)
What is Computer Science?
Christian Jacob
First Back TOC
19
Prev Next Last
2.5 Pattern Recognition
Theoretical CSPattern Recognition
Computer Vision
Image Analysis
Speech Understanding
Knowledge Processing
Data Mining
Speech Recognition
Voice Recognition
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 20 Prev Next Last
2.6 Database Systems
Theoretical CSDatabase Systems
Information Storage and Retrieval
Distributed Database Systems
Scientific Database Management
Workflow Management
Electronic Trading
E-commerce
Data Mining
Sorting
Searching
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 21 Prev Next Last
2.7 Communication Systems
Theoretical CSCommunication Systems
Performance evaluation
Analytical Simulation
Measurement Techniques
Communication Networks
SIMD Machines
MIMD Machines:Multiple Input Multiple Data
Simple Input Multiple Data
Unconventional Computer Architectures
Design and Evaluation of
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 22 Prev Next Last
2.8 Artificial Intelligence
Theoretical CSArtificial Intelligence
Machine LearningKnowledge and Reasoning
Planning
Uncertain Knowledge and ReasoningCommunicating
Robot Control
Alternative “Programming” Paradigms
Neural Networks
Evolutionary Algorithms
Perceiving
Acting
Fuzzy Logic
Symbolic Computation
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 23 Prev Next Last
2.9 Computer Graphics
Theoretical CSComputer Graphics
Scientific Visualization
Rendering Techniques
Modelling of 3D ScenesAnimation
Computer Games
Virtual Reality
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 24 Prev Next Last
2.10 System Simulation
Theoretical CSSystem Simulation
Self-Organizing Systems and Parallel Computation
High-Performance Programming Techniques
Continuous Simulation
Discrete Simulation
Multi-Level Methods
Numerical Simulation of Fluids
Parallel Finite Elements Algorithms for High-Performance Computers
Simulation in Science and Engineering
Stochastic Simulation and Modeling
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 25 Prev Next Last
2.11 Computers and their Environment
Theoretical CSComputers & their Environment
Human-computer interaction
Design of “intelligent” computers Interface design
Research Areas of Computer Science (CS) What is Computer Science? Christian Jacob
First Back TOC 26 Prev Next Last
2.12 Computational “X”
Theoretical CSComputational “X”
Computational Biology, Bioinformatics
Computational Physics
Computational Mechanics
Computational Chemistry
Computational Mathematics
Computer AlgebraSymbolic Computation
New Frontiers of Computing? What is Computer Science? Christian Jacob
First Back TOC 27 Prev Next Last
3 New Frontiers of Computing?
Quantum Computing
DNA Computing
Evolutionary Computing
Agent-based, Distributed Computing
Massively Parallel Computing
…
Learning the Computers´ Languages What is Computer Science? Christian Jacob
First Back TOC 28 Prev Next Last
4 Learning the Computers´ Languages
I always worked with programming languages because it seemed to me that until you could understand those, you really couldn´t understand computers.
Understanding them doesn´t really mean only being able to use them.
A lot of people can use them without understanding them.
Christopher Strachey (1916-1975)1
1. Christopher Strachey was the first leader of the Programming Research Group (PRG), part of the Oxford University Computing Laboratory (OUCL), founded in 1965. He was the first Professor of Computation at Oxford, succeeded by Tony Hoare in 1977 after his untimely death. With Dana Scott he founded the field of denotational semantics, providing a firm mathematical foundation for programming languages.
Conjuring the Spirits of the Computer … What is Computer Science? Christian Jacob
First Back TOC 29 Prev Next Last
5 Conjuring the Spirits of the Computer …
We are about to study the idea of a computational process.
Computational processes are abstract beings that inhabit computers.
As they evolve, processes manipulate other abstract things called data.
The evolution of a process is directed by a pattern of rules called a program.
People create programs to direct processes.
“In effect, we conjure the spirits of the computer with our spells.”1
1. H. Abelson and G. J. Sussman, Structure and Interpretation of Computer Programs, MIT Press, 1991.