Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Немецкий язык для магистров технического профиля. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
se Blöcke nicht durch geschweifte Klammern, sondern durch Ein- rückungen strukturiert.
Python unterstützt mehrere Programmierparadigmen, z.B.
die objektorientierte, die aspektorientierte und die funktionale Pro­grammierung. Ferner bietet es eine dynamische Typisierung. Wie viele dynamische Sprachen wird Python oft als Skriptsprache ge­nutzt.
Die Sprache hat ein offenes, gemeinschaftsbasiertes Ent-
wicklungsmodell, das durch die gemeinnützige Python Software
Foundation, die de facto die Definition der Sprache in der Refe­renzumsetzung CPython pflegt, gestützt wird.
Wegen ihrer klaren und übersichtlichen Syntax gilt Python
als einfach zu erlernen. Sie besitzt eine umfangreiche Standardbib­liothek und zahlreiche Pakete im Python Package Index.
Entwicklungsgeschichte. Die Sprache wurde Anfang der 1990-er Jahre von Guido van Rossum am Centrum Wiskunde &
Informatica in Amsterdam als Nachfolger für die Programmier für Lehrsprache ABC entwickelt und war ursprünglich das verteilte
Betriebssystem Amoeba gedacht.
Der Name geht nicht etwa (wie das Logo vermuten ließe) auf die gleichnamige Schlangengattung (Pythons) zurück, sondern be- zog sich ursprünglich auf die englische Komikertruppe Monty Py-
thon. In der Dokumentation finden sich daher auch einige Anspie­lungen auf Sketche aus dem Flying Circus. Trotzdem etablierte sich die Assoziation zur Schlange, was sich unter anderem in der Programmiersprache Cobra sowie dem Python-Toolkit „Boa“ äu-
ßert. Die erste Vollversion erschien im Januar 1994 unter der Be- zeichnung Python 1.0. Gegenüber früheren Versionen wurden ei-
nige Konzepte der funktionalen Programmierung implementiert,
die allerdings später wieder aufgegeben wurden. Von 1995 bis
2000 erschienen Updates, die fortlaufend als Python 1.1, 1.2 etc. bezeichnet wurden.
Python 2.0 erschien am 16. Oktober 2000. Neue Funktionen umfassten eine voll funktionsfähige Garbage Collection (automatsche Speicherbereinigung) und die Unterstützung für den Unicode-
141
Zeichensatz. In Version 2.6 wurde eine Hilfe eingebaut, mit der angezeigt werden kann, welche Code-Sequenzen vom Nachfolger Python 3 nicht mehr unterstützt werden und daher in darauf auf­bauenden Versionen nicht mehr lauffähig sind.
Python 3.0 (auch Python 3000) erschien am 3. Dezember
2008 nach längerer Entwicklungszeit. Es beinhaltet einige tiefgrei- fende Änderungen an der Sprache, etwa das Entfernen von Redun- danzen bei Befehlssätzen und veralteten Konstrukten. Da Python
3.0 hierdurch teilweise inkompatibel zu früheren Versionen ist, be-
schloss die Python Software Foundation, Python 2.7 parallel zu Python 3 vorerst weiter durch die Versorgung mit Updates zu un­terstützen.
Am 23. Dezember 2016 wurde die neueste Version 3.6 ver­öffentlicht.
Ziele. Python wurde mit dem Ziel größter Einfachheit und Übersichtlichkeit entworfen. Dies wird vor allem durch zwei Maß-
nahmen erreicht. Zum einen kommt die Sprache mit relativ weni-
gen Schlüsselwörtern aus. Zum anderen ist die Syntax reduziert und auf Übersichtlichkeit optimiert. Dadurch lassen sich Python-
basierte Skripte deutlich knapper formulieren als in anderen Spra­chen.
Van Rossum legte bei der Entwicklung großen Wert auf eine Standardbibliothek, die überschaubar und leicht erweiterbar ist. Dies war Ergebnis seiner schlechten Erfahrung mit der Sprache ABC, in der das Gegenteil der Fall ist.
Durch dieses Konzept wurde es auch ermöglicht, Python­Programme in anderen Sprachen als Module einzubetten. Dadurch
können Schwächen von Python umgangen werden. Beispielsweise können für zeitkritische Teile Routinen in maschinennäheren
Sprachen wie z.B. C aufgerufen werden. Umgekehrt lassen sich mit Python Module und Plug-ins für andere Programme schreiben,
die die entsprechende Unterstützung bieten. Dies ist z. B. bei
Blender, Cinema 4D, GIMP, Maya, OpenOffice bzw. LibreOffice, PyMOL, SPSS, QGIS oder KiCad der Fall.
Python ist eine Multiparadigmensprache. Das bedeutet, Py-
142
thon zwingt den Programmierer nicht zu einem einzigen Pro-
grammierstil, sondern erlaubt, das für die jeweilige Aufgabe am besten geeignete Paradigma zu wählen. Objektorientierte und strukturierte Programmierung werden vollständig unterstützt,
funktionale und aspektorientierte Programmierung werden durch einzelne Elemente der Sprache unterstützt.
Die Datentypen werden dynamisch verwaltet, eine statische
Typprüfung wie z. B. bei C++ gibt es nicht. Die Freigabe nicht
mehr benutzter Speicherbereiche erfolgt durch Referenzzählung. Unicode-Unterstützung wurde in der Version 2.0 eingeführt.
Die wesentlichen Ziele und Regeln der Sprache wurden mit einer Reihe kurzer, humorvoller Phrasen unter dem Titel The Zen of Python im Jahr 2004 herausgegeben.
Datentypen und Strukturen. Python besitzt eine größere
Anzahl von grundlegenden Datentypen. Neben der herkömmlichen Arithmetik unterstützt es transparent auch beliebig große Ganzzah-
len und komplexe Zahlen.
Die Sprache verfügt über die übliche Ausstattung an Zei­chenkettenoperationen. Zeichenketten sind in Python allerdings
unveränderliche Objekte (wie auch in Java). Daher geben Operati- onen, die das Ändern einer Zeichenkette bewerkstelligen sollen –
wie z. B. das Ersetzen von Zeichen – immer eine neue Zeichenket­te zurück.
In Python ist alles ein Objekt; Klassen, Typen, Methoden, Module etc. Der Datentyp ist jeweils an das Objekt (den Wert) ge­bunden und nicht an eine Variable, d. h. Datentypen werden dy­namisch vergeben, so wie bei Smalltalk oder Lisp – und nicht wie bei Java.
Trotz der dynamischen Typverwaltung enthält Python eine gewisse Typprüfung. Diese ist strenger als bei Perl, aber weniger
strikt als etwa bei Objektive CAML. Implizite Umwandlungen nach dem Duck-Typing-Prinzip sind unter anderem für numerische Typen definiert, so dass man beispielsweise eine komplexe Zahl mit einer langen Ganzzahl ohne explizite Typumwandlung multi­plizieren kann. Mit dem Format-Operator % gibt es eine implizite
143
Umwandlung eines Objekts in eine Zeichenkette. Der Operator
überprüft zwei Objekte auf (Wert-)Gleichheit. Der Operator ist überprüft die tatsächliche Identität zweier Objekte.
Sammeltypen, Objektsystem und Standardbibliothek
der Programmiersprache Python
Sammeltypen. Python besitzt mehrere Sammeltypen, darun-
ter Listen, Tupel, Mengen (Sets) und assoziative Arrays (Dictio­naries). Listen, Tupel und Zeichenketten sind Folgen (Sequenzen, Arrays) und kennen fast alle die gleichen Methoden: Über die Zei­chen einer Kette kann man ebenso iterieren wie über die Elemente
einer Liste. Außerdem gibt es die unveränderlichen Objekte, die nach ihrer Erzeugung nicht mehr geändert werden können. Listen
sind z. B. erweiterbare Felder (Arrays), wohingegen Tupel und Zeichenketten eine feste Länge haben und unveränderlich sind.
Der Zweck solcher Unveränderlichkeit hängt z. B. mit den Wörterbüchern zusammen, einem Datentyp, der auch als assoziati­ves Array bezeichnet wird. Um die Datenkonsistenz zu sichern,
müssen die Schlüssel eines Wörterbuches vom Typ „unveränder- lich“ sein. Die ins Wörterbuch eingetragenen Werte können dage-
gen von beliebigem Typ sein.
Sets sind Mengen von Objekten und in CPython ab Version
2.4 im Standardsprachumfang enthalten. Diese Datenstruktur kann beliebige (paarweise unterschiedliche) Objekte aufnehmen und stellt Mengenoperationen wie beispielsweise Durchschnitt, Diffe­renz und Vereinigung zur Verfügung.
Objektsystem. Das Typsystem von Python ist auf das Klas­sensystem abgestimmt. Obwohl die eingebauten Datentypen genau
genommen keine Klassen sind, können Klassen von einem Typ er- ben. So kann man die Eigenschaften von Zeichenketten oder Wör- terbüchern erweitern – auch von Ganzzahlen. Python unterstützt
Mehrfachvererbung.
Die Sprache unterstützt direkt den Umgang mit Typen und Klassen. Typen können ausgelesen (ermittelt) und verglichen wer-
den und verhalten sich wie Objekte – in Wirklichkeit sind die Ty-
144
pen (wie in Smalltalk) selbst ein Objekt. Die Attribute eines Ob­jektes können als Wörterbuch extrahiert werden.
Standardbibliothek. Python verfügt über eine große Stan- dardbibliothek, wodurch es sich für viele Anwendungen gut eig-
net. Sie ist eine der größten Stärken von Python. Der überwiegen- de Teil davon ist plattformunabhängig, so dass auch größere Py-
thon-Programme oft auf Unix, Windows, macOS und anderen
Plattformen ohne Änderung laufen. Die Module der Standardbibli- othek können mit in C oder Python selbst geschriebenen Modulen ergänzt werden.
Die Standardbibliothek ist besonders auf Internetanwendun-
gen zugeschnitten, mit der Unterstützung einer großen Anzahl von
Standardformaten und -protokollen (wie MIME und HTTP). Mo­dule zur Schaffung grafischer Schnittstellen, zur Verbindung mit
relationalen Datenbanken und zur Manipulation regulärer Ausdrü-
cke sind ebenfalls enthalten.
Verbreitung und Einsatz. Python ist für die meisten gängi- gen Betriebssysteme frei erhältlich und bei den meisten Linux- Distributionen im Standardumfang enthalten. Um Python in Webserver einzubinden, wird Webserver-umgreifend WSGI ver­wendet, welches die Nachteile von CGI umgeht. WSGI stellt eine universelle Schnittstelle zwischen Webserver und Python(-
Framework) zur Verfügung.
Eine Reihe von Web-Application-Frameworks nutzt Python, darunter Django, Pylons, SQLAlchemy, TurboGears, web2py, Flask und Zope. Ferner gibt es einen Python-Interpreter für das Symbian-Betriebssystem, so dass Python auf verschiedenen Mo-
biltelefonen verfügbar ist. In der Version 2.5.1 ist Python ein Be- standteil von AmigaOS 4.0. Außerdem basieren mehrere bekannte
kommerzielle Projekte, etwa Google und YouTube, in Teilen auf Python. Auch in der Spieleindustrie findet die Sprache bisweilen Einsatz.
Im Rahmen des Projektes 100-Dollar-Laptop wird Python
als Standardsprache der Benutzeroberfläche verwendet. Da der
100-Dollar-Laptop für die Schulausbildung von Kindern konzi-
145
piert ist, soll bei Benutzung der dafür gestalteten grafischen Be-
nutzeroberfläche „Sugar“ auf Knopfdruck der gerade laufende Py-
thon-Quellcode angezeigt werden. Damit soll Kindern die Mög­lichkeit gegeben werden, die dahinter liegende Informationstech­nologie real zu erleben und nach Belieben „hinter die Kulissen“ zu schauen.
ELEKTROTECHNIK UND ELEKTRONIK
Elektrizität
Elektrizität der physikalische Oberbegriff für alle Phänome- ne, die ihre Ursache in ruhender oder bewegter elektrischer La­dung haben. Dies umfasst viele aus dem Alltag bekannte Phäno- mene wie Blitze oder die Kraftwirkung des Magnetismus. Der Be-
griff Elektrizität ist in der Naturwissenschaft nicht streng abge-
grenzt, es werden aber bestimmte Eigenschaften zum Kernbereich der Elektrizität gezählt:
Die elektrische Ladung. Sie ist eine Eigenschaft bestimmter atomarer Teilchen wie der negativ geladenen Elektronen und der positiv geladenen Protonen, die als Ladungsträger bezeichnet wer- den, und wird in der Einheit Coulomb gemessen. Die Bezeichnung positiv bzw. negativ ist willkürlich gewählt. Wesentliche Eigen­schaft ist, dass sich gleichnamige elektrische Ladungen abstoßen, während sich ungleiche Ladungen anziehen.
Der elektrische Strom. Er beschreibt eine Bewegung von elektrischen Ladungsträgern, wird in der Einheit Ampere gemes­sen und ist unter anderem Ursache von magnetischen Feldern. Durch beschleunigte Bewegung elektrischer Ladungen warden elektromagnetische Felder erzeugt, die im Bereich der Elektrody­namik beschrieben werden und sich unabhängig von elektrischen Leitern im Raum ausbreiten können.
Das elektrische Feld beschreibt die von elektrischen Ladun­gen hervorgerufenen Zustandsgrößen des Raumes, die man als elektrische Feldstärke und elektrisches Potential bezeichnet. Die als Potentialdifferenz definierte elektrische Spannung wird übli­cherweise in der Einheit Volt gemessen.
146
Vorgänge, bei denen keine zeitliche oder keine wesentliche zeitliche Änderung auftritt, werden der Elektrostatik zugeordnet. Vorgänge, bei denen die zeitliche Änderung einen wesentlichen Einfluss hat, werden zur Elektrodynamik gezählt.
Aus der Geschichte der Elektrizität
Phänomene der Elektrizität sind schon lange bekannt, das wohl bekannteste und spektakulärste Auftreten ist in der Meteoro-
logie der Blitz. Das Auftreten des elektrischen Schocks, den be­stimmte Fische wie der Zitterrochen oder Zitteraal zum Beutefang einsetzen, war im alten Ägypten um 2750 v. Chr. bekannt. In der Antike war den alten Griechen bereits die elektrostatische Aufla­dung des Bernsteins bekannt, der von ihnen als electron bezeichnet wurde. Diese Erkenntnis wird dem Naturphilosophen Thales von Milet zugeschrieben, der sich um 600 v. Chr. mit elektrostatischen Aufladungen beschäftigte.
Im 1. Jahrhundert v. Chr. Wurden parthische Tongefäße in der Nähe von Bagdad verwendet, die 1936 von Wilhelm König ge­funden wurden und auch als Bagdad-Batterie bekannt sind. Diese
Gefäße enthielten einen Eisenstab und einen Kupferzylinder, der
mit Asphalt abgedichtet war. Versuche des Roemer- und Pelizaeus-Museums in Hildesheim zeigten, dass mit dieser Anord­nung und Traubensaft als Elektrolyt eine Spannung von 0,5 V er­reicht werden konnte. Die Verwendung als eine Art Batterie ist umstritten.
Eine gezielte und praktische Anwendung der Elektrizität er­folgte erst am Beginn der Neuzeit. Der Brite William Gilbert un­tersuchte systematisch die elektrische Aufladung an vielen Sub­stanzen mit Hilfe des Versoriums und führte die Bezeichnung
„Electrica“ ein (veröffentlicht 1600). Um 1663 entwickelte der Magdeburger Bürgermeister Otto von Guericke eine drehbare
Schwefelkugel, die mit der Hand gerieben die kosmischen Wirk­kräfte (virtutes mundanae) nachweisen sollte. Gezielt zum Erfor­schen elektrischer Wirkungen entwickelte Francis Hauksbee 1706 eine Reibungselektrisiermaschine, deren Kugel nicht mehr aus
147
Schwefel, sondern aus Glas gebaut war. Diese und ähnliche Elekt­risiermaschinen dienten in den Folgejahrzehnten vor allem der ge­sellschaftlichen Belustigung.
1733 stellte der französische Naturforscher Charles du Fay fest, dass es zwei entgegengesetzte Formen der elektrischen La­dung gibt, die er zunächst als Harz- und Glaselektrizität bezeichne­te. Diese Feststellung war die Basis für die Bezeichnung als positi­ve und negative elektrische Ladung.
Der niederländische Physiker Pieter van Musschenbroek er­fand 1745 – unabhängig von, und ein Jahr nach Ewald Jürgen Georg von Kleist – die Leidener Flasche, die in Deutschland auch
als „Kleistsche Flasche“ bekannt ist. Die Leidener Flasche gilt als
der erste Kondensator zur Speicherung von elektrischen Spannun­gen.
Um 1752 fand der Amerikaner Benjamin Franklin nach der
schon bekannten Reibungselektrizität Zusammenhänge mit der atmosphärischen Elektrizität. Er erfand den Blitzableiter und inter- pretierte das Phänomen als Pluspol und Minuspol.
Der italienische Mediziner Luigi Galvani beobachtete um 1770 mit einer Elektrisiermaschine an Froschschenkeln Zuckun-
gen eines toten Frosches. So wurde bekannt, dass Elektrizität auch Bewegungen auslösen kann. „Tierische“ Elektrizität an Frosch- schenkeln ist übertragene elektrochemische Energie und Grundla-
ge der Elektrochemie.
1775 erfand der italienische Physiker Alessandro Volta das Elektrophor, ein Gerät zur Ladungstrennung mit Hilfe der Influ- enz. Fünf Jahre später entwickelte er die Voltasche Säule, die aus den Metallen Kupfer und Zink und einem Elektrolyt besteht. Diese Batterie ermöglichte erstmals die Stromerzeugung ohne Reibung, nur aus gespeicherter chemischer Energie. Die Voltasche Säule wurde für viele Jahre die wichtigste Apparatur zur Gleichstromer­zeugung.
Am Ende des 18. Jahrhunderts fanden und beschrieben Charles Augustin de Coulomb, Joseph Priestley, Henry Cavendish und John Robison unabhängig voneinander das Gesetz zur Be-
148
schreibung der Kraft zwischen zwei elektrischen Ladungen, das als Coulomb-Gesetz bekannt ist. Der deutsche Physiker Georg Simon Ohm formulierte den grundlegenden Zusammenhang zwischen elektrischem Strom und elektrischer Spannung an linearen elektri­schen Widerständen. Dieser Zusammenhang wird später als ohm­sches Gesetz bekannt.
Um 1810 erzeugte der Chemiker Humphry Davy zwischen zwei Kohlestiften, die mit einer Batterie als Stromversorger ver­bunden waren, einen Lichtbogen und schuf damit die Grundlagen für die Kohlebogenlampe.
Um 1820 beobachtete Hans Christian Ørsted, die Ablenkung einer Magnetnadel durch Stromeinfluss. André-Marie Ampère, ein
französischer Physiker, deutete und beschrieb darauf aufbauend die Stärke des Magnetfeldausschlags in Abhängigkeit zur Strom­stärke. Er erfand das „Amperemeter“, die Theorie des elektrischen
Telegrafen, erstmals angewandt von Carl Friedrich Gauß und Wil­helm Eduard Weber, und den Elektromagneten. Er ist Begründer der Theorie vom Elektromagnetismus und Namensgeber der phy­sikalischen Einheit des elektrischen Stromes Ampere.
Der britische Physiker Michael Faraday gilt als einer der Be­gründer der Elektrodynamik. Er formulierte erstmals das Indukti­onsgesetz und beschäftigte sich in weiteren Arbeiten mit den Ge- setzen der Elektrolyse. Er schuf so die Grundlagen zur Erfindung der Telegraphie. Der schottische Physiker James Clerk Maxwell konzipierte 1864 die grundlegende Theorie der klassischen Elekt­rodynamik in Form der Maxwell-Gleichungen und verband damit Effekte ruhender und bewegter Ladungen sowie deren Felder zur
Beschreibung elektromagnetischer Phänomene. Aus diesen Ge­setzmäßigkeiten folgerte er die Existenz der elektromagnetischen
Wellen. Er identifizierte das Licht als eine Erscheinungsform von elektromagnetischen Wellen.
Ab 1830, nachdem die notwendigen Gesetzmäßigkeiten be-
kannt waren, setzte eine breite Anwendung der Elektrizität ein.
Diese technischen Anwendungen werden unter dem Begriff Elekt­rotechnik zusammengefasst. Seit 1831 experimentierten mehrere
149
Forscher damit, den Elektromagnetismus für elektrische Antriebe und zur elektromechanischen Stromerzeugung zu nutzen. Diese gelang 1832 unabhängig voneinander dem Franzosen Hippolyte Pixii und dem Italiener Salvatore Dal Negro. 1834 meldete der US-Amerikaner Thomas Davenport ein Patent für eine elektrische Lokomotive an. Samuel F. B. Morse baute 1833 den ersten brauchbaren Schreibtelegrafen. Mit der von ihm eingerichteten Te­legrafenlinie von Washington nach Baltimore und dem von einem seiner Mitarbeiter entwickelten Morsealphabet begann 1844 das Zeitalter der elektrischen Kommunikation – und damit der Gleich­zeitigkeit. In den Jahren 1843/1844 gelang Henri Adolphe Ar­chereau und Louis-Joseph Deleuil mit Kohlebogenlampen auf der Place de la Concorde in Paris erstmals die elektrische Beleuchtung eines öffentlichen Platzes.
Die Stromerzeugung (und damit ebenso die Möglichkeit des elektrischen Antriebs) mit einer elektrischen Maschine ohne Per­manentmagnet gelang 1851 dem Slowaken Ányos Jedlik, 1854 dem Dänen Søren Hjorth, der dafür im selben Jahr das englische Patent Nr. 2198 erhielt, und 1866 Werner von Siemens, der sie zur Serienreife brachte.
1882 wurde erstmals eine elektrische Energieversorgung über eine große Entfernung installiert, mit der 57 km langen Gleichstromleitung Miesbach–München. 1886 begründete Nikola Tesla mit Hilfe seines Sponsors George Westinghouse die heute gebräuchliche elektrische Energieübertragung mittels Wechsel­stroms. 1891 gelang die erste Fernübertragung von heute in der Energietechnik üblichen Dreiphasenwechselstrom mit der Dreh­stromübertragung Lauffen – Frankfurt über 176 km.
In den Folgejahren kam es in der Elektrotechnik zu einer zu-
nehmenden Spezialisierung. Während die nach wie vor eng mit
dem Maschinenbau verbundene elektrische Energietechnik zu der Energieversorgung von Haushalten, Betrieben und Fabriken dien­te, verfolgte der Zweig der Nachrichtentechnik das Ziel, Informa-
tion wie Nachrichten mit geringen zeitlichen Verzögerungen über weite Distanzen zu übertragen. Um 1895 führte Guglielmo Marco-
150
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]