Introduction to Informatics 2 (IN0003)
Einführung in die Informatik 2 (IN0003)
Course 240990556 in WS 2015/6
General Data
Course Type | lecture |
---|---|
Semester Weekly Hours | 2 SWS |
Organisational Unit | Informatics 2 - Chair of Formal Languages, Compiler Construction, Software Construction (Prof. Seidl) |
Lecturers | |
Dates |
Assignment to Modules
-
IN0003: Einführung in die Informatik 2 / Introduction to Informatics 2
This module is included in the following catalogs:- Further Modules from Other Disciplines
Further Information
Courses are together with exams the building blocks for modules. Please keep in mind that information on the contents, learning outcomes and, especially examination conditions are given on the module level only – see section "Assignment to Modules" above.
additional remarks | Module IN0001 and IN0003 cover the following topics. The split between the two modules is determined by the individual lecturer: - Information and its representation - Simple data structures: Atoms and sequences, characters and strings, numbers - Definition of algorithms using functions: - Functions and algorithms - Composition of functions without recursion - Recursive functions and algorithms - Algebraic modeling of algorithms and data structures - Examples: Sorting and Sequences - Pattern matching - Recursive data structures (lists, trees) - Typing, parametric polymorphism - Termination of functional programs - Assignment-oriented programming paradigm: - Language concepts: conditional, iteration, sequence - Data structures: arrays, records, references, pointer - Object-oriented modeling and implementation - Classes and objects - Graphical notations (UML) - Subtype polymorphism, inheritance - Interfaces - Verification of stateful models - Algorithms and dynamic data structures - Algorithmic principles: divide and conquer, greedy algorithms, etc. - Chained lists, trees, hashing, simple graphs - Efficiency analysis (non-formal) of these data structures - Outlook: declarative and functional programming - Syntax definition through grammars - Modelling of stateful systems by automata - Fundamental concepts of concurrent programming - Processes and threads, process states, operations on processes Prozessen - Modeling actions and events - Parallel programming languages - Specification of temporal behavior: Synchronous and asynchronous models execution models - Synchronization and communication - Semaphors, monitors - Consumer-producer, reader-writer - Synchronous and asynchronous communication - Rendez-vous as an example for action-oriented communication |
---|---|
Links |
Course documents E-Learning course (e. g. Moodle) TUMonline entry |