s. müller vergleich objektorientierter programmiersprachen (oop) mit skriptsprachen von...

20
1 s. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software Probevorlesung Technische Fachhochschul e Berlin University of Applied Sciences

Upload: jakob-neese

Post on 05-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

1s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Vergleich objektorientierter Programmiersprachen (OOP)

mit Skriptsprachen von Autorensystemen zur

Erstellung multimedialer Software

Probevorlesung TechnischeFachhochschuleBerlin

University of Applied Sciences

Page 2: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

2s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Vorgehen:

Matrix - Anforderungen der gestellten Aufgabe

Beispiel einer Anwendung / Vergleich der Lösungen

Bildet das Ergebnis eine Entscheidungsgrundlage?

Rahmenbedingungen betrachten

Abstraktion und Eingrenzung

Vorüberlegungen

Page 3: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

3s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Gliederung

Vergleich objektorientierter

Programmiersprachen (OOP)

mit Skriptsprachen von

Autorensystemen zur

Erstellung multimedialer Software

Page 4: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

4s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Programmiersprachen (Auswahl) Imperative

Programmiersprachen Objektorientierte

Programmiersprachen Deklarative

Programmiersprachen

Page 5: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

5s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Anwendungsgebiete

Fortran Proz. mathematisch-technische Probleme

Algol 60 Proz. mathematisch wissenschaftliche Probleme

Cobol Proz. (Oo.) kaufmännische Probleme

Lisp Funk. Symbol-Manipulation

Basic Proz. kleinere mathematische Probleme

Simula 67 Proz. Math.-tech.-wissenschaftl. Probleme und Simulationen

Pascal Proz Math.-tech und kaufmännische Probleme

C Proz. Systemnahe Programmierung

Modula-2 Proz. (Oo.) Math.-tech und kaufmännische Probleme

Prolog Prädikativ Anwendungen mit symbolischen Formeln

Ada Proz. (Oo.) Echtzeitanwendungen

SQL Deklarativ Datenbankanwendungen

Smalltalk-80 Oo. Anwendungs- und Systemsoftware

C++ Proz. (Oo.) Anwendungs- und Systemsoftware

Eiffel Oo. Umfangreiche Softwaresysteme

Java Oo. Anwendungen in vernetzten und heterogenen Umgebungen

Page 6: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

6s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Skriptsprachen

Ursprünglich mit kleinem Sprachumfang Zugeschnitten auf ein spezielles Aufgabengebiet

Multimedia-Präsentation Webanwendungen

Skriptsprachen werden nicht kompiliert

Page 7: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

7s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Compiler

Page 8: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

8s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Interpreter

Längere Laufzeit des Programms Unterstützung bei der interaktiven Programmentwicklung Plattformunabhängigkeit

Page 9: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

9s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Abstraktionsebenen

Multimedia-Anwendung

Framework oder Bibliothek

System-Software

Gerätetreiber

Multimedia-Hardware-Geräte

Abstraktion

von der

Hardware

Abstraktion

von der

Anwendung

Page 10: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

10s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Anforderungen an Programmiersprachen zur Erstellung multimedialer Software Effiziente Verarbeitung großer Datenmengen Spezifizierung von Zeitanforderungen Mechanismen zur Handhabung von Ausnahmesituationen Synchrone Darstellung mehrerer Medien Wiederverwendbarkeit durch Modularisierungskonzept Erweiterbarkeit und Wartbarkeit durch

Modularisierung, Kapselung, Abstraktion und Hierachiebildung

Förderung von robusten Programmen in Entwurf und Entwicklung

Page 11: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

11s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Objektorientierung

Daten und Anweisungen werden als Einheit betrachtet Objekte kommunizieren miteinander

(Senden und Empfangen von Botschaften) Ermöglicht paralleles programmieren

und testen. Unterstützung bei der Programmierung

komplexer Aufgaben Wiederverwendbarkeit von

Programmcode Erweiterbarkeit bestehender

Programme

Page 12: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

12s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Beispiel Punktezähler

Punktezähler

Punktzahlerhöhe um 10setze auf 0ermittle Punktzahl

Vorlage / Klasse

0009860

0007450

0003360PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

Erzeugen einer Instanz

der Klasse xy

Objekt / Instanz

Objekt / Instanz

Objekt / Instanz

Instanz Variable: Punktzahl

