19300101
Lecture
SoSe 17: Object oriented Programming
Claudia Müller-Birn, Barry Linnert
Additional information / Pre-requisites
Prerequisites
background as taught in the class "Functional Programming".
Please also sign up for the class in our KVV.
closeComments
Contents
- foundations of computability:
- universal register machines
- syntax and operational semantics of imperative programming languages
- formal methods for the specification and verification of imperative programs:
- assertions,
- Hoare-calculus, partial correctness, termination
- imperative and object-oriented programming concepts (Java):
- primitive and composite data types,
- methords (procedures and functions). calling conventions, overloading
- modules, classes, objects
- class hierarchies, inheritance, polymorphism
- abstract classes, interfaces
- programming methods:
- stepwise refinement
- divide and conquer
- backtracking
- analysis of time and space requirements:
- O-notation
- recursion and iteration
- analysis of algorithms for sorting and searching
- algorithms, data structures, data abstraction
https://www.mi.fu-berlin.de/inf/groups/hcc/teaching/Sommersemester-2017/ALP2.html
closeSuggested reading
- Concepts of Programming Languages, Robert Sebesta, Pearson Education , 10th Edition, 2012, ISBN: 0131395319
- Data Structures & Problem Solving Using Java, Mark Allen Weiss, Addison Wesley, 4. Auflage, 2010, ISBN: 0-321-54140-5
- Cormen, Leiserson, Rivest: Introduction to Algorithms, 3. Auflage 2009,
- Bundle of algorithms in java, third edition, parts 1-5. Sedgewick Robert und Michael Schidlowsky. Addison-Wesley Longman, Amsterdam. 2003.
24 Class schedule
Additional appointments
Wed, 2017-07-19 12:00 - 14:00Klausur
Wed, 2017-10-11 12:00 - 14:00
Nachklausur
Fri, 2017-10-20 12:00 - 14:00
Klausureinsicht
Regular appointments
Wed, 2017-04-19 12:00 - 14:00
Wed, 2017-04-26 12:00 - 14:00
Wed, 2017-05-03 12:00 - 14:00
Wed, 2017-05-10 12:00 - 14:00
Wed, 2017-05-17 12:00 - 14:00
Wed, 2017-05-24 12:00 - 14:00
Wed, 2017-05-31 12:00 - 14:00
Wed, 2017-06-07 12:00 - 14:00
Wed, 2017-06-14 12:00 - 14:00
Wed, 2017-06-21 12:00 - 14:00
Wed, 2017-06-28 12:00 - 14:00
Wed, 2017-07-05 12:00 - 14:00
Wed, 2017-07-12 12:00 - 14:00
Mon, 2017-04-24 14:00 - 16:00
Mon, 2017-05-08 14:00 - 16:00
Mon, 2017-05-15 14:00 - 16:00
Mon, 2017-05-22 14:00 - 16:00
Mon, 2017-05-29 14:00 - 16:00
Mon, 2017-06-12 14:00 - 16:00
Mon, 2017-06-19 14:00 - 16:00
Mon, 2017-06-26 14:00 - 16:00
Mon, 2017-07-03 14:00 - 16:00
Mon, 2017-07-10 14:00 - 16:00
Mon, 2017-07-17 14:00 - 16:00
Contents
foundations of computability: universal register machines syntax and operational semantics of imperative programming languages formal methods for the specification and ... read more