💻

Einführung in objektorientierte Programmierung mit Kotlin

Apr 11, 2025

Einführung in die objektorientierte Programmierung mit Kotlin

Warum mit objektorientierter Programmierung (OOP) beschäftigen?

  • OOP hilft, Probleme beim Programmieren zu lösen.
  • Programme sind Ausdrucksmittel, um Ideen in Software zu überführen.
  • Software hat einen bedeutenden Einfluss auf die Welt (z.B. WhatsApp, Facebook).
  • Verantwortung bei der Softwareentwicklung: negative Folgen vermeiden.

Ziele des Programmierens

  • Spaß am Programmieren haben.
  • Robuste Software entwickeln.
  • Durchhaltevermögen bei Frustrationen aufbringen.

Wichtige Aspekte der OOP

  • Möglichkeit, innovative Apps zu entwickeln.
  • Analytisches Denken entwickeln: differenzierte Betrachtung von Sachverhalten.
  • Abstrakte Konzepte von spezifischen Konzepten unterscheiden.
  • Komplexe Probleme durch Zerlegung und Analyse angehen (Teile und herrsche).

Kreativität und Problemlösung

  • Kreativ denken, um Lösungen zu finden.
  • Gesamtüberblick über Probleme und Lösungen.
  • Vor- und Nachteile verschiedener Lösungsansätze abwägen.

Einführung in Kotlin

  • Kotlin ist eine moderne Programmiersprache, die auf Java aufbaut.
  • Interoperabilität mit Java: bestehender Java-Code kann weiterverwendet werden.
  • Eignet sich besonders gut für Android-Entwicklung.

Vorteile von Kotlin

  • Weniger Boilerplate-Code: Effizienz in der Entwicklung.
  • Statische Typisierung erhöht Sicherheit und Robustheit.
  • Kompakte Syntax: weniger Code für gleiche Funktionalität im Vergleich zu Java.
  • Hoher Lernfaktor, einfachere Lesbarkeit und bessere Fehlervermeidung.

Lernziele und Themen

  • OOP-Konzepte: Klassen, Objekte, Vererbung, Polymorphie.
  • Datenstrukturen: Stacks, Listen, Sets.
  • Analyse und Optimierung von Prozessen.
  • Funktionale Programmierung: Funktionen als Werte.

Geplante Themen für die kommenden Vorlesungen

  1. Daten und Kontrollstrukturen: Objekte und Klassen.
  2. Sichtbarkeit von Werten: Kapselung und Schnittstellen.
  3. Vererbung: Ableitung von Klassen.
  4. Polymorphie: Unterschiedliches Verhalten von Objekten.
  5. Datenstrukturen und Algorithmen: Dynamische Datenstrukturen, Ausnahmesituationen.
  6. Funktionale Programmierung: Vorteile und Konzepte.
  7. Entwicklung einer Android-App: Oberflächendesign und Architektur.

Fazit

  • Die nächsten Vorlesungen werden viele grundlegende und fortgeschrittene Konzepte der OOP behandeln.
  • Ziel ist es, die Studierenden auf die Entwicklung von Software vorbereitet zu machen und ihnen die notwendigen Fähigkeiten zu vermitteln.