Das CAS in Object Oriented Programming vermittelt Ihnen eine fundierte Basis in der Programmierung von modernen Informatik-Applikationen. Dabei lernen Sie die Grundlagen und Konzepte der objektorientierten Softwareentwicklung kennen. Der Fokus wird dabei auf die Programmiersprachen Java und C# gesetzt.
Zielpublikum:Das Weiterbildungsangebot im Bereich Informatik richtet sich an
- ICT-Quereinsteiger, die eine fundierte und breite Ausbildung in Informatik absolvieren wollen;
- ICT-Fachkräfte mit mehrjähriger Berufserfahrung und Spezialisten, die sich im Bereich Informatik als Ganzes oder in einem spezifischen Thema der Informatik weiterbilden bzw. spezialisieren wollen.
Ziele:Die erworbenen Programmierkenntnisse werden angewendet, um moderne Desktop-, Web- und Mobile-Applications zu entwickeln. Im Modul «Grundlagen objektorientierter Programmierung» wird Java als Programmiersprache eingesetzt. Das Modul «Vertiefung objektorientierte Programmierung» kann wahlweise mit Java oder mit C# absolviert werden.
Folgende Fragestellungen stehen im Zentrum des CAS Object Oriented Programming:
- Wie werden Problemstellungen objektorientiert analysiert und programmiert?
- Wie werden grössere Programme systematisch entworfen und realisiert?
- Was sind die Technologien, um Web-Applikationen zu entwickeln und wie werden sie eingesetzt?
- Was für mobile Plattformen gibt es und wie werden Apps für eine mobile Plattform programmiert?
Inhalt:
Modul "Grundlagen objektorientierter Programmierung"
- Konzepte der objektorientierten Programmierung
- Klassen, Objekte
- Objektinteraktion, Collections (ArrayList, HashMap, HashSet)
- Vererbung, Komposition, Polymorphie, Abstrakte Klassen, Interfaces
- Klassenentwurf (lose Kopplung, Kohäsion, Kapselung)
- Darstellung Design mit UML-Klassendiagramm
- Softwarequalitätssicherung (Unit-Test, Dokumentation)
- Clean Code, Code Smells und Refactoring
Modul "Vertiefung objektorientierte Programmierung"
- Exception Handling
- Lambda-Ausdrücke
- Innere Klassen / Anonyme Klassen
- File Input / Output
- Serialisierung und Deserialisierung
- Netzwerkprogrammierung
- Threads
- Generics
- Grundlagen XML, JSON
- Grafische Desktopapplikationen
- Datenbankanbindung (OR-Mapper)
- Anwenden und vernetzen des Gelernten in einer Projektarbeit
Modul "Web und Mobile Applications"
- Einführung in HTML, CSS und JavaScript
- Entwicklung von Webapplikationen (z. B. mit Node.js)
- Document Object Model (DOM) und Ereignisbehandlung im Browser
- Asynchrone Client-Server-Kommunikation (Ajax, Fetch-API)
- Zustand (Cookies, Sessions) und Authentisierung
- Entwurf und Implementierung einer Webapplikation mit einem Web-Framework (z. B. Angular)
- Überblick über Mobilplattformen
- Mobilplattformen, Web und native Apps, Appstores
- Applikationsdesign für Mobilanwendungen
- Usability-Kriterien und -Tests
- Entwickeln von Mobilapplikationen (z. B. für die Plattform Android)