MODULBESCHREIBUNG

Programmieren 1

Kurzzeichen:
M_MAS-SE_Prog1
Durchführungszeitraum:
S1_MAS-SE/18
ECTS-Punkte:
4
Lernziele:
Verantwortliche Person:
Bläser Luc
Zusätzlich vorausgesetzte Kenntnisse:
keine
Skriptablage:
Modultyp:
Standard-Modul für MAS Software Engeneering STD_12(Empfohlenes Semester: 1)
Standard-Modul für CAS Foundation STD_12 (PF)

Modulbewertung

Bewertungsart:
Note von 1 - 6

Leistungsbewertung

Während des Semesters:
Bewertungsart:
Note von 1 - 6

Kurse in diesem Modul

Algorithmen und Datenstrukturen

Kurzzeichen:
MAS-SE_AlgDstrukt
Arbeitsaufwand:
30
Lernziele:

Ziele

  • Die Teilnehmer kennen einige der wichtigsten Datenstrukturen und Algorithmen.
  • Im Weiteren kennen sie die wichtigsten Prinzipien der Collection-Klassen von Java und können diese anwenden.
  • Die Teilnehmer verstehen die O-Notation.

Anforderungen / Vorausgesetzte Kenntnisse

  • Gute Grundkenntnisse der Programmiersprache Java.

Vermittelte Kompetenz

  • Kenntnisse über die wichtsten Datenstrukturen und Algorithmen im Allgemeinen.
  • Aufbau der Collection-Klassen von Java.
  • Definition und Anwendung der O-Notation.
Plan und Lerninhalt:
  • Analyse von Algorithmen anhand der O-Notation.
  • Verschiedene Sortier-Algorithmen (unter Anwendung der O-Notation).
  • Collection-Klassen in Java.
  • Listen, Maps, Dictionaries.
  • Bäume.
  • Hash-Table.
  • Graphen.
  • Tiefen- und Breitensuche auf Graphen.
  • Kürzeste Pfade in Graphen.
Semesterbewertung:
Bewertungsart:
Note von 1 - 6
Kursart:

(Durchführung gemäss Stundenplan)

Blockkurs mit 5 Lektionen pro Woche
   - Max. Teilnehmer: 45
   - Harte Grenze: ja

Programmieren in C++

Kurzzeichen:
MAS-SE_ProgC++
Arbeitsaufwand:
30
Lernziele:

Ziele

Kenntnisse der Programmiersprache C++.

Anforderungen / Vorausgesetzte Kenntnisse

Gute Grundkenntnisse der Programmiersprache C

 

Vermittelte Kompetenz

  • Der Teilnehmer besitzt eine Übersicht über die Konzepte und Eigenschaften der Programmiersprache C++, der dazugehörenden Bibliotheken. Er ist in der Lage abzuschätzen, wo C++ sinnvoll eingesetzt werden kann.
  • Er verfügt über Grundkenntnisse in der C++-Programmierung, die es ihm ermöglichen, selbständig eine einfache  C++-Applikation zu entwickeln.
  • Der Teilnehmer kennt die wichtigsten Konzepte und Klassen des Kerns der Klassenbibliothek.
    Er besitzt eine Übersicht über die umfangreiche Klassenbibliothek von C++.
Plan und Lerninhalt:
  • Datentypen,  nullptr, Unicode, Automatische Typ-Herleitung (auto),  Initialisierungen, Anweisungen, Blöcke und Kontrollstrukturen, Move-Semantik, rvalue, Lambda
  • Funktionen, Mechanismen der Parameterübergabe
  • Overloading
  • Operatoren
  • Klassen und Friends
  • Vererbung, Virtuelle Funktionen, Mehrfachvererbung
  • Templates, Variadic, Meta-Programmierung
  • Namespaces
  • Runtime-Type-Information RTTI
  • Exception-Handling
  • Input und Output
  • Klassenbibliotheken (Standard Library, STL, Boost)
  • Container/Range-Loops
  • Smart-Pointers (unique_ptr, shared_ptr, weak_ptr)
  • Concurrency
Semesterbewertung:
Bewertungsart:
Note von 1 - 6
Kursart:

(Durchführung gemäss Stundenplan)

Blockkurs mit 5 Lektionen pro Woche
   - Max. Teilnehmer: 45
   - Harte Grenze: ja

Programmieren Java 1

Kurzzeichen:
MAS-SE_ProgJava1
Arbeitsaufwand:
50
Lernziele:

Ziele

Grundkenntnisse der Programmiersprache Java.

Anforderungen / Vorausgesetzte Kenntnisse

Grundkenntnisse der Programmiersprache Java (entsprechend dem Kursblock „Einführung in objektorientierte Softwareentwicklung“).

Vermittelte Kompetenz

Der Teilnehmer besitzt eine Übersicht über die Konzepte und Eigenschaften der Programmiersprache Java, der dazugehörenden Bibliotheken und Anwendungsumgebung. Er ist in der Lage abzuschätzen, wo Java sinnvoll eingesetzt werden kann. Er verfügt über Grundkenntnisse in der Java-Programmierung, die es ihm ermöglichen, selbständig eine Java-Applikation zu entwickeln. Der Teilnehmer kennt die wichtigsten Konzepte und Klassen des Kerns der Klassenbibliothek. Er besitzt eine Übersicht über die umfangreiche Klassenbibliothek von Java.

Plan und Lerninhalt:
  • Einführung in die Programmiersprache Java
  • Lexikalische Konventionen
  • Datentypen und Variablen
  • Ausdrücke und Operatoren
  • Kontrollstrukturen
  • Blöcke und Methoden
  • Klassen und Objekte
  • Vererbung und Polymorphie
  • Pakete
  • Ausnahmebehandlung - Exception Handling
  • Schnittstellen
  • Geschachtelte Klassen
  • Ein-/Ausgabe und Streams
  • Collections
  • Threads
  • Die Architektur der virtuellen Maschine
  • Beans
Semesterbewertung:
Bewertungsart:
Note von 1 - 6
Kursart:

(Durchführung gemäss Stundenplan)

Blockkurs mit 5 Lektionen pro Woche
   - Max. Teilnehmer: 45
   - Harte Grenze: ja