Introduction to Computer Science

Download Report

Transcript Introduction to Computer Science

Introduction to
Computer Science
CS 21a: Introduction to Computing I
Department of Information Systems
and Computer Science
Ateneo de Manila University
Introduction




Important information
Textbook
Overview of the course
Overview of computing

What is computer science?
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 2
Important information

Course web site:
http://curry.ateneo.net/~jpv/cs21a2008
Syllabus and other pertinent info posted there
Visit this site regularly!


Section-specific information
Ask your instructor
Quick overview of class policies
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 3
Textbook



Cay Horstmann, “Java Concepts”, 5th Ed,
Wiley 2007
Will be available through the ORP
To be used in CS 21a and in
CS 21b/CS 105
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 4
Overview of CS21A

At the end of this course, you’ll be able to:




Analyze a basic problem and design a solution in
terms of objects and algorithms
Implement your solution using Java
Write simple graphical programs
Learn more on your own by reading
documentation and books
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 5
What is Computer Science?
"Computer science is as much about computers as astronomy is about
telescopes."
- Edsgar Dijkstra


Not just writing computer programs or learning how to
use popular tools
In general, the study of the processing of information


Includes many areas


(In French, CS is known as Informatique)
mathematics, science, engineering, crafts and art
A whole new way of thinking
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 6
What will I get out of CS?

You will learn to (up to a certain extent), how to:






Use
Design
Implement
Manage
Understand / Debug
Evaluate
computer systems and information systems
(Hardware and Software)
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 7
Basic Terminology






Computer
Program and Algorithm
Hardware and Software
Operating System
Programming Language
Compiler
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 8
Computer

Computer


an electronic device that can store, retrieve,
and process data through programs
Parts of a Computer



Central Processing Unit (CPU)
Memory
Input/Output Devices
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 9
Program and Algorithm

Program


Algorithm



a sequence of instructions for a computer
a sequence of unambiguous instructions
designed to perform a given task.
“performing a task” implies that it must
terminate and produce output
Program versus Algorithm
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 10
Hardware

Definition


the physical components of a computer
Parts of a Computer



CPU: made up of the Control Unit (CU) and
the Arithmetic/Logic Unit (ALU)
Memory: internal data storage
I/O Devices: presents (output) and accepts
(input) data to and from the outside world
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 11
Software

Definition


the collection of all programs
Examples of Programs





word processor
browser
application programs
compiler
operating system
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 12
Operating System

Examples


Windows, DOS, UNIX
Definition


a program that manages the computer’s
resources
resources: devices, programs, and files
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 13
Languages and Compilers

Programming Language



a set of rules, symbols and special words used
to construct a program
Machine Language: a set of binary-coded
instructions used directly by the computer
Compiler

a program that translates a “high-level”
program into machine language instructions
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 14
History of Computers

5 Generations





0th: the “difference engine” (Babbage)
1st: vacuum tube technology (Mark I, ENIAC)
2nd: transistors (faster, smaller, more reliable)
3rd: integrated circuits (“ICs”)
4th: large-scale integration (LSI), VLSI (led to
the development of microcomputers)
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 15
Computer Science



Not just “programming”
A discipline, a science
Seeks to build a foundation for




computer design
program development
information processing
algorithmic solutions of problems
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 16
Fields in
Computer Science







Software Engineering
Theory of Computing
Database Systems
Computer Architecture
Operating Systems
Data Communications and Networking
and a lot more ...
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 17
Software Engineering

Development of Programs


Systems Analysis / Software Engineering


how to program (CS 21a, CS 21b)
disciplined activities that precedes programming
(CS 123 for CS majors, MIS 121 for MIS majors)
Object-Oriented Software
Design/Implementation

SW engineering concepts as it applies to objectoriented systems (CS 124)
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 18
Theory of CS

Data Structures and Algorithms


Mathematics for Computer Science
(formerly Discrete Math)


analyze problems, representations, and algorithmic
solutions (CS 105 for MIS majors/CS 110 for CS Majors)
areas where Math and CS meet (AMC 124 and AMC 125)
Theory of Computation

formal models of computational solvability (CS 130)
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 19
Database Systems

Database System


a computerized system that maintains
information and makes it available on demand
CS 122/MIS 122



Data models and database design
Data manipulation languages
Data protection issues: DB integrity, security,
concurrency, recovery
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 20
Computer Architecture

CS 150 (for MIS Majors) CS 152a and CS 152b (for
CS Majors) - studies the structure, characteristics
and operation of modern day computer systems





CPU design, function and operation
Memory organization, I/O architecture
Pipelining
CISC, RISC, super-scalar architectures
Parallel and network architectures
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 21
Operating Systems

CS 161 (for MIS majors) / CS 162a and CS 162b
(for CS Majors) - studies the design and
implementation of operating systems and the
theories and principles used in its development




process models, scheduling, synchronization
virtual memory, caching
I/O device management
file systems and structures
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 22
Data Communications and
Computer Networks

CS 154 (for CS Majors)/MIS 131 (for MIS Majors) covers the fundamentals of data
communications, computer networking and
internetworking





Data communications
Network architectures
Communication protocols
LAN,MAN,WAN concepts and technologies
Internet and TCP/IP
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 23
Sub-fields within CS

Elective Tracks:




Business Intelligence
Interactive Multimedia/Game Development
Enterprise Resource Planning
Others




Artificial Intelligence
Parallel Processing
Human-Computer Interaction
And much more …
Copyright 2008, by the authors of these slides, and Ateneo de
Manila University. All rights reserved.
L0: Introduction
Slide 24