Upload
augustus-holt
View
215
Download
2
Tags:
Embed Size (px)
Citation preview
CS 21a: Intro to Computing I
Department of Information Systems
and Computer ScienceAteneo de Manila University
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 2
Introduction
Important information Overview of the course Overview of computing
What is computer science? Introduction to Java
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 3
Important information Course web site:
https://moodle.ateneo.edu:8080
Syllabus and contact info posted there Section-specific information Quick overview of class policies PLEASE READ THE SYLLABUS AND ASK
QUESTIONS IF YOU HAVE ANY
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: 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 and games Learn more on your own by reading
documentation and books
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: 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
(In French, CS is known as Informatique) Includes many areas
mathematics, science, engineering, crafts and art A whole new way of thinking
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 6
What will I get out of CS?
You will learn to (up to a certain extent), how to: Use Design Implement (Program or Set up) Manage Understand / Debug Evaluate
Computer Systems and Information Systems (Hardware and Software)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 7
What will I get out of CS?
You will also learn general “tricks” that apply to many things in real life
Examples You can use sorting algorithms even if you’re
sorting things by hand. You will find applications for things like pipelining,
caching, queueing theory, network routing, state machines, etc., etc. in many real-life systems (especially if you go into operations research or management)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 8
CS: A Way of Thinking
After 4 years in CS / MIS, you will have learned a new way of thinking
You will learn to think methodically and systematically Instinctively think of real-world problems and situations in
terms of interacting objects and systems Analyze real-world problems in a methodical way and
generate a systematic solution that works! You might not even notice yourself learning this!
It will just gradually become instinct. (We hope!)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 9
Basic Terminologies
Computer Program and Algorithm Hardware and Software Operating System Programming Language Compiler
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 10
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 11
Program and Algorithm
Program a sequence of instructions for a computer
Algorithm 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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 12
Hardware
Definition the physical components of a computer
Parts of a Computer Revisited 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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 13
Software Definition
the collection of all programs Examples of Programs
word processor browser application programs compiler operating system
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 14
Operating System
Examples Windows, DOS, UNIX
Definition a program that manages the computer’s
resources resources: devices, programs, and files
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 15
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 16
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)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 17
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 18
Fields in Computer Science
Software Engineering Theory of Computing Database Systems Computer Architecture Operating Systems Data Communications and Networking and a lot more ...
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 19
Software Engineering Development of Programs
how to program (CS 21a, CS 21b) Systems Analysis and Design
disciplined activities that precedes programming (CS 123 for CS majors, MIS 121 for MIS majors)
Software Development Phases engineering concepts apply to developing
software (CS 124)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 20
Theory of CS Data Structures and Algorithms
analyze problems, representations, and algorithmic solutions (CS 110)
Mathematics for Computer Science ( formerly Discrete Math) areas where Math and CS meet (AMC 124 and AMC
125) Theory of Computation
formal models of computational solvability (CS 130)
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 21
Database Systems
Database System a computerized system that maintains
information and makes it available on demand
CS 122 Data models and database design Data manipulation languages Data protection issues: DB integrity, security,
concurrency, recovery
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 22
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 23
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 24
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
6/15/2005Copyright 2005, by the authors of these slides, and Ateneo
de Manila University. All rights reserved. L1: Introduction
Slide 25
Other Fields
Compiler Design Artificial Intelligence Computer-Aided Instruction Multimedia Systems Parallel Processing Management Information Systems
(MIS part of CS versus CS part of MIS)