Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Proseminar Programmiersprachen Python

Ähnliche Präsentationen


Präsentation zum Thema: "Proseminar Programmiersprachen Python"—  Präsentation transkript:

1 Proseminar Programmiersprachen Python
Von Andrej Szaffranietz und Ronja Deisel SS 2012 Abbildung:

2 Inhalt: Entwicklung Pythons Ausgewählte Eigenschaften Beispielprogramme Anwendungen Kritische Beurteilung

3 Entwicklung Entwicklung seit 1989 durch Guido van Rossum
Veröffentlichung 1991 Version 1.0.0: 1994 Aktuell: Noch in Verwendung: Inzwischen weit verbreitet Name „Python“ als Anspielung auf Komikergruppe Monty Python Einflüsse: ABC, C, Perl, Modula-3, LISP, Haskell, etc. Abbildung:

4 Entwicklung: Ziele Erweiterbarkeit Open Source Mächtigkeit:
Große Standardbibliothek Viele verfügbare Module Erleichterung des Programmieralltags: Übersichtlicher Syntax durch Einrückung zur Blockbegrenzung Reduziere Syntax, wenige Schlüsselwörter Interaktiver Modus Plattformunabhängigkeit: Meist kompilierender Interpreter Windows, Unix, Mac OS, u.a.

5 Multiparadigmensprache:
Komplett unterstützt: objektorientiert, strukturiert Möglich: imperativ, funktional, ... Intern: streng objektorientiert „alles ist ein Objekt“: Stings, Listen, Funktionen, Module,... Beispiel: Jedes Objekt besitzt Methode type >> type(3) <type ‘int‘> >> type(„string“) <type ‘str‘> >> type(len) <type ‘builtin_function_or_method‘>

6 Ausgewählte Eigenschaften
Alles ist ein Objekt Dynamische Typverwaltung Strukturierung durch Einrücken Schema eines Pythonprogramms Importanweisungen Funktionsdefinitionen Hauptprogramm

7 Funktionsdefinition Funktionsdefinition Programmcode der Funktion
def geom(breite, laenge): Programmcode der Funktion flaeche = breite * laenge umfang = 2 * (breite + laenge) Evtl. Rückgabewerte return flaeche, umfang Funktionsaufruf f, u = geom(3, 7) print “Fläche: “, f print “Umfang: “, u

8 Kontrollstrukturen I if Bedingung: elif Bedingung: else:
... elif Bedingung: else: if x<12: y = 20 else: y = 8 Bedingter Ausdruck: y = (20 if x<12 else 8)

9 Kontrollstrukturen II
while Bedingung: Anweisung continue break for Variable in Objekt: Anweisung for i in range(start, stop, step)

10 Beispielprogramme

11 Anwendungen Als Skriptsprache: Dynamische Webanwendungen
z.B.: Open Office, GIMP, NASA Dynamische Webanwendungen z.B.: Google Spider/Search Engine/App Engine, YouTube Entwurf von Prototypen Lehre: z.B.: „One Laptop per Child“ Desktopanwendungen 3D-Simulationen Echtzeit-Syteme Mathematische Fragestellungen ...

12 Kritische Beurteilung: Vorteile
Benutzerfreundlichkeit, leicht erlernbar: Klare/reduzierte Syntax Übersichtlichkeit Mächtigkeit: Große Standardbibliothek Flexibilität: Multiparadigmensprache Erweiterbarkeit: Module in C und Python werden unterstützt

13 Kritische Beurteilung: Nachteile
Fehleranfällig, wegen dynamischer Typisierung Fehlen bekannter Konstrukte switch do while ... schlechte Performance

14 Kritische Beurteilung: Fazit
Große Vielfalt an Einsatzmöglichkeiten mit Ausnahme von performance-kritischen Anwendungen Kann Effizienz und Stil von Entwicklern verbessern Stetige Weiterentwicklung  Interessante, vielseitige Programmiersprache

15 Literaturhinweise: Online: Literatur:
Offizielle Homepage: Van Rossums Blog: Usenet: comp.lang.python Literatur: Programming Python, Mark Lutz, O‘Reilly Media A byte of python ( Dive into Python, Mark Pilgrim, Apress

16 Vielen Dank für eure Aufmerksamkeit! Fragen?


Herunterladen ppt "Proseminar Programmiersprachen Python"

Ähnliche Präsentationen


Google-Anzeigen