Sie sind hier
E-Book

Programmieren lernen von Kopf bis Fuß

Ihr Einstieg in die Programmierung mit Python

AutorEric Freeman
VerlagO'Reilly Verlag
Erscheinungsjahr2018
Seitenanzahl638 Seiten
ISBN9783960101864
FormatPDF
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis31,99 EUR
Was lernen Sie in diesem Buch? Es ist kein Geheimnis, dass die Welt um Sie herum immer computerbasierter, vernetzter, konfigurier- und programmierbarer wird. Sie können passiv daran teilhaben - oder Sie können lernen zu programmieren. In diesem Buch erfahren Sie, wie Sie Code schreiben, mit dem Sie Ihren Computer, Ihr Mobilgerät oder alles, was sich programmieren lässt, dazu bringen, Dinge für Sie zu tun. Mit der Programmiersprache Python erarbeiten Sie sich Schritt für Schritt die Grundkonzepte der Programmierung sowie viele grundlegende Themen der Informatik wie Speicherung, Datenstrukturen, Abstraktion, Rekursion oder Modularität. Warum sieht dieses Buch so anders aus? In dieses Buch sind die neuesten Erkenntnisse der Kognitionsforschung und der Lerntheorie eingeflossen, um Ihnen das Lernen so einfach wie möglich zu machen. Statt einschläfernder Bleiwüsten verwendet dieses Buch eine Vielzahl von Abbildungen und Textstilen, die Ihr Gehirn auf Trab halten und Ihnen das Wissen direkt ins Hirn spielen - und zwar so, dass es sitzt.

Eric Freeman ist Informatiker und begeistert sich für Software- und Medienarchitektur. Er hat vier Jahre in einem Traumjob bei Disney.com gearbeitet, wo er ein Projekt zu Breitbandinternet und drahtloser Übertragung geleitet hat. Er arbeitet als Autor, programmiert coole Software und betätigt sich als Java- und Mac-Hacker. Einen großen Teil der 90er-Jahre hat Eric damit verbracht, sich gemeinsam mit David Gelernter mit Alternativen zur Desktop-Metapher zu beschäftigen (und noch heute fragen beide: 'Warum muss ich einer Datei einen Namen geben?'). Auf der Grundlage dieser Arbeiten promovierte Eric 1997 an der Yale University. Er hat außerdem Mirror Worlds Technologies mit begründet, um dort Lifestreams, eine kommerzielle Version seiner Dissertation, zu entwickeln. In einem früheren Leben hat Eric Software für Netzwerke und Supercomputer entwickelt. Vielleicht kennen Sie ihn aus Büchern wie 'JavaSpaces Principles, Patterns and Practice'. Er denkt gern an die Implementierung von Tupelraum-Systemen auf Thinking Machine CM-5-Rechnern und an den Aufbau einiger der ersten Internetinformationssysteme für die NASA in den späten 80er-Jahren zurück.

Kaufen Sie hier:

Horizontale Tabs

