CS 21 a Intro to Computing I Department

  • Slides: 25
Download presentation
CS 21 a: Intro to Computing I Department of Information Systems and Computer Science

CS 21 a: Intro to Computing I Department of Information Systems and Computer Science Ateneo de Manila University 6/15/2005

Introduction n Important information Overview of the course Overview of computing n n What

Introduction n Important information Overview of the course Overview of computing n n What is computer science? Introduction to Java 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 2

Important information n Course web site: https: //moodle. ateneo. edu: 8080 n n Syllabus

Important information n Course web site: https: //moodle. ateneo. edu: 8080 n n 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/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 3

Overview of CS 21 A n At the end of this course, you’ll be

Overview of CS 21 A n At the end of this course, you’ll be able to: n n 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/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 4

What is Computer Science? "Computer science is as much about computers as astronomy is

What is Computer Science? "Computer science is as much about computers as astronomy is about telescopes. " - Edsgar Dijkstra n n Not just writing computer programs or learning how to use popular tools In general, the study of the processing of information n n Includes many areas n n (In French, CS is known as Informatique) mathematics, science, engineering, crafts and art A whole new way of thinking 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 5

What will I get out of CS? n You will learn to (up to

What will I get out of CS? n You will learn to (up to a certain extent), how to: n n n Use Design Implement (Program or Set up) Manage Understand / Debug Evaluate Computer Systems and Information Systems (Hardware and Software) 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 6

What will I get out of CS? n n You will also learn general

What will I get out of CS? n n You will also learn general “tricks” that apply to many things in real life Examples n n 6/15/2005 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. in many real-life systems (especially if you go into operations research or management) Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 7

CS: A Way of Thinking n n After 4 years in CS / MIS,

CS: A Way of Thinking n n After 4 years in CS / MIS, you will have learned a new way of thinking You will learn to n n 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/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 8

Basic Terminologies n n n Computer Program and Algorithm Hardware and Software Operating System

Basic Terminologies n n n Computer Program and Algorithm Hardware and Software Operating System Programming Language Compiler 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 9

Computer n n an electronic device that can store, retrieve, and process data through

Computer n n an electronic device that can store, retrieve, and process data through programs Parts of a Computer n n n 6/15/2005 Central Processing Unit (CPU) Memory Input/Output Devices Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 10

Program and Algorithm n Program n n Algorithm n n n a sequence of

Program and Algorithm n Program n n Algorithm n n n 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 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 11

Hardware n Definition n n the physical components of a computer Parts of a

Hardware n Definition n n the physical components of a computer Parts of a Computer Revisited n n n 6/15/2005 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 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 12

Software n Definition n n the collection of all programs Examples of Programs n

Software n Definition n n the collection of all programs Examples of Programs n n n 6/15/2005 word processor browser application programs compiler operating system Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 13

Operating System n Examples n n Windows, DOS, UNIX Definition n n 6/15/2005 a

Operating System n Examples n n Windows, DOS, UNIX Definition n n 6/15/2005 a program that manages the computer’s resources: devices, programs, and files Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 14

Languages and Compilers n Programming Language n n n a set of rules, symbols

Languages and Compilers n Programming Language n n n 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 n 6/15/2005 a program that translates a “high-level” program into machine language instructions Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 15

History of Computers n 5 Generations n n n 6/15/2005 0 th: the “difference

History of Computers n 5 Generations n n n 6/15/2005 0 th: the “difference engine” (Babbage) 1 st: vacuum tube technology (Mark I, ENIAC) 2 nd: transistors (faster, smaller, more reliable) 3 rd: integrated circuits (“ICs”) 4 th: large-scale integration (LSI), VLSI (led to the development of microcomputers) Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 16

Computer Science n n n Not just “programming” A discipline, a science Seeks to

Computer Science n n n Not just “programming” A discipline, a science Seeks to build a foundation for n n 6/15/2005 computer design program development information processing algorithmic solutions of problems Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 17

Fields in Computer Science n n n n Software Engineering Theory of Computing Database

Fields in Computer Science n n n n Software Engineering Theory of Computing Database Systems Computer Architecture Operating Systems Data Communications and Networking and a lot more. . . 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 18

Software Engineering n Development of Programs n n Systems Analysis and Design n n

Software Engineering n Development of Programs n n Systems Analysis and Design n n how to program (CS 21 a, CS 21 b) disciplined activities that precedes programming (CS 123 for CS majors, MIS 121 for MIS majors) Software Development Phases n 6/15/2005 engineering concepts apply to developing software (CS 124) Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 19

Theory of CS n Data Structures and Algorithms n n Mathematics for Computer Science

Theory of CS n Data Structures and Algorithms n n Mathematics for Computer Science ( formerly Discrete Math) n n analyze problems, representations, and algorithmic solutions (CS 110) areas where Math and CS meet (AMC 124 and AMC 125) Theory of Computation n 6/15/2005 formal models of computational solvability (CS 130) Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 20

Database Systems n Database System n n a computerized system that maintains information and

Database Systems n Database System n n a computerized system that maintains information and makes it available on demand CS 122 n n n 6/15/2005 Data models and database design Data manipulation languages Data protection issues: DB integrity, security, concurrency, recovery Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 21

Computer Architecture n CS 150 (for MIS Majors) CS 152 a and CS 152

Computer Architecture n CS 150 (for MIS Majors) CS 152 a and CS 152 b (for CS Majors) - studies the structure, characteristics and operation of modern day computer systems n n n 6/15/2005 CPU design, function and operation Memory organization, I/O architecture Pipelining CISC, RISC, super-scalar architectures Parallel and network architectures Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 22

Operating Systems n CS 161 (for MIS majors) / CS 162 a and CS

Operating Systems n CS 161 (for MIS majors) / CS 162 a and CS 162 b (for CS Majors) - studies the design and implementation of operating systems and theories and principles used in its development n n 6/15/2005 process models, scheduling, synchronization virtual memory, caching I/O device management file systems and structures Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 23

Data Communications and Computer Networks n CS 154 (for CS Majors)/MIS 131 (for MIS

Data Communications and Computer Networks n CS 154 (for CS Majors)/MIS 131 (for MIS Majors) covers the fundamentals of data communications, computer networking and internetworking n n n 6/15/2005 Data communications Network architectures Communication protocols LAN, MAN, WAN concepts and technologies Internet and TCP/IP Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 24

Other Fields n n n Compiler Design Artificial Intelligence Computer-Aided Instruction Multimedia Systems Parallel

Other Fields n n n Compiler Design Artificial Intelligence Computer-Aided Instruction Multimedia Systems Parallel Processing Management Information Systems (MIS part of CS versus CS part of MIS) 6/15/2005 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved. 25