Präsentation herunterladen
Veröffentlicht von:Traugott Stroebel Geändert vor über 10 Jahren
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?
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.