19300101        
        
          Lecture        
      
      SoSe 21: Object-oriented Programming
Daniel Göhring
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
 
Suggested 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.
27 Class schedule
Additional appointments
Tue, 2021-07-27 10:00 - 12:00Klausur
    
    
    
          
          
            
              Tue, 2021-09-14 10:00 - 12:00            
                Nachklausur
    
    
    
          
          
            
              Wed, 2021-11-03 10:00 - 12:00            
                Klausureinsicht
    
    
    
          
          Regular appointments
                  
                    
                      Tue, 2021-04-13 08:00 - 10:00                    
                        
    
    
    
    
    
    
    
    
    
    
    
    
    
    
              Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-04-20 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-04-27 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-05-04 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-05-11 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-05-18 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-05-25 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-06-01 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-06-08 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-06-15 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-06-22 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-06-29 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-07-06 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                  
                    
                      Tue, 2021-07-13 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 1)
    
    
    
                  
                
                  
                    
                      Thu, 2021-04-15 08:00 - 10:00                    
                        
    
    
    
    
    
    
    
    
    
    
    
    
    
              Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-04-22 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-04-29 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-05-06 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-05-20 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-05-27 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-06-03 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-06-10 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-06-17 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-06-24 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-07-01 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-07-08 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                  
                    
                      Thu, 2021-07-15 08:00 - 10:00                    
                        Objektorientierte Programmierung (Serientermin 2)
    
    
    
                  
                
Contents
foundations of computability: universal register machines syntax and operational semantics of imperative programming languages formal methods for the specification and ... read more