Instanz Variable: Punktzahl

Instanz Variable: Punktzahl

Page 13: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

13s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Vererbung und Kapselung

0009860

0007450

0003360

Punktezähler

Punktzahlerhöhe um 10setze auf 0ermittle Punktzahl

PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

PunktezählerPunktzahlerhöhe um 10setze auf 0ermittle Punktzahl

Super Klasse

Erzeugen einer Instanz

der Klasse xy

Objekt / Instanz

Objekt / Instanz

Objekt / Instanz

Bonus

erhöhe um 500

Vorlage / Klasse

vererben

Page 14: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

14s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Abstraktionsebenen

Multimedia-Anwendung

Framework oder Bibliothek

System-Software

Gerätetreiber

Multimedia-Hardware-Geräte

Abstraktion

von der

Hardware

Abstraktion

von der

Anwendung

Anwendungsgenerator

Page 15: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

15s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Macromedia Director und Lingo

Umfangreiche Funktionalitäten und Einsatzbereiche Skriptsprache Lingo ist teilweise objekt- und ereignisorientiert Wurde häufig verändert z.B. Punktsyntax ab Version 7 Befehle können in drei Gruppen eingeteilt werden:

Core-Lingo Net-Lingo Xtra-Lingo

Behaviour Library mit Lingo-Prozeduren

Grundgedanke der Objektorientierung wird unterstützt

Page 16: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

16s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Lingo Begriffe

Klassischer Begriff Lingo Begriff

Super Klasse, Basis Klasse Vorgängerskript Ancestor (=Ahne)

Klasse Übergeordnetes Skript, Parent script (=Eltern)

Instanz Untergeordnetes Objekt,Object, Instanz

Instanz Variable, Attribut Eigenschaftsvariable, Property

Methode Prozedur, Methode

Page 17: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

17s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Gemeinsamkeiten Lingo-Java

Erstellung neuer Instanzen mit „new“ Wird eine Instanz mit „new“ angelegt, wird eine Referenz

(Speicheradresse) auf diese Instanz zurückgegeben Methoden und Eigenschaftsvariablen (Properties) Einfachvererbung Automatische Speicherreservierung Verdecken von Methoden

Page 18: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

18s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Unterschiede Lingo-Java

Keine Klassenvariablen Keine echte Kapselung Keine Interfaces Vererbung funktioniert auf Instanz Basis, nicht auf Klassenbasis Vererbung ist dynamisch Basis Klassen müssen keine Parent Skripte sein (auch Xtra, Sprites...) Keine abstrakten Klassen Kein Überladen Parent Skripte erben nicht automatisch von einer Basis Klasse Keine Klassenbibliothek

Page 19: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

19s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Zusammenfassung

Programmiersprachen wurden für unterschiedliche Probleme entwickelt Programmiersprachen entwickeln sich neuen Anforderungen gemäß weiter Skriptsprachen werden nicht kompiliert Multimedia-Anwendungen stellen spezifische Anforderungen Anforderungen einer Multimedia-Anwendung lassen sich gut durch

objektorientierte Programmierung realisieren Autorensysteme sind Anwendungsgeneratoren mit integrierten Skriptsprachen

spezialisiert auf die Erstellung von Multimedia-Anwendungen Integrierte Skriptsprachen in Autorensystemen unterstützen in

Teilen die Umsetzung von objektorientierten Konzepten Der Vergleich von Lingo und Java ergab

Gemeinsamkeiten und Unterschiede

Page 20: S. müller Vergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software 1 Probevorlesung

20s. müllerVergleich objektorientierter Programmiersprachen (OOP) mit Skriptsprachen von Autorensystemen zur Erstellung multimedialer Software

Vielen Dank für Ihre Aufmerksamkeit!

LiteraturAllenson et al.: Director 8.5 Studio

Steinmetz, R.: Multimedia-Technologie

Goll, J. et al: Java als erste Programmiersprache

Balzert, H.: Lehrbuch Grundlagen der Informatik

Poetzsch-Heffter, A.: Konzepte objektorientierter Programmierung

Rechenberg, Pomberger: Informatik Handbuch

Online-QuellenGrundlagen der Programmierung I und II: VFH Studienmodul, TFH Berlin

Autorensysteme: VFH Studienmodul, TFH Berlin

Dipl.-Kommunikationswirt

Stefan Müller [email protected]/smueller