Blick ins Buch
Inhaltsverzeichnis
Der Autor5
Inhaltsverzeichnis6
Einführung22
Für wen ist dieses Buch?23
Wir wissen, was Sie gerade denken.24
Lies mich!29
Sie müssen Python installieren31
Ein paar Worte zur Organisation Ihres Codes33
Danksagungen*34
Das Gutachterteam35
Über den Übersetzer dieses Buchs36
1 Rechnerisch denken38
Immer der Reihe nach39
Wie Programmieren funktioniert43
Sprechen wir überhaupt die gleiche Sprache?44
Die Welt der Programmiersprachen45
Code mit Python schreiben und ausführen50
Eine kurze Geschichte von Python52
Python auf Herz und Nieren prüfen55
Ihre Arbeit speichern57
Herzlichen Glückwunsch zu Ihrem ersten Python-Programm!58
Phrasendrescher62
Den Code in die Maschine bekommen63
2 Einfache Werte, Variablen und Typen70
Einen Rechner für Hundejahre programmieren71
Pseudocode in richtigen Code umwandeln73
Schritt 1: Eingaben einsammeln74
Wie die input-Funktion funktioniert75
Variablen verwenden, um Werte zu erinnern und zu speichern75
Benutzereingabe einer Variablen zuweisen76
Schritt 2: Weitere Eingaben einsammeln76
Zeit, unseren Code auszuführen77
Etwas Code eingeben80
Ein genauer Blick auf Variablen81
Etwas mehr Ausdruck82
Variablen sind VARIABEL83
Besser leben durch Operatoren-Präzedenz84
Rechnen mit Operatoren-Präzedenz85
Finger von der Tastatur!88
Step 3: Das Alter des Hundes berechnen89
Houston, wir haben ein Problem!90
Fehler sind menschlich gehören zum Programmieren dazu91
Etwas mehr Debugging …93
Welcher Python-(Daten-)Typ sind Sie?95
Den Code reparieren96
Houston, wir sind abgehoben.97
Schritt 4: Benutzerfreundliche Ausgaben98
3 Boolesche Werte, Entscheidungen und Schleifen110
Wollen Sie ein Spiel spielen?111
Zuerst ein allgemeines Konzept113
Die Wahl des Computers114
Wie Zufallszahlen genutzt werden115
Vorstellung des booleschen Datentyps118
Entscheidungen treffen119
Entscheidungen und noch mehr Entscheidungen120
Zurück zu Stein, Schere, Papier121
Die Wahl des Benutzers ermitteln122
Ein Blick auf die Wahl des Benutzers125
Den Code zum Finden eines Unentschiedens einbauen126
Wer hat gewonnen?127
Implementieren wir die Spiellogik129
Mehr über boolesche Operatoren130
Ist das dokumentiert?135
Den Code mit Kommentaren versehen136
Wir müssen das Spiel endlich fertigstellen!137
Woher wissen wir, ob eine Benutzereingabe ungültig ist?138
Den Ausdruck überprüfen und aufräumen139
Den Benutzer immer wieder zur Eingabe auffordern141
Dinge mehr als einmal tun142
Wie die while-Schleife funktioniert143
while benutzen, um den Benutzer zur Eingabe aufzufordern, bis eine gültige Auswahl getroffen wurde147
Glückwunsch! Sie haben Ihr erstes Spiel programmiert!149
4 Listen und Iterationen162
Können Sie Bubbles-R-Us helfen?163
Mehrere Werte in Python darstellen164
Wie Listen funktionieren165
Wie lang ist die Liste eigentlich?168
Auf das letzte Listenelement zugreifen169
Python macht das sogar noch einfacher169
Pythons negative Indizes benutzen170
In der Zwischenzeit bei Bubbles-R-Us …172
Wie man über eine Liste iteriert175
Den Ausgabefehler beseitigen176
Den Ausgabefehler wirklich beseitigen177
Die for-Schleife – der bevorzugte Weg zum Iterieren über eine Liste179
Die for-Schleife mit einer Zahlenfolge benutzen182
Mehr tun mit Zahlenfolgen183
Die Einzelteile zusammensetzen185
Eine komplett neue Liste erstellen193
Mit Listen geht noch mehr194
Probefahrt für den fertigen Bericht198
Und die Gewinner sind …198
Probefahrt für die kosteneffektivste Seifenblasenmischung202
5 Funktionen und Abstraktion216
Was stimmt denn mit dem Code nicht?218
Einen Codeblock in eine FUNKTION umwandeln220
Wir haben eine Funktion erstellt, aber wie können wir sie benutzen?221
Aber wie funktioniert das wirklich?221
Funktionen können auch Dinge ZURÜCKGEBEN229
Funktionen mit Rückgabewerten aufrufen230
Ein bisschen Refaktorierung zwischendurch232
Den Code ausführen233
Den Avatar-Code abstrahieren234
Den Körper der get attribute-Funktion schreiben235
get_attribute aufrufen236
Wir sollten noch etwas mehr über Variablen sprechen …238
Den Geltungsbereich von Variablen verstehen239
Wenn Variablen an Funktionen übergeben werden …240
Die drink_me-Funktion aufrufen241
Was ist mit der Verwendung globaler Variablen in Funktionen?244
Mehr zu Parametern: Standardwerte und Schlüsselwörter247
Wie Standardwerte funktionieren247
Geben Sie erforderliche Parameter immer zuerst an!248
Argumente mit Schlüsselwörtern verwenden249
Wie man diese Optionen einordnen sollte249
4, Teil 2, Sortierung und verschachtelte Iteration262
Bubble Sort verstehen265
Wir beginnen mit Durchgang 1:265
Etwas Bubble Sort-Pseudocode268
Bubble Sort in Python implementieren271
Die Nummern der Seifenblasen­mischungen berechnen273
6 Text, Strings und Heuristiken282
Willkommen zu den Datenwissenschaften283
Wie berechnet man einen Lesbarkeitsindex?284
Der große Plan285
Ein bisschen Pseudocode286
Wir brauchen etwas Text zur Analyse287
Die Funktion erstellen289
Als Erstes brauchen wir die Anzahl der Wörter in unserem Text290
Die Anzahl der Sätze berechnen294
Die count_sentences-Funktion schreiben295
Die Anzahl der Silben zählen – oder: Heuristiken lieben lernen301
Die Heuristik vorbereiten304
Die Heuristik schreiben305
Wie man Vokale zählt306
Aufeinanderfolgende Vokale ignorieren306
Den Code zum Ignorieren aufeinanderfolgender Vokale schreiben307
Die Buchstaben e und y sowie Interpunktions­zeichen am Satzende entfernen309
Slicing (und Substrings) benutzen311
Den heuristischen Code fertigstellen313
Die Formel für den Lesbarkeitsindex implementieren315
Und noch mehr320
7 Module, Methoden, Klassen und Objekte328
Ein schneller Rückblick auf Module331
Die globale Variable _name_333
analyze.py aktualisieren334
analyze.py als Modul benutzen336
analyze.py mit Docstrings versehen338
Andere Python-Module erforschen342
Moment mal. Haben Sie gerade »Schildkröten« gesagt?!343
Erschaffen Sie Ihre eigene Schildkröte!345
Tierversuche mit Schildkröten346
Eine zweite Schildkröte hinzufügen348
Was sind diese Schildkröten überhaupt?351
Was sind Objekte?352
Okay, und was ist eine Klasse?353
Eine Klasse ist kein Objekt. Sie wird verwendet, um Objekte zu erzeugen.353
Objekte und Klassen verwenden355
Worum geht es bei den Methoden und Attributen?356
Klassen und Objekte überall357
Bereitmachen zum Schildkrötenrennen359
Das Spiel planen360
Fangen wir mit dem Programmieren an361
Das Spiel vorbereiten361
Den Setup-Code schreiben362
Nicht so schnell!363
Das Rennen beginnen365
8 Rekursion und Dictionaries378
Eine andere Art, Dinge zu berechnen379
Kommen wir jetzt zu etwas völlig anderem …380
Schreiben wir etwas Code für beide Fälle381
Etwas mehr Übung384
Rekursion zum Finden von Palindromen benutzen385
Einen rekursiven Palindrom-Detektor schreiben386
Das Unsoziale Netzwerk397
Das Dictionary399
Sehen wir, wie ein Dictionary erstellt wird.399
Schlüssel und Werte müssen keine Strings sein.400
Natürlich können Sie die Schlüssel auch wieder entfernen.400
Vielleicht wollen Sie aber zuerst überprüfen, ob er überhaupt existiert.400
Kann man über Dictionaries auch iterieren?401
Dictionaries für das Unsoziale Netzwerk einsetzen403
Aber wie fügen wir weitere Attribute hinzu?405
Erinnern Sie sich an das Killer-Feature unseres Unsozialen Netzwerks?407
Den unsozialsten Benutzer finden408
Können wir uns die Ergebnisse der Funktionsaufrufe nicht einfach merken?413
Ein Dictionary zum Speichern der Fibonacci-Ergebnisse413
Etwas gegen teure Berechnungen: Memoisation414
Ein genauer Blick auf die koch-Funktion417
Das Koch-Fraktal eingehend erforschen419
9 Dateien speichern und auslesen430
Bereit für Crazy Libs?431
Wie Crazy Libs funktionieren soll433
Schritt 1: Text der Geschichte aus einer Datei lesen436
Dateipfade richtig benutzen437
Relative Pfade437
Absolute Pfade438
Oh, und vergessen Sie nicht, wieder aufzuräumen, wenn Sie fertig sind.439
Dateien im Python-Code lesen440
Jetzt hör schon auf!443
Verwendung der readline-Methode am Dateiobjekt444
Woher wissen wir, wann die letzte Zeile gelesen wurde?446
Eine Crazy Lib-Schablone einlesen447
Den Schablonentext verarbeiten448
Den Bug mit einer neuen Stringmethode beseitigen450
Den Bug tatsächlich beheben451
Der eine oder andere Code hat echte Probleme452
Mit Ausnahmen umgehen454
Ausdrücklich mit Ausnahmen umgehen455
Crazy Libs aktualisieren, um mit Ausnahmen umzugehen457
Unser letzter Schritt: Das Crazy Lib speichern458
Den Rest des Code aktualisieren458
10 Web-APIs benutzen472
Erweitern Sie Ihre Reichweite mit Web-APIs473
Die Funktionsweise von Web-APIs474
Alle Web-APIs besitzen eine Webadresse475
Zeit für ein schnelles Upgrade478
Das Upgrade durchführen479
Jetzt brauchen wir nur noch eine gute Web-API ...480
Ein genauerer Blick auf die API481
Web-APIs verwenden JSON für die Rückgabe der Daten482
Sehen wir uns das requests-Modul noch einmal an484
Die Einzelteile zusammensetzen: einen Request an Open Notify verschicken486
JSON in Python verarbeiten487
Das JSON-Modul zum Auslesen der ISS-Daten benutzen488
Wir brauchen etwas mehr Grafik489
Das screen-Objekt490
Wir benutzen eine Schildkröte, um die ISS darzustellen492
Schildkröten können auch wie Weltraumstationen aussehen493
Vergessen Sie die ISS. Wo sind WIR?494
Den ISS-Code fertigstellen495
11 Widgets, Events und emergentes Verhalten504
Willkommen in der WUNDERVOLLEN WELT des KÜNSTLICHEN LEBENS505
Eine genauerer Blick auf das Spiel des Lebens506
Was wir bauen werden509
Haben wir das richtige Design?510
Das Datenmodell (Model) entwickeln514
Das Raster im Code abbilden514
Eine Generation des Spiels des Lebens berechnen515
Das Schicksal aller Zellen berechnen515
Den Model-Code fertigstellen519
Den View erstellen522
Das erste Widget erstellen523
Die fehlenden Widgets hinzufügen524
Das Layout korrigieren525
Die Widgets auf einem Gitter anordnen.526
Das Gitter-Layout in Code übersetzen526
Mit dem Controller weitermachen528
Eine Aktualisierungsfunktion einbauen528
Bereit für eine neue Art der Programmierung?531
Die Funktionsweise des Start/Pause-Buttons534
Eine andere Art von Event536
Die nötige Technologie haben wir: die after-Methode538
Zellen direkt eingeben und bearbeiten541
Den grid_view Event-Handler schreiben542
Jetzt können wir ein paar Muster hinzufügen.543
Einen Handler für das Auswahlmenü schreiben544
Die Ladefunktion für das Muster schreiben547
Noch weiter!554
12 Objektorientierte Programmierung560
Die Dinge anders aufteilen561
Worum geht es bei der objektorientierten Programmierung überhaupt?562
Ihre erste Klasse planen564
Ihre erste Klasse schreiben565
Wie der Konstruktor funktioniert565
Die bark-Methode schreiben568
Die Funktionsweise von Methoden569
Vererbung nutzen571
Die ServiceDog-Klasse implementieren572
Ein genauerer Blick auf abgeleitete Klassen573
Ein ServiceDog IST EIN Dog574
IST-Beziehungen im Code überprüfen575
Verhalten überschreiben und erweitern579
Noch mehr Fachjargon …581
Objekt HAT ein anderes Objekt583
Ein Hundehotel entwickeln586
Das Hundehotel implementieren587
Das Hundhotel renovieren590
Das Hotel um ein paar Aktivitäten erweitern591
Ich kann alles, was du auch kannst, oder: Polymorphismus592
Es ist Zeit, den Hunden das Gassigehen beizubringen593
Die Macht der Vererbung595
Anhang: Was u?brig bleibt612
#1 Listen-Comprehensions613
#2 Datum und Uhrzeit614
#3 Reguläre Ausdrücke615
#4 Andere Datentypen: Tupel616
#5 Andere Datentypen: Sets617
#6 Serverseitige Programmierung618
#7 Lazy Evaluation619
#8 Dekoratoren620
#9 Higher-Order- und First Class-Funktionen621
#10 Eine Menge Bibliotheken622
Index624

