Module summary
Module name:
Internal number:
Coordinator:
Extent:
Semester:
Pre-requisites with regard to content: Computer Science 1
Pre-requisites according to the examination regulations:
none
Competencies:

The module is based on module "Informatik 1”. The students will learn to develop a computer science project using object oriented techniques in Java. They become acquainted with advanced analysis, design and realization competences as well as abstract data types and their implementation by data structures and algorithms. The students will learn to choose an appropriate data type depending on the application area and the given runtime conditions. Furthermore they will be familiar with graphical user interfaces and object-based programming with JavaScript.

Assessment:
Individual exams
Course: Computer Science 2
Internal number: MINB2114 Type/mode: Lecture
Lecturer:
Prof. Dr. Christian Pape
Language of instruction:
German
Credits (ECTS): 4 Contact hours: 4
Workload: 120 hours (60 hours presence, 60 hours self-contained work) Assessment: Written Exam 120 Min. (graded)
Content:

This lecture consists of four parts. The first one introduces basic concepts of object
oriented programming on the basis of the programming language Java. The main issues are among other things: Language elements of Java, data abstraction and encapsulation, inheritance, polymormism, generic programming, error handling an runtime typ information. Based on these techniques an introduction in modeling of class diagrams with UML is made. Additional practical exercises with a standard IDE adeepen the knowledge. The second part introduces the development of mobile Apps with graphical user interfaces for Android. The third part of the lecture deals with some important data structures like lists, hashtables, tree and graphs and introduces basic algorithms to operate on them. The forth part introduces the modularization of applications with Spring.

Recommended reading:

On the lecture homepage: PowerPoint presentation, program examples, script
Books:

  • Christian Ullenboom, Java ist auch eine Insel, Galileo Computing
  • R. C. Martin, Clean Code, mitp
  • B. Lahres, G. Raýman, Objektorientierte Programmierung, Galileo Computing
  • G. Popp, Konfigurationsmanagement mit Subversion, Maven und Redmine, dpunkt
  • M. Jeckle, C. Rupp, J. Hahn, B. Zengler, S. Queins, UML 2 - glasklar, Hanser-Verlag
  • G. Saake, K. Sattler, Datenstrukturen und Algorithmen: Eine Einführung mit Java, dpunkt
  • O. Zeigermann: "JavaScript für JavaEntwickler", entwickler.press
  • D. Flanagan: "JavaScript - kurz & gut", O‘Reilly
  • M. Haverbeke: "Eloquent JavaScript", kostenlos unter http://eloquentjavascript.net/
  • JavaScript-Referenz: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
Comments:

Preparation of lecture contents and exam

Course: Computer Science 2 Exercise
Internal number: MINB2124 Type/mode: Exercise
Lecturers:
Prof. Dr. Christian Pape
Dr. Martin Holzer
Language of instruction:
German
Credits (ECTS): 2 Contact hours: 2
Workload: 90 hours (30 hours presence, 60 hours self-contained work) Assessment: Exercise 1 Semester (not graded)
Content:

The students solve Java and JavaScript exercises and model small applications using UML class diagrams.

Recommended reading:

Script, compulsory and optional exercises on the homepage, solutions for optional exercises

Comments:

Practical exercise with discussion of solutions