Lehramt für Informatik
Module offering Computer Science (30 cp, 2018 study regulations)
0132c_m30-
Computer Science A
0132cA1.1-
19300001
Lecture
Fundamentals of Programming (Kristin Knorr)
Schedule: Mo 14:00-16:00, Mi 12:00-14:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-10-13)
Location: Gr. Hörsaal (Raum B.001) (Arnimallee 22)
Comments
Qualification goals
The students can explain and compare different programming paradigms. They are able to interpret descriptions and source code related to fundamental data structures, to characterize how they work, and to implement basic algorithms and data structures in different programming paradigms, adapting them to given requirements. They can discuss the advantages and disadvantages of different solutions for algorithmic problems.
Contents
Students acquire the fundamentals of programming. We will discuss basic programming paradigms, such as imperative, functional, and object oriented. Students will learn about expressions and data types, as well as fundamental aspects of imperative programming (e.g., state, statements, control structures, input-output), and practice their application. Students will also gain an understanding of fundamental aspects of functional programming (functions, recursion, higher-order functions, currying), object-oriented concepts such as encapsulation and inheritance, polymorphism, as well as basic algorithmic tasks (e.g., searching, sorting, selection, and simple array- and pointer-based data structures), and practice their implementation.
-
19300002
Practice seminar
Practice seminar for Fundamentals of Programming (Kristin Knorr)
Schedule: Mi 14:00-16:00, Mi 16:00-18:00, Do 08:00-10:00, Do 12:00-14:00, Do 16:00-18:00, Fr 08:00-10:00, Fr 10:00-12:00, Fr 12:00-14:00, Fr 14:00-16:00 (Class starts on: 2025-10-15)
Location: T9/049 Seminarraum (Takustr. 9)
Comments
Tutorien finden erst ab der 2. Vorlesungswoche statt
-
19300001
Lecture
-
Impacts of Computer Science
0132cA2.1-
19301301
Lecture
Consequences of Computer Science (Lutz Prechelt)
Schedule: Mo 12:00-14:00 (Class starts on: 2025-10-13)
Location: T9/Gr. Hörsaal (Takustr. 9)
Additional information / Pre-requisites
The course language is German, including all slides and practice sheets.
Homepage
http://www.mi.fu-berlin.de/w/SE/TeachingHome
Comments
This course deals with the consequences of computer science. Its aim is to establish an understanding of the fact that computer systems intervene in manifold ways in our private and professional lifes and shapen them. Many of these influences bring about major risks and need a conscious and enlightened composition in which computer scientists by nature play an important role -- or should at least do so.
We will for example have a look at how computerisation influences our private sphere, economics and society as a whole, our security and working environment. A conceptual introduction will provide orientational knowledge besides basic knowledge (Verfügungswissen) and strategies how to deal with both: analyse critically and get involved in the technical development.
Suggested reading
See the slides.
-
19301302
Practice seminar
Exercise for Consequences of Computer Science (Linus Ververs)
Schedule: Mo 10:00-12:00, Di 10:00-12:00, Di 12:00-14:00, Di 16:00-18:00, Mi 08:00-10:00, Mi 10:00-12:00, Mi 14:00-16:00, Mi 16:00-18:00, Do 16:00-18:00 (Class starts on: 2025-10-13)
Location: T9/051 Seminarraum (Takustr. 9)
Comments
siehe Vorlesung; Informationen zu den Zeiten und Orten der täglichen Übungen sind zu finden auf der Veranstaltungswebseite
-
19301301
Lecture
-
Database Systems (Secondary Subject)
0132cA2.2-
19301501
Lecture
Database Systems (Katharina Baum)
Schedule: Di 10:00-12:00, Di 12:00-13:00, Di 14:00-16:00, Do 10:00-12:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-10-14)
Location: T9/SR 005 Übungsraum (Takustr. 9)
Additional information / Pre-requisites
Requirements
- ALP 1 - Functional Programming
- ALP 2 - Object-oriented Programming
- ALP 3 - Data structures and data abstractions
- OR Informatik B
Comments
Content
Database design with ERM/ERDD. Theoretical foundations of relational database systems: relational algebra, functional dependencies, normal forms. Relational database development: SQL data definitions, foreign keys and other integrity constraints, SQL as applicable language: essential language elements, embedding in programming language. Application programming; object-relational mapping. Security and protection concepts. Transaction subject, transactional guaranties, synchronization of multi user operations, fault tolerance features. Application and new developments: data warehousing, data mining, OLAP.
Project: the topics are deepened in an implementation project for student groups.
Suggested reading
- Alfons Kemper, Andre Eickler: Datenbanksysteme - Eine Einführung, 5. Auflage, Oldenbourg 2004
- R. Elmasri, S. Navathe: Grundlagen von Datenbanksystemen, Pearson Studium, 2005
-
19301502
Practice seminar
Practice seminar for Database systems (Pascal Iversen)
Schedule: Mi 12:00-14:00 (Class starts on: 2025-10-15)
Location: T9/049 Seminarraum (Takustr. 9)
-
19301501
Lecture
-
Fundamentals of Theoretical Computer Science (as Secondary Subject)
0132cA2.3-
19301201
Lecture
Foundations of Theoretical Computer Science (Günther Rothe)
Schedule: Mo 10:00-12:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-10-20)
Location: T9/Gr. Hörsaal (Takustr. 9)
Comments
Contents:
- models of computation
- automata
- formal languates
- grammars and the Chomsky-hierarchy
- Turing-machines
- computabilty
- introduction to the complexity of computational problems
Suggested reading
- Uwe Schöning, Theoretische Informatik kurzgefasst, 5. Auflage, Spektrum Akademischer Verlag, 2008
- John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexität, Pearson Studium, 3. Auflage, 2011
- Ingo Wegener: Theoretische Informatik - Eine algorithmenorientierte Einführung, 2. Auflage, Teubner, 1999
- Michael Sipser, Introduction to the Theory of Computation, 2nd ed., Thomson Course Technology, 2006
- Wegener, Kompendium theoretische Informatik - Eine Ideensammlung, Teubner 1996
- models of computation
-
19301202
Practice seminar
Practice seminar for Foundations of Theoretical Computer Science (Günther Rothe)
Schedule: Mo 12:00-14:00, Di 16:00-18:00, Mi 08:00-10:00, Mi 14:00-16:00, Mi 16:00-18:00, Fr 14:00-16:00, zusätzliche Termine siehe LV-Details (Class starts on: 2025-10-13)
Location: A7/SR 031 (Arnimallee 7)
-
19301201
Lecture
-
Non-Sequential Programming
0132cA2.4-
19322101
Lecture
Concurrent, Parallel, and Distributed Programming (Claudia Müller-Birn, Barry Linnert)
Schedule: Mi 10:00-12:00, Do 12:00-14:00 (Class starts on: 2025-10-15)
Location: T9/Gr. Hörsaal (Takustr. 9)
Comments
Website: https://www.mi.fu-berlin.de/w/SE/VorlesungNichtseq_Vert_Prg2025
Contents:
Programming and synchronization of concurrent processes that share resources or interact through message passing.
- Non-Sequential programs and processes in their various forms, non-determinism, determinism
- Synchronization mechanisms: locks, monitors, guards, events, semaphores
- Non-Sequential program execution and object oriented systems
- Control flow, strategies selection, priorities, handling and avoiding deadlock
- Coroutines implementation,
- - Multiprocessor systems
- Programming and Synchronisation of concurrent processes that interact through message passing
- Remote Calling Techniques
- Client-server, Peer-to-peer Networks
- Parallel computing over networks
- Concurrent and coordination languages
- Processing on the server and on the client.
- Middleware, structured communication, static and dynamic interfaces
- Event-based and stream-based processing
- Security of network applications
- Non-functional Aspects (time, memory, quality of service)
Suggested reading
Literature:
- Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
- Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
-
19322102
Practice seminar
Practice seminar for Concurrent and Distributed Programming (Barry Linnert)
Schedule: Mo 10:00-12:00, Di 10:00-12:00, Do 10:00-12:00, Do 14:00-16:00, Fr 12:00-14:00, Fr 16:00-18:00 (Class starts on: 2025-10-14)
Location: T9/SR 006 Seminarraum (Takustr. 9)
-
19322101
Lecture
-
Distributed Programming
0132cA2.5-
19322101
Lecture
Concurrent, Parallel, and Distributed Programming (Claudia Müller-Birn, Barry Linnert)
Schedule: Mi 10:00-12:00, Do 12:00-14:00 (Class starts on: 2025-10-15)
Location: T9/Gr. Hörsaal (Takustr. 9)
Comments
Website: https://www.mi.fu-berlin.de/w/SE/VorlesungNichtseq_Vert_Prg2025
Contents:
Programming and synchronization of concurrent processes that share resources or interact through message passing.
- Non-Sequential programs and processes in their various forms, non-determinism, determinism
- Synchronization mechanisms: locks, monitors, guards, events, semaphores
- Non-Sequential program execution and object oriented systems
- Control flow, strategies selection, priorities, handling and avoiding deadlock
- Coroutines implementation,
- - Multiprocessor systems
- Programming and Synchronisation of concurrent processes that interact through message passing
- Remote Calling Techniques
- Client-server, Peer-to-peer Networks
- Parallel computing over networks
- Concurrent and coordination languages
- Processing on the server and on the client.
- Middleware, structured communication, static and dynamic interfaces
- Event-based and stream-based processing
- Security of network applications
- Non-functional Aspects (time, memory, quality of service)
Suggested reading
Literature:
- Principles of Concurrent and Distributed Programming. M. Ben-Ari. Addison-Wesley.
- Distributed Systems. Concepts and Design. Fifth Edition. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. Pearson.
-
19322102
Practice seminar
Practice seminar for Concurrent and Distributed Programming (Barry Linnert)
Schedule: Mo 10:00-12:00, Di 10:00-12:00, Do 10:00-12:00, Do 14:00-16:00, Fr 12:00-14:00, Fr 16:00-18:00 (Class starts on: 2025-10-14)
Location: T9/SR 006 Seminarraum (Takustr. 9)
-
19322101
Lecture
-
-
Computer Science B 0132cA1.2
-