Weitere E-Books zum Thema: Programmiersprachen - Softwareentwicklung

Apps effektiv managen und vermarkten

E-Book Apps effektiv managen und vermarkten
Die eigene App erfolgreich veröffentlichen: Von der Konzeption bis zur Vermarktung Format: PDF

Lernen Sie Ihre App effektiv, strukturiert und begeisternd weltweit zu vermarkten. In diesem praxisorientierten Buch erhalten Sie einen prägnanten Überblick von der Idee und Konzeption einer App,…

Prozessübergreifendes Projektmanagement

E-Book Prozessübergreifendes Projektmanagement
Grundlagen erfolgreicher Projekte Format: PDF

Projektmanagement ist in Zeiten von enger werdenden Projektbudgets und Projektzeitplänen eine zunehmende Herausforderung geworden. Die Autoren geben wertvolle Hilfestellungen in Krisensituationen und…

Informatik

E-Book Informatik
Anwendungsorientierte Einführung in die allgemeine Wirtschaftsinformatik Format: PDF

Das einführende Informatik-Lehrbuch wendet sich nicht nur an Informatik-Studenten, sondern sogar in erster Linie an Studierende und Praktiker solcher Disziplinen, in denen Informatik zur…

Prozessübergreifendes Projektmanagement

E-Book Prozessübergreifendes Projektmanagement
Grundlagen erfolgreicher Projekte Format: PDF

