Programmierung PDF
Document Details
![GladPeachTree1866](https://quizgecko.com/images/avatars/avatar-19.webp)
Uploaded by GladPeachTree1866
TU Dresden
Tags
Summary
Dieses Dokument bietet eine Einführung in das Thema Programmierung. Es behandelt Konzepte wie Programmiersprachen, die semantische Lücke und systematisches Programmieren. Der Text enthält auch eine kurze Einführung in die objektorientierte Programmierung.
Full Transcript
Programmierung. 1 Einführung 1. 1. Programm , Semantische Lücke und Programmiersprache Prog...
Programmierung. 1 Einführung 1. 1. Programm , Semantische Lücke und Programmiersprache Programm : · Computerprogramm = Interaktionsfolge mit Computer · Programmieren (Software-Entwicklung) - Lösen von Aufgaben - mittels eigener Software Systematisches Programmieren : Programmierung und Datenbanken befasst sich mit Themen im roten Bereich Semiotisches Dreieck 1. Geldhaus 2. Bank 3 Anlagen Begriff S vor stige Semantikw Erst Beden Eng ↳ on Syntax Zeichen Bank die; , -e n semantische Lücke Objekt- Referenziert Syntax = Definition der Korrekten Kombinierbarkeit von Zeichen (Grammatik einer Sprache) Semantik = Bedeutung der Sprachlichen Zeichen (Wörten , Sätzen Texten) , Semantische Lücke Unterschied zwischen Menschlicher Sprache und maschinellem Verständnis , was zu Problemen führt weit Maschinen , nur strikt definierte Anweisungen verstehen. = Semantische Lücke 1. 2 Überwindung der Semantischen Lücke Programmiersprache · Künstliche formale Sprache zur Kommunikation zwischen Mensch und Maschine und Formulierung von Datenstrukturen und Algorithmen , die von einem Computer ausgeführt werden können. · Klassifikation : 1) Ikonische Sprache (bildliche Sprache) 2) Symbolische Sprache. 1 2. ) natürliche Sprachen. 2 2 ) künstliche. Sprachen.2 1 2.. ) formale (Programmiersprache). 2 2) 2.. nicht-formale. 2 2. 3) semi-formale Methodische Unterstützung 1. Absenkung der Anforderungsanalyse ~ Verwendung einer (semi formalen Sprache zur Anforderungsformulierung 2. Transformation der Analyse modelle · Verwendung (semi-formalen Sprache zur Lösungsbeschreibung. 3 Anhebung der Programmiersprache und Implementierung · Verwendung einer höheren Programmiersprache statt Maschinensprache. 2 Grundlagen der Objektorientierten Programmierung.1 2. Paradigma , Sichten und Einordnung Paradigma · Denkmuster , Lehrmeinung Weltanschauung, · hier : Das Denkmuster (Vorlage) , nach dem eine künstliche Sprache entwickelt wird. Sicht (Ferst) und Sinz) · Gruppierung von Elementen eines Systems · Komplexitätsreduzierung durch Strukturierung · Betrachtung des Gegenstandsbereichs mit bestimmten Fokus Objektorientiertes Paradigma-Einordnung Programmierparadigmen : - Prozedurale Programmiersprachen (Befehle werden Schritt für Schritt ausgeführt) - Objektorientierte Programmiersprachen (Objekte kommunizieren miteinander) - Funktionale Programmiersprachen ( keine Zustände , nur Funktionen) Objektorientierte Programmiersprache In (OOP) Objektorientierte Programmierung (OOP) ist ein Programierparadigma , das Software in Form von Objekten organisiert , die aus Daten (Eigenschaften) und Funktionen (Methoden) bestehen. Objekt · Physisches oder gedankliches Konstrukt · In Anwendungssystem abgebildet · Fassen eine Menge von Daten und Methoden zusammen · Gekennzeichnet durch : Beispiel : Kuh Eigenschaften (In Muster Farbe Gewicht ,... 1. Attributen gespeichert) , ,. 2 Verhalten (durch Methoden beschrieben) Milch Produzieren bewegen, ,.... 3 Zustand satt hungrig , , steht Läuft , ,... 4. Identität Elsa Vera , , Anja ,... Kapselung : Daten und Methoden werden in Objekten zusammengefast , um Struktur übersichtlich und sicher zu halten. Zugriff von Außen nur über Definierte Schnittstellen möglich. Klasse : · Virtuelles künstliches Konzept , Beispiel Kuh Elsa : , Vera , Anja · Zusammenfassung von Gemeinsamkeiten der Objekte sind Instanzen Bzw. Konkrete · Schablone für gleichartige Objekte Objekte der Klass Kuh · Objekte entstehen durch Instanzierung einer Klasse = Beschreibungsebene r Notation : Vererbung : Neue Klassen können Eigenschaften und Methoden bestehender Klassen übernehmen 3. Unified Modeling Language (UML + Java) 3.1. UML und Anwendungsfall diagramm UML ist eine Sprache und Notation zur... - Spezifikation - Konstruktion - Visualisierung und Dokumentation... von Modellen für Softwaresysteme (keine Modellierungssprache) Zusammenfassend dient UML dazu , die Modellierung von Softwaresystemen zu Standardisieren und den Austausch von Modellen zu ermöglichen. UML-Anwendungsfalldiagramm · Beschreibung des externen Systemverhaltens aus Anwendersicht · Auskunft , was ein geplantes System Leisten soll · Beinhaltet : 1. System 2. Akteure 3. Verwendung des Systems (use case) 4. Beziehung zwischen 2. und. 3 Anwendungsfall : Akteur : - zusammenhängender Arbeitsablauf Menge , von Aktivitäten - Externe Einheiten , die mit System Interagieren - initiiert durch Akteur - Beschreiben Rollen - Liefert wahrnehmbares Ergebnis - Stehen in Bezug zu Anwendungsfällen Beziehungen der Anwendungsfälle : · Spezialisierung 3. 2 Klassen diagramm Beschreibt Klassen und deren unleinander Beziehung · · Zweck : Abbildung der Struktur des Problems - - Abbildung Fachlicher Begriffswelt Abbildung der Struktur vorhandener Programme Reverse Engineering - Klassendiagramm-Klasse : Vererbungsbeziehung : Klasse * Klasse erbende Klasse Assoziation : - Beziehung zwischen zwei Klassen - Multiplizität gibt das Minimum und das Maximum von Aggregation und Komposition : Objekten an (min.... max) die mit , einem Objekt der Partnerklasse in Beziehung stehen Eine Assoziation beschreibt die Beziehung und die Zugehörigkeit von Objekten einer Klasse zu anderen Objekten einer anderen Klasse. Multiplizität : 33.. Aktivitätsdiagramm · Beschreibung von Abläufen (Verhalten) /Visualisieren Beispiel (Aufstehen) : Notation : passieren parallel zueinander 3 4. Sequenz diagramm Beschreibt... -Menge von Interaktionen -Zwischen ausgewählten Objekten - in einer begrenzten Situation (Kontext) Beinhaltet.... - Klassen bzu. Objekte mit Lebenslinien -Nachrichten Sequenz diagramm Notation - Nachrichten : Lebenslinien : · Ein Element das , eine bestimmte Art - In UML-Diagrammen , wie Sequenz- oder der Kommunikation zwischen Instanzen in einer Kommunikationsdiagrammen stellen Lebenslinien die Objekte dar , Interaktion definiert. die an einer Interaktion beteiligt sind. - Eine Nachricht enthält Informationen von einer - Jede Instanz in einer Interaktion wird mit einer Lebenslinie Instanz die , mit einer Lebenslinie dargestellt , wird dargestellt. an eine andere Instanz in einer Interaktion : User synchrone Nachrichten · Symbol für I I Lebenslinien Symbol I Symbol für asynchrone Nachrichten I I Sequenz diagramm-Beispiel : Software-Lebenszyklus Vorlesung 2 Übersicht