JavaScript objektorientiert

Ähnliche Dokumente
Filme der Kindheit Kindheit im Film

Die Unternehmergesellschaft

Medizinische Statistik mit R und Excel

Software-Entwicklung mit Delphi

Erste Schritte mit Scratch für Dummies Junior

Office 2016 für Mac Das Profibuch

Adobe Photoshop Lightroom 5 für Einsteiger

Die Erwartungen der Eltern an die weiterführende Schule beim Schulübertritt ihres Kindes von der Grundschule in die Sekundarstufe I

Grundkurs Programmieren in Java

Office 2010 Programmierung mit VSTO und.net 4.0

Zeitung als Zeichen. Identität und Mediennutzung nationaler Minderheiten in Deutschland. Bearbeitet von Swea Starke

Langlebige Software-Architekturen

Programmieren mit Swing

Vorkurs Mathematik. Ein Übungsbuch für Fachhochschulen. Bearbeitet von Michael Knorrenschild

So führe ich mein Team

mitp/die kleinen Schwarzen Scrivener Texte professionell konzipieren, schreiben und veröffentlichen Bearbeitet von Stephan Lamprecht

Die finanzpolitische Bedeutung des Sports in Deutschland

Strategie: Stimmungsmache

mitp/die kleinen Schwarzen XING Erfolgreich netzwerken im Beruf Bearbeitet von Frank Bärmann

Nichtstun, Flirten, Küssen

Grundlagen und Grundfragen der Inklusion

mitp Business Mobile Usability Für iphone, ipad, Android, Kindle Bearbeitet von Jakob Nielsen, Raluca Budiu

Informationserschließung und Automatisches Indexieren

Mathematische Optimierung mit Computeralgebrasystemen

Mathe: sehr gut, 6. Klasse - Buch mit Download für phase-6

SPS-Grundlagen. Aufbau, Programmierung (IEC 61131, S7), Simulation, Internet, Sicherheit. Bearbeitet von Jens von Aspern

Vorkurs Mathematik. Ein Übungsbuch für Fachhochschulen. Bearbeitet von Michael Knorrenschild

Raspberry Pi. Einstieg - Optimierung - Projekte. Bearbeitet von Maik Schmidt

STEP - Das Buch für Lehrer/innen

Haufe TaschenGuide 162. Nein sagen. Die besten Strategien. Bearbeitet von Monika Radecki

S2-Leitlinien für Persönlichkeitsstörungen

Wie wirkt mein Bild?

Netzwerkprogrammierung unter Linux und UNIX

Abenteuer Softwarequalität

Religionspädagogik. Ein Arbeitsbuch. Bearbeitet von Prof. Dr. Frank Thomas Brinkmann

Kompetenzorientierte Sexualerziehung

JavaScript kinderleicht!

Zwischen fristgerechter und verspäteter Einschulung

Anforderungsprofile und akademischer Arbeitsmarkt

Die Integration ostdeutscher Flüchtlinge in der Bundesrepublik Deutschland durch Beruf und Qualifikation

Basistraining Vektorgrafik

Mehrsprachigkeit türkischer Schüler in Frankreich und Deutschland

Funktionentheorie erkunden mit Maple

Lehren und Lernen mit Methode

Geschichten vom Herrn Keuner

Grundwissen Mathematik

Wenn Alkohol zum Problem wird

Allgemeine Psychologie - Denken und Sprache

Grundzüge der Betriebswirtschaftslehre

Empirische Untersuchung zum Direktstudium Psychotherapie

»Wir sind keine Araber!«

Theodor Storm - Constanze Esmarch

Fitness-Training fürs Gesicht

Schulungspaket ISO 9001

Achtsamkeit in der Verhaltenstherapie

Leistungsbeurteilung nach dem TVöD

Die Trainingsraum-Methode

Figur und Handlung im Märchen

Adobe Photoshop Elements 9

Die Universität Berlin als Modell und seine Einflüsse in China von 1902 bis 1952

Schreiben in Unterrichtswerken

Wissenschaftliche Arbeiten typografisch gestalten

Mindmapping mit Mindjet MindManager 2012

Das Gesetzesverständnis Jesu im Lukasevangelium

Kettensägen im Feuerwehreinsatz

Lesestrategien für die Hypothesenbildung und die Erschließung von Handlungen

Jetzt lerne ich Buchstaben und schreiben (ab 5)

Analytische Individualpsychologie in der therapeutischen Praxis

Die Qualität des Partizipativen Journalismus im Web

Selbst- und Partnerevaluation im schülerorientierten Fremdsprachenunterricht

Medizinische Statistik mit R und Excel

Konzentration aufs Wesentliche!

Controlling Basiswissen

Wie mehrsprachige Kinder in der Deutschschweiz mit Schweizerdeutsch und Hochdeutsch umgehen

Zwänge verstehen und hinter sich lassen

Speicherprogrammierbare Steuerungen

Sportmanagement 01. Management im Sport. Betriebswirtschaftliche Grundlagen und Anwendungen der modernen Sportökonomie

Wie Kinder ein Bilderbuch verstehen

Programmieren lernen mit Perl

Jetzt lerne ich erste Zahlen (ab 4)

Ökonomische Theorie des Gesellschaftsvertrags

Lese-Rechtschreib-Störung

Agile Teams lösungsfokussiert coachen

Praxis der Kognitiven Verhaltenstherapie

Inklusiver Mathematikunterricht in der Primarstufe

Webseiten entwickeln mit ASP.NET

Lesedetektive Mal mit! - Prinzessin Ella sucht das Abenteuer, 1. Klasse

Bundling Eletromodule Schulung

Das türkische Polizeirecht - Führt der Weg nach Europa?

Lesedetektive Übungsbücher - Finn und Lili auf dem Bauernhof, 1. Klasse

Der Impfkurs. Eine Anleitung zum richtigen Impfen. Bearbeitet von Prof. Dr. Wolfgang Jilg

Technical English - Grammar

Meine Patientenverfügung und Vorsorgevollmacht

Bildungsberatung im Dialog

Wie fange ich meine Rede an?

Berechnungen in Excel

30 Minuten Stärkenorientiertes Führen

Schulungsbausteine Umweltschutz

DesignAgility - Toolbox Media Prototyping

Einführung in die Kunstpädagogik

Transkript:

JavaScript objektorientiert Verständlicher, flexibler, effizienter programmieren Bearbeitet von Nicholas Zakas 1. Auflage 2014. Taschenbuch. XIV, 122 S. Paperback ISBN 978 3 86490 202 4 Format (B x L): 15,6 x 22,4 cm Weitere Fachgebiete > EDV, Informatik > Programmiersprachen: Methoden > Objektorientierte Programmierung schnell und portofrei erhältlich bei Die Online-Fachbuchhandlung beck-shop.de ist spezialisiert auf Fachbücher, insbesondere Recht, Steuern und Wirtschaft. Im Sortiment finden Sie alle Medien (Bücher, Zeitschriften, CDs, ebooks, etc.) aller Verlage. Ergänzt wird das Programm durch Services wie Neuerscheinungsdienst oder Zusammenstellungen von Büchern zu Sonderpreisen. Der Shop führt mehr als 8 Millionen Produkte.

1 Einleitung Die meisten Entwickler verbinden objektorientierte Programmierung mit den üblichen an Hochschulen gelehrten Sprachen wie C++ und Java, die auf Klassen beruhen. Bevor Sie in diesen Sprachen irgendetwas tun können, müssen Sie zunächst eine Klasse erstellen, selbst wenn Sie nur ein einfaches Befehlszeilenprogramm schreiben wollen. Auch die üblichen Entwurfsmuster in der Branche stützen das Prinzip der Klassen. In JavaScript aber gibt es keine Klassen, und das ist einer der Gründe für die Verwirrung, die sich bei Personen breitmacht, die diese Sprache nach C++ oder Java zu lernen versuchen. Objektorientierte Sprachen zeichnen sich durch folgende Charakteristika aus: Kapselung: Daten können zusammen mit der Funktionalität gruppiert werden, die mit diesen Daten arbeitet. Das ist, einfach ausgedrückt, die Definition eines Objekts. Aggregation: Ein Objekt kann auf ein anderes verweisen. Vererbung: Ein neu erstelltes Objekt erhält die gleichen Merkmale wie ein anderes Objekt, ohne dass dessen Funktionalität ausdrücklich dupliziert werden muss. Polymorphismus: Eine Schnittstelle kann von mehreren Objekten implementiert werden. Auch JavaScript weist alle diese Merkmale auf, doch da die Sprache keine Klassen kennt, sind sie anders umgesetzt, als Sie es vielleicht erwarten. Auf den ersten Blick kann ein JavaScript-Programm sogar wie ein prozedurales Programm aussehen, wie Sie es in C schreiben würden. Wenn Sie eine Funktion schreiben und ihr einige Variablen übergeben, dann haben Sie ein funktionierendes Skript, in dem es scheinbar keine Objekte gibt. Ein genauerer Blick auf die Sprache enthüllt jedoch das Vorhandensein von Objekten, da die Punktschreibweise verwendet wird. 1

In vielen objektorientierten Sprachen wird die Punktschreibweise eingesetzt, um auf die Eigenschaften und Methoden von Objekten zuzugreifen, und JavaScript geht syntaktisch ebenso vor. Allerdings schreiben Sie in JavaScript keine Klassendefinitionen, importieren keine Pakete und schließen keine Headerdateien ein. Sie fangen einfach an, mit den gewünschten Datentypen Code zu schreiben. Später können Sie diese Typen beliebig gruppieren. Sicherlich ist es möglich, JavaScript auf prozedurale Weise zu schreiben, aber die wirklichen Vorteile zeigen sich erst, wenn Sie die objektorientierten Aspekte ausnutzen. Darum geht es in diesem Buch. Damit wir uns nicht falsch verstehen: Viele der Prinzipien, die Sie in den herkömmlichen objektorientierten Programmiersprachen kennengelernt haben, müssen nicht unbedingt auch für JavaScript gelten. Das irritiert Anfänger meistens, doch bei der Lektüre dieses Buchs werden Sie schnell feststellen, dass Sie dank der schwach typisierten Natur von JavaScript weniger Code schreiben müssen als in anderen Sprachen, um dieselben Aufgaben zu erledigen. Sie können einfach mit dem Schreiben beginnen, ohne erst die erforderlichen Klassen zu planen. Brauchen Sie ein Objekt mit besonderen Feldern? Erstellen Sie es ad hoc, wann immer Sie wollen! Haben Sie vergessen, einem Objekt eine Methode hinzuzufügen? Kein Problem ergänzen Sie sie später. Auf den folgenden Seiten lernen Sie die besondere Art und Weise der objektorientierten Programmierung in JavaScript kennen. Werfen Sie Ihre Vorstellungen über Klassen und klassenbasierte Vererbung über Bord und lassen Sie sich in die prototypenbasierte Vererbung und die Konstruktorfunktionen einführen, die ein ähnliches Verhalten zeigen. Sie erfahren hier, wie Sie Objekte erstellen, wie Sie eigene Typen definieren, wie Sie die Vererbung einsetzen und wie Sie Objekte noch auf viele andere Weisen bearbeiten, um den größten Nutzen aus ihnen zu ziehen. Kurz gesagt, Sie lernen alles, was Sie für die professionelle JavaScript- Entwicklung wissen müssen. Viel Vergnügen! 1.1 Zielgruppe Dieses Buch dient als Leitfaden für Personen, die sich bereits in objektorientierter Programmierung auskennen und genau wissen wollen, wie sie in JavaScript funktioniert. Wenn Sie mit Java, C# oder der 2 Einleitung

objektorientierten Programmierung in anderen Sprachen vertraut sind, ist das schon ein guter Anhaltspunkt dafür, dass dieses Buch das richtige für Sie ist. Insbesondere richtet sich dieses Buch an die drei folgenden Gruppen von Lesern: Entwickler, die mit den Prinzipien der objektorientierten Programmierung vertraut sind und sie auf JavaScript anwenden möchten. Entwickler von Webanwendungen und Node.js-Entwickler, die versuchen, ihren Code wirkungsvoller zu strukturieren. JavaScript-Neulinge, die ein tieferes Verständnis der Sprache gewinnen möchten. Dieses Buch ist nicht für Anfänger gedacht, die noch nie in JavaScript programmiert haben. Um dem Text folgen zu können, brauchen Sie ein gutes Verständnis dafür, wie JavaScript-Code geschrieben und ausgeführt wird. 1.2 Überblick Kapitel 2: Primitive Typen und Referenztypen gibt eine Einführung in die beiden verschiedenen Wertetypen in JavaScript, nämlich primitive Typen und Referenztypen. Sie erfahren hier, worin sie sich unterscheiden und warum die Kenntnis dieser Unterschiede wichtig ist, um JavaScript insgesamt zu verstehen. Kapitel 3: Funktionen erklärt alle Einzelheiten von Funktionen in JavaScript. Vor allem sogenannte First-Class-Funktionen (Funktionen erster Klasse) machen JavaScript zu einer so interessanten Sprache. Kapitel 4: Objekte stellt ausführlich den Aufbau von Objekten in JavaScript vor. JavaScript-Objekte verhalten sich anders als Objekte in anderen Sprachen, weshalb ein genaues Verständnis ihrer Funktionsweise unverzichtbar ist, um die Sprache zu beherrschen. Kapitel 5: Konstruktoren und Prototypen erweitert die vorangegangene Erörterung von Funktionen durch eine genauere Darstellung von Konstruktoren. Alle Konstruktoren sind zwar Funktionen, aber sie werden auch ein kleines bisschen anders eingesetzt. In diesem Kapitel lernen Sie die Unterschiede kennen und erfahren, wie Sie Ihre eigenen Typen erstellen können. Überblick 3

Kapitel 6: Vererbung erklärt, wie die Vererbung in JavaScript bewerkstelligt wird. Auch wenn es in JavaScript keine Klassen gibt, heißt das nicht, dass eine Vererbung unmöglich wäre. In diesem Kapitel lernen Sie die prototypische Vererbung und ihre Unterschiede zur klassenbasierten Vererbung kennen. Kapitel 7: Objektmuster führt gebräuchliche Objektmuster vor. In JavaScript gibt es viele verschiedene Möglichkeiten, um Objekte anzulegen und zusammenzustellen. In diesem Kapitel lernen Sie die am häufigsten dafür verwendeten Muster kennen. 1.3 Hilfe und Unterstützung Wenn Sie Fragen haben, Kommentare schreiben oder in irgendeiner anderen Form Rückmeldung zu diesem Buch geben möchten, suchen Sie bitte die Mailingliste unter http://groups.google.com/group/zakasbooks (in englischer Sprache) auf. 4 Einleitung