Projektmanagement ist in Zeiten von enger werdenden Projektbudgets und Projektzeitplänen eine zunehmende Herausforderung geworden. Die Autoren geben wertvolle Hilfestellungen in Krisensituationen und…

Profikurs ABAP®

E-Book Profikurs ABAP®
Konkrete, praxisorientierte Lösungen - Tipps, Tricks und jede Menge Erfahrung Format: PDF

Professionelle und sichere Anwendungsentwicklung unter SAP R/3® ist kein Zufall, sondern eine Sache der Erfahrung. Das Resultat: Tricks und Kniffe, von denen auch Sie als ABAP® Professional…

Wege aus der Softwarekrise

E-Book Wege aus der Softwarekrise
Verbesserungen bei der Softwareentwicklung Format: PDF

Seit Jahrzehnten steckt die Softwareentwicklung in der Krise. Laut aktuellen Statistiken gehen immer noch mehr als die Hälfte aller in der IT-Produktion eingesetzten Mittel verloren. Angekündigte…

MDA®

E-Book MDA®
Effektives Software-Engineering mit UML2® und Eclipse? Format: PDF

Dieses Buch liefert sowohl die theoretischen Grundlagen als auch das praktische Handwerkszeug zur Anwendung der Model-Driven-Architecture der OMG. Nach einer Definition und der Einordnung des…

