Advanced Programming Concepts Final Exam Review
140 likes | 162 Views
Get prepared for the final exam by reviewing essential chapters covering syntax, semantics, data types, expressions, control structures, subprograms, ADTs, OOP, concurrency, exceptions, and logic programming.
Advanced Programming Concepts Final Exam Review
E N D
Presentation Transcript
Final Review In Text: Chapters 1-3, 5-16
Chapters Covered Before Midterm: • Ch. 1—Introduction • Ch. 2—History • Ch. 3-Syntax/Semantics • Ch. 12—OOPLs • Ch. 15—Functional PLs • Ch. 16—Logic PLs Since Midterm: • Ch. 5—Names & Binding • Ch. 6—Data Types • Ch. 7—Expressions • Ch. 8—Control Structures • Ch. 9—Subprograms • Ch. 10—Activation Recs • Ch. 11—ADTs • Ch. 13—Concurrency • Ch. 14—Exceptions Final Exam Review
Chapters 1-3, 5, 6, 15 • See Midterm Review • Exam is comprehensive, but most material will be from chapters covered since the midterm Final Exam Review
Ch. 5: Names and Binding • What are the six attributes? What do they mean? • Binding and possible binding times • Type checking • Two type compatibility methods • Scope vs. lifetime Final Exam Review
Ch. 6: Data Types • Primitive types • Type constructors: • Arrays • Records • Unions • Sets • Pointers • Design issues • Type checking issues Final Exam Review
Ch. 7: Expressions • Precedence rules • Associativity rules • Order of operand evaluation • Type conversions: widening and narrowing • Type coercions vs. explicit conversions • Mixed-mode expressions • Relational and boolean expressions • Short-circuit evaluation Final Exam Review
Ch. 8: Control Structures • Design issues • Selection • One-way • Two-way • Multi-way • Iteration • Counter-controlled • Logically-controlled • Gotos • Guarded statements Final Exam Review
Ch. 9: Subprograms • Definitions • Referencing environment • What are the common parameter passing modes and mechanisms? • Independent vs. separate compilation • Advanced subprogram issues Final Exam Review
Ch. 10: Implementing Subprograms • Activation records • Accessing locals • Accessing nonlocals (static scoping) • Static chains • Displays • Implementing blocks • Accessing nonlocals with dynamic scoping Final Exam Review
Ch. 11: ADTs • What is an abstraction? • Separation of specification from implementation • Encapsulation • What is needed to support separate compilation? Final Exam Review
Ch. 12: Object-Oriented PLs • What are the three defining characteristics of OOP languages? • What are the other hallmarks of OOP? • Definition of OOP terms • Familiarity with Smalltalk • Design issues for OOPLs Final Exam Review
Ch. 13: Concurrency • Competition synchronization • Cooperation synchronization • Concurrency control mechanisms: • Semaphores • Monitors • Rendezvous (message passing) Final Exam Review
Ch. 14: Exceptions • What is an exceptional condition? • Design issues: • How are handlers bound to exceptions? • Where does control go to after handling? • Are there default handlers? • What about user-defined exceptions? • What about cleaning up the stack? Final Exam Review
Ch. 16: Logic Programming • What are the hallmarks of LP? • Definition of LP terms • Prolog syntax • You should be able to read Prolog code Final Exam Review