c omp 110 – i ntroduction to p rogramming instructor: prasun dewan
TRANSCRIPT
![Page 1: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/1.jpg)
COMP 110 – INTRODUCTION TO PROGRAMMING
Instructor: Prasun Dewan
![Page 2: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/2.jpg)
PREREQUISITES
None
![Page 3: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/3.jpg)
COMPUTER WORLD
Hardware MemoryOperating System Memory PageProgram Memory WordProcessor Memory Address Instruction (e.g. add 2 to 5) Running a ProgramSource Code Interactive ProgramObject Code Non-interactive (Batch) ProgramProgramming Language Program argumentsMachine Language Runtime Programmers EditorLibrary (of Code) Editing ProgramsTranslator (Compilers/Interpreter) Lexical ErrorUsers Syntax Error Disks Semantics Error
Logic ErrorDebuggingStyle Principles
![Page 4: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/4.jpg)
THEATER ANALOGY
Play Concert Talk Speech Cooking Lessons Town Hall Meeting
![Page 5: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/5.jpg)
THEATER WORLD – PART 1
Performer
Theater
Performer
Stage
Audience
Performs
Real Trial
Performance Script
Follows
Performance Language
Written in
Notebook or Teleprompte
r
Stored in
Archive
Fetched from
Stagehand
Assists
Management
Manages
![Page 6: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/6.jpg)
THEATER WORLD – PART 2
Performance Script
Performance Language
Written in
Original ScriptScript
LanguageWritten in
TranslatorTranslator
(Interpreter)
Writes entire script
Reads entire script
Speaks sentence
Hears sentence
![Page 7: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/7.jpg)
THEATER WORLD – PART 3
Original ScriptScript
LanguageWritten in
Script Writer
Written by
Typewriter, Text Editor
Uses
Secretary
Reference Material
LinksSyntax, Semantics,
Logic, & Style
Problems
Checked by
Word Processor, Script Writer
Translator / Interpreter,Stagehand, Performer
![Page 8: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/8.jpg)
COMPUTER WORLD – PART 1
Processor
Computer
Users
Interacts with
Real Debugging
Object Code
Follows
Machine Language
Written in
Memory
Stored in
Disk, Tape
Fetched from
Runtime
Assists
Operating System
Manages
![Page 9: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/9.jpg)
COMPUTER WORLD – PART 2
Object CodeMachine
LanguageWritten in
Source CodeProgramming Language
Written in
Compiler Interpreter
Writes entire
source code
Reads source code
Writes statement
Reads statement
![Page 10: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/10.jpg)
Processor
Compiler
Interpreter
Source Code
Platform Independent
Intermediate Code
Platform Specific Machine Code
TRANSLATING USING BOTH A COMPLIER AND AN INTERPRETER
![Page 11: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/11.jpg)
THEATER WORLD – PART 3
Source CodeProgramming Language
Written in
Programmer
Written by
Typewriter, Text Editor
Uses
Linker
Libraries
LinksSyntax, Semantics,
Logic, & Style
Problems
Checked by
Editor, Programmer, Translator, Operating
System Runtime, Processor
![Page 12: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/12.jpg)
COMPUTER VS. THEATERComputer Theater
Hardware TheaterOperating System Theater ManagementProgram PerformanceProcessor PerformerInstruction (e.g. add 2 to 5) Performance action (e.g. walk 3
steps.)Source Code Original ScriptObject Code Performance ScriptProgramming Language Script Language (e.g. German)Machine Language Performance Language (e.g.
English)Programmers Script WritersLibrary (of Code) Reference Material (from Books)Translator (Compilers/Interpreter) Translator (Before/During
Performance)Users AudienceDisks Archival Storage AreasMemory Script performance notebook
accessible to performersHardware Theater
![Page 13: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/13.jpg)
COMPUTER VS. THEATERComputer Theater
Memory Page A Notebook PageMemory Word A Notebook LineMemory Address (Page Number, Word Number)
Line Identification (Page Number, Line Number)
Running a Program Performing a ScriptInteractive Program Performance with audience
participationNon-interactive (Batch) Program Performance with no audience
participationProgram arguments Special instructions at start of
performanceRuntime Stage-HandsEditor Typewriter/WordprocessorEditing Programs Writing ScriptsLexical Error Spelling ErrorSyntax Error Grammar ErrorSemantics Error Inconsistencies in ScriptLogic Error Execution Error Debugging Staging trial performancesStyle Principles Style Principles
![Page 14: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/14.jpg)
COMPUTER VS. THEATER
CPU is fast: can do several performances at one time.
CPU is dumb: no improvisation possible. Machine language much lower-level than
programming language.
![Page 15: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/15.jpg)
WHY JAVA
Modern, modular (object-oriented) language. Good Error Detection. Rich Library Embodying Many Good
Programming Principles Can Write Teaching Tool (ObjectEditor)
![Page 16: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/16.jpg)
JAVA VERSIONS, DIALECTS & PROGRAMMING ENVIROMNET
JDK 1.5+ Eclipse IDE Programming Environment Will not matter
![Page 17: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/17.jpg)
COMPUTER VS. PROGRAM MODEL
Processor
Compiler
Program (source code)?
![Page 18: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/18.jpg)
STRUCTURING IN SCRIPTS
Script
Performer
Theater
Follows
![Page 19: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/19.jpg)
STRUCTURING IN SCRIPTS
Script
Introduction Body Conclusion
Paragraph 1 Paragraph 2
Sentence 1 Sentence 2
Script components are abstract.
So are program components!
![Page 20: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/20.jpg)
COMPUTER VS. PROGRAM MODEL
Processor
Compiler
Program (source code)?
![Page 21: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/21.jpg)
OUTLINE
Intuitive Explanation Two Concrete Examples Calculators
square BMI
Basic Java program elements, programming styles, error handling
Running and interacting with a Java program
![Page 22: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/22.jpg)
STRUCTURING IN SCRIPTS
Script
Performer
Theater
Follows
![Page 23: C OMP 110 – I NTRODUCTION TO P ROGRAMMING Instructor: Prasun Dewan](https://reader030.vdocuments.site/reader030/viewer/2022032804/56649e465503460f94b3b20f/html5/thumbnails/23.jpg)
STRUCTURING IN SCRIPTS
Script
Introduction Body Conclusion
Paragraph 1 Paragraph 2
Sentence 1 Sentence 2
Script components are abstract.
So are program components!
Next chapter discusses abstract program components