Weitere Zeitschriften

Courier

Courier

The Bayer CropScience Magazine for Modern AgriculturePflanzenschutzmagazin für den Landwirt, landwirtschaftlichen Berater, Händler und generell am Thema Interessierten, mit umfassender ...

Gastronomie Report

Gastronomie Report

News & Infos für die Gastronomie: Tipps, Trends und Ideen, Produkte aus aller Welt, Innovative Konzepte, Küchentechnik der Zukunft, Service mit Zusatznutzen und vieles mehr. Frech, offensiv, ...

SPORT in BW (Württemberg)

SPORT in BW (Württemberg)

SPORT in BW (Württemberg) ist das offizielle Verbandsorgan des Württembergischen Landessportbund e.V. (WLSB) und Informationsmagazin für alle im Sport organisierten Mitglieder in Württemberg. ...

die horen

die horen

Zeitschrift für Literatur, Kunst und Kritik."...weil sie mit großer Aufmerksamkeit die internationale Literatur beobachtet und vorstellt; weil sie in der deutschen Literatur nicht nur das Neueste ...

ERNEUERBARE ENERGIEN

ERNEUERBARE ENERGIEN

ERNEUERBARE ENERGIEN informiert durch unabhängigen Journalismus umfassend über die wichtigsten Geschehnisse im Markt der regenerativen Energien. Mit Leidenschaft sind wir stets auf der Suche nach ...

F- 40

F- 40

Die Flugzeuge der Bundeswehr, Die F-40 Reihe behandelt das eingesetzte Fluggerät der Bundeswehr seit dem Aufbau von Luftwaffe, Heer und Marine. Jede Ausgabe befasst sich mit der genaue Entwicklungs- ...