Einführung

Dieses Buch ist für engagierte Anfänger und erfahrene Programmierer.

Sie sind ein Anfänger, wenn Sie keine Vorkenntnisse im Programmieren haben, aber “engagiert”, weil wir Ihnen gerade genug geben, um es selbst herauszufinden. Wenn Sie fertig sind, haben Sie eine solide Grundlage in der Programmierung und in Kotlin.

Wenn Sie ein erfahrener Programmierer sind, überspringen Sie zu Zusammenfassung 1 und Zusammenfassung 2 und fahren Sie von dort aus fort.

Der “Atomare” Teil des Buchtitels bezieht sich auf Atome als die kleinsten unteilbaren Einheiten. In diesem Buch versuchen wir, nur ein Konzept pro Kapitel einzuführen, sodass die Kapitel nicht weiter unterteilt werden können — daher nennen wir sie Atome.

Konzepte

Alle Programmiersprachen bestehen aus Funktionen. Sie wenden diese Funktionen an, um Ergebnisse zu erzielen. Kotlin ist mächtig — es hat nicht nur eine reiche Menge an Funktionen, sondern man kann diese Funktionen normalerweise auf verschiedene Arten ausdrücken.

Wenn alles zu schnell auf Sie einprasselt, könnten Sie denken, Kotlin sei “zu kompliziert”.

Dieses Buch versucht, Überforderung zu verhindern. Wir bringen Ihnen die Sprache sorgfältig und gezielt bei, unter Anwendung der folgenden Prinzipien:

  1. Babyschritte und kleine Erfolge. Wir werfen die Tyrannei des Kapitels ab. Stattdessen präsentieren wir jeden kleinen Schritt als ein omares Konzept oder einfach Atom, das wie ein winziges Kapitel aussieht. Wir versuchen, pro Atom nur ein neues Konzept vorzustellen. Ein typisches Atom enthält ein oder mehrere kleine, ausführbare Codebeispiele und die erzeugte Ausgabe.
  2. Keine Vorwärtsverweise. Soweit möglich, vermeiden wir es zu sagen: “Diese Funktionen werden in einem späteren Atom erklärt.”
  3. Keine Verweise auf andere Programmiersprachen. Wir tun dies nur, wenn es notwendig ist. Ein Vergleich mit einer Funktion in einer Sprache, die Sie nicht verstehen, ist nicht hilfreich.
  4. Zeigen, nicht erzählen. Anstatt eine Funktion verbal zu beschreiben, bevorzugen wir Beispiele und Ausgaben. Es ist besser, eine Funktion im Code zu sehen.
  5. Praxis vor Theorie. Wir versuchen, zuerst die Mechanik der Sprache zu zeigen und dann zu erklären, warum diese Funktionen existieren. Das ist umgekehrt zur “traditionellen” Lehre, scheint aber oft besser zu funktionieren.

Wenn Sie die Funktionen kennen, können Sie die Bedeutung herausfinden. Es ist in der Regel einfacher, eine einzelne Seite Kotlin zu verstehen als den entsprechenden Code in einer anderen Sprache.

Wo ist der Index?

Dieses Buch ist in Markdown geschrieben und mit Leanpub produziert. Leider unterstützen weder Markdown noch Leanpub Indizes. Indem wir jedoch die kleinstmöglichen Kapitel (Atome) schaffen, die aus einem einzigen Thema pro Atom bestehen, fungiert das Inhaltsverzeichnis als eine Art Index. Darüber hinaus ermöglichen die eBook-Versionen elektronisches Suchen im gesamten Buch.

Querverweise

Ein Verweis auf ein Atom im Buch sieht so aus: Einführung, was in diesem Fall auf das aktuelle Atom verweist. In den verschiedenen eBook-Formaten erzeugt dies einen Hyperlink zu diesem Atom.

Formatierung

In diesem Buch:

  • Kursiv führt einen neuen Begriff oder ein Konzept ein und betont manchmal eine Idee.
  • Schrift mit fester Breite zeigt Programmschlüsselwörter, Bezeichner und Dateinamen an. Die Codebeispiele sind ebenfalls in dieser Schriftart und in den eBook-Versionen des Buches farblich hervorgehoben.
  • Im Fließtext folgt auf einen Funktionsnamen leere Klammern, wie in func(). Dies erinnert den Leser daran, dass er eine Funktion betrachtet.
  • Um das eBook auf allen Geräten leicht lesbar zu machen und dem Benutzer zu ermöglichen, die Schriftgröße zu erhöhen, begrenzen wir die Breite unserer Code-Listings auf 47 Zeichen. Dies erfordert manchmal Kompromisse, aber wir glauben, dass die Ergebnisse es wert sind. Um diese Breiten zu erreichen, entfernen wir möglicherweise Leerzeichen, die in vielen Formatierungsstilen ansonsten enthalten wären — insbesondere verwenden wir Einrückungen von zwei Leerzeichen anstelle der standardmäßigen vier Leerzeichen.

“Pause”

Gelegentlich sehen Sie:

  • -

Dies zeigt eine Pause oder eine Art kleinen Reset an. In diesem Buch erscheint es oft vor einer kurzen Zusammenfassung des aktuellen Unterabschnitts, wo ein “Zusammenfassung”-Untertitel übertrieben wäre. Einige Bücher verwenden einen Mechanismus wie diesen, um anzuzeigen, dass eine Idee abgeschlossen ist und wir etwas Neues beginnen, das jedoch noch im gleichen Thema liegt und nicht groß genug ist, um einen Unterabschnitt oder einen neuen Abschnitt zu rechtfertigen. Das Markdown in Leanpub ist ziemlich begrenzt, und die Verwendung von einem oder mehreren Punkten (mein ursprünglicher Versuch) ist nicht möglich. Zwei Striche im Markdown zu setzen, erzeugt einen Punkt und einen Strich. Es könnte eine bessere Möglichkeit geben, dies zu tun, aber ich habe sie nicht gefunden, also habe ich mich darauf festgelegt.

Probieren Sie das Buch aus

Wir bieten eine kostenlose Probe des elektronischen Buches auf AtomicKotlin.com an. Die Probe enthält die ersten beiden Abschnitte in voller Länge sowie mehrere nachfolgende Atome. So können Sie das Buch ausprobieren und entscheiden, ob es für Sie geeignet ist.

Das vollständige Buch ist sowohl als Druckversion als auch als eBook erhältlich. Wenn Ihnen gefällt, was wir in der kostenlosen Probe gemacht haben, unterstützen Sie uns bitte und helfen Sie uns, unsere Arbeit fortzusetzen, indem Sie für das bezahlen, was Sie nutzen. Wir hoffen, das Buch hilft Ihnen, und wir schätzen Ihre Unterstützung.

Im Zeitalter des Internets scheint es unmöglich, irgendein Stück Information zu kontrollieren. Sie werden wahrscheinlich die elektronische Version dieses Buches an zahlreichen Orten finden. Wenn Sie im Moment nicht für das Buch zahlen können und es von einer dieser Seiten herunterladen, „geben Sie es bitte weiter“. Helfen Sie beispielsweise jemand anderem, die Sprache zu lernen, sobald Sie sie beherrschen. Oder helfen Sie jemandem auf irgendeine Weise, wie er es braucht. Vielleicht geht es Ihnen in Zukunft besser, und dann können Sie für das Buch bezahlen.

Übungen und Lösungen

Die meisten Atome in Atomic Kotlin werden von einer Handvoll kleiner Übungen begleitet. Um Ihr Verständnis zu verbessern, empfehlen wir, die Übungen unmittelbar nach dem Lesen des Atoms zu lösen. Die meisten Übungen werden automatisch von der JetBrains IntelliJ IDEA integrierten Entwicklungsumgebung (IDE) überprüft, sodass Sie Ihren Fortschritt sehen und Hinweise erhalten können, wenn Sie feststecken.

Sie finden die folgenden Links unter http://AtomicKotlin.com/exercises/.

Um die Übungen zu lösen, installieren Sie IntelliJ IDEA mit dem EduTools-Plugin, indem Sie diesen Tutorials folgen:

  1. Installieren Sie IntelliJ IDEA und das EduTools-Plugin.
  2. Öffnen Sie den Atomic Kotlin-Kurs und lösen Sie die Übungen.

Im Kurs finden Sie Lösungen für alle Übungen. Wenn Sie bei einer Übung feststecken, schauen Sie nach Hinweisen oder werfen Sie einen Blick auf die Lösung. Wir empfehlen dennoch, sie selbst zu implementieren.

Wenn Sie Probleme bei der Einrichtung und Ausführung des Kurses haben, lesen Sie bitte den Leitfaden zur Fehlerbehebung. Wenn das Ihr Problem nicht löst, wenden Sie sich bitte an das Support-Team, wie im Leitfaden angegeben.

Wenn Sie einen Fehler im Kursinhalt finden (zum Beispiel ein Test für eine Aufgabe liefert das falsche Ergebnis), nutzen Sie bitte unser Issue-Tracker, um das Problem mit diesem vorausgefüllten Formular zu melden. Beachten Sie, dass Sie sich bei YouTrack anmelden müssen. Wir schätzen Ihre Zeit, um den Kurs zu verbessern!

Seminare

Informationen zu Live-Seminaren und anderen Lernwerkzeugen finden Sie auf AtomicKotlin.com.

Konferenzen

Bruce organisiert Open-Spaces-Konferenzen wie das Winter Tech Forum. Treten Sie der Mailingliste auf AtomicKotlin.com bei, um über unsere Aktivitäten und Vorträge informiert zu bleiben.

Unterstützen Sie uns

Dies war ein großes Projekt. Es hat Zeit und Mühe gekostet, dieses Buch und die begleitenden Unterstützungsmaterialien zu erstellen. Wenn Ihnen dieses Buch gefällt und Sie mehr davon sehen möchten, unterstützen Sie uns bitte:

  • Bloggen, tweeten Sie, usw. und erzählen Sie Ihren Freunden davon. Dies ist eine Graswurzel-Marketing-Bemühung, daher hilft alles, was Sie tun.
  • Kaufen Sie eine eBook- oder Druckversion dieses Buches auf AtomicKotlin.com.
  • Besuchen Sie AtomicKotlin.com für andere Unterstützungsprodukte oder Veranstaltungen.

Über uns

Bruce Eckel ist der Autor der mehrfach ausgezeichneten Bücher Thinking in Java und Thinking in C++ sowie einer Reihe weiterer Bücher über Computerprogrammierung, darunter Atomic Scala. Er hat weltweit Hunderte von Präsentationen gehalten und alternative Konferenzen und Veranstaltungen wie das Winter Tech Forum und Entwickler-Retreats organisiert. Bruce hat einen BS in angewandter Physik und einen MS in Computertechnik. Sein Blog befindet sich auf www.BruceEckel.com und sein Beratungs-, Trainings- und Konferenzunternehmen ist Mindview LLC.

Svetlana Isakova begann als Mitglied des Kotlin-Compiler-Teams und ist nun eine Entwickler-Botschafterin für JetBrains. Sie unterrichtet Kotlin und spricht auf Konferenzen weltweit und ist Mitautorin des Buches Kotlin in Action.

Danksagungen

  • Das Kotlin-Sprachdesign-Team und die Mitwirkenden.
  • Die Entwickler von Leanpub, die das Veröffentlichen dieses Buches so viel einfacher gemacht haben.
  • James Ward für die Umwandlung des Gradle-Builds in Kotlin und dafür, dass er im Allgemeinen großartig ist.

Widmungen

Für meinen geliebten Vater, E. Wayne Eckel. 1. April 1924—23. November 2016. Du hast mir zuerst etwas über Maschinen, Werkzeuge und Design beigebracht.

Für meinen Vater, Sergey Lvovich Isakov, der so früh von uns gegangen ist und den wir immer vermissen werden.

Über das Cover

Daniel Will-Harris gestaltete das Cover basierend auf dem Kotlin-Logo.