Heim >Web-Frontend >js-Tutorial >Jahresabschluss: JavaScript im Jahr 2016
2016Für jeden Webentwickler ist JavaScript ein sehr großer Teil des Arbeitslebens.
JavaScript erfreut sich immer größerer Beliebtheit. Nicht jeder mag die Sprache, aber die spöttischen Meinungen von vor einem Jahrzehnt hört man selten. Persönlich habe ich JavaScript schon immer geliebt, selbst in diesen frühen, frustrierenden Jahren. Wer sich dem Thema aus C++-, Java- oder PHP-Richtung nähert, wird zunächst verwirrt sein: JavaScript kommt einem bekannt vor, ist es aber nicht. Lassen Sie Ihre Annahmen hinter sich und Sie werden seine schlichte Eleganz, Praktikabilität und Flexibilität lieben. (Zum Beispiel: Die Datenverarbeitung ist immer noch ein Albtraum!)
JavaScript feierte im Mai seinen 21. Geburtstag, also werfen wir einen Blick zurück auf das erste Jahr seiner Reife ...
ECMAScript Development
viaES6/2015 ist das wichtigste Update seit der Geburt der Sprache. Es hat sieben Jahre gedauert, die Spezifikation fertigzustellen, aber Browser und Laufzeitumgebungen beginnen endlich, die Pfeilfunktionen let und const zu unterstützen, was viel mehr Spaß macht. Die ES6-Kompatibilitätstabelle wird leuchtend grün.
Wenn Sie ältere Browser unterstützen müssen, kann es etwas früh sein, vollständig auf ES6 umzusteigen. Für ältere Browser wurde das Projekt vor über einem Jahr veröffentlicht. Sie können einen ES6-zu-ES5-Compiler (z. B. Babel) verwenden, die Entwicklung ist jedoch sehr komplex und erfordert die Einführung zusätzlicher Build-Schritte.
ES7/2016 ist eher eine Revolution. Eine aufregende neue Funktion ist Async, die es ermöglicht, asynchronen Code synchron zu schreiben, ohne die syntaktische Komplexität von Callbacks oder Promises (die mich immer noch verwirren).
Progressive Web Apps
via Meine Lieblings-JavaScript-basierte Technologie des Jahres 2016 geht an Progressive Web Apps. PWAs wurden auf Googles Chrome Developer Summit 2015 angekündigt, aber im Juli kamen endlich stabile Technologien und Tools in Chrome 52 an. PWA ermöglicht Offline-First-Funktionalität und ersetzt den unzuverlässigen AppCache-Ansatz. Webanwendungen können endlich mit nativen Anwendungen konkurrieren und bieten die folgenden Vorteile:
1. Schnellstart und benutzerdefinierter Begrüßungsbildschirm
Schnelle Ausführung
4. Offline-Funktionalität, keine Internetverbindung erforderlich
5. Vollbild- oder thematische Benutzeroberfläche
7 Ausführung
8. Lokaler oder cloudbasierter Speicher
9. Weniger Geräteplatz und Verarbeitungsressourcen
10. Höhere Sicherheit (HTTPS ist Voraussetzung)
11. Leicht von jeder Suchmaschine aus zu finden
12. Bitte versuchen Sie es vor der Installation
13. Einfachere Bereitstellung: Es ist nur eine Web-App
14. Kein AppStore-Unsinn: Ihr Die App kann jede Aktzeichnung enthalten und Sie werden absolut sterben, wenn Ihnen niemand 30 % Ihres Gewinns wegnehmen kann!
Das Beste daran: Jede Website oder App kann innerhalb weniger Stunden in eine PWA konvertiert werden. Schritte:
1. Aktivieren Sie HTTPS auf dem Server.
2. Erstellen Sie ein Anwendungsmanifest – eine JSON-Datei im Stammverzeichnis der Anwendung, die den Namen, die Farben, Symbole und Anzeigeoptionen definiert.
3. Erstellen Sie einen Service Worker – Die JavaScript-Datei im Stammverzeichnis wird zum Abfangen von Netzwerkanrufen verwendet und kann bei Bedarf zwischengespeicherte oder Echtzeitdaten zurückgeben.
Es gibt nur wenige frühe Beispiele, aber PWAs bieten eine großartige Möglichkeit, Ihre Webanwendung zu „mobilisieren“. Es gibt zwar keine Garantie dafür, dass Apple diese Technologie implementiert, aber es spielt keine Rolle, Ihre App funktioniert weiterhin in Safari, sie profitiert jedoch nicht von der Offline-Ausführung. Ich habe das Gefühl, dass Apple die Unterstützung von PWA fördern wird, sobald das Web-Erlebnis auf Android deutlich verbessert ist.
Framework Fixedvia Es ist schwer, ein faires Urteil zu fällen, aber React scheint dieses Jahr die meiste Aufmerksamkeit zu bekommen. Möglicherweise stimmen Sie nicht zu, denn es hängt davon ab, was Sie verwenden, wo Sie waren und was Sie gesagt haben! Vue.js ist populär geworden und Version 2.0 wurde im September veröffentlicht.
AngularJS hat möglicherweise etwas von der Dynamik verloren, die es 2015 gewonnen hat, aber das könnte sich mit der Veröffentlichung von Angular 2 im September ändern. Die neue Version ist eine komplette Neufassung; sie ist nicht abwärtskompatibel mit v1.0.
Während neue Frameworks und Bibliotheken aufregend sind, ist jQuery von vor zehn Jahren immer noch stark. Version 3.0 wurde am 9. Juni veröffentlicht, v3.1 folgte am 7. Juli. Die Bibliothek läuft jetzt im strikten Modus, unterstützt Promises und hat verschiedene Korrekturen implementiert. (Eine vollständige Liste der Änderungen finden Sie im Upgrade-Leitfaden.)
jQuery wird auf 96,4 % der Websites verwendet, die JavaScript verwenden. Im Vergleich dazu ist Angular mit 0,5 % das am häufigsten verwendete moderne Framework. jQuery 1.x ist mit einem Nutzungsanteil von 93,5 % die beliebteste Version. Auf Version 2.x entfallen 6,0 % und auf Version 3.x 0,5 %.
Ich habe Entwickler immer dafür kritisiert, dass sie jQuery direkt verwenden. Es wird überstrapaziert, wenn es eine geeignetere Alternative gibt oder wenn nur ein kurzer JavaScript-Ausschnitt die Anforderung erfüllen kann. Es bietet jedoch eine flachere Lernkurve und ist flexibler als die meisten Frameworks. Es wird viele Jahre dauern, bis andere Frameworks oder Bibliotheken es ersetzen.
API-MissbrauchZum Beispiel die Batteriestatus-API. Als ich 2013 JavaScript schrieb, erschien es mir nützlich: Wie um alles in der Welt könnten Sie Netzwerkanfragen und -verarbeitung besser minimieren, wenn Ihre App erkennt, dass das Telefon des Benutzers kurz vor dem Herunterfahren steht?
Leider schätzt Mozilla, dass etwa 6 % der Websites diese API verwenden, aber die meisten davon sind Domains, die von Werbetreibenden verwendet werden, um den Batteriestatus zu erkennen und zu verfolgen, welche Websites Benutzer besuchen. Es ist auch möglich, dass einige Dienstanbieter wissen, dass das Telefon eines Benutzers kurz vor dem Herunterfahren steht, und dies nutzen, um den Preis für bestimmte Dienste zu erhöhen
Obwohl dies kein JavaScript- oder API-Problem ist Aus Datenschutzgründen unternimmt Mozilla den beispiellosen Schritt, die Batteriestatus-API aus Firefox 53 zu entfernen. Es ist unwahrscheinlich, dass dies bei iOS-Geräten auftritt. Andere APIs mit ähnlichen Gründen umfassen Sensoren und Bluetooth. Das ist ein bisschen schade: Diese APIs haben alle echte Vorteile und ich hoffe, dass Datenschutzprobleme in zukünftigen Versionen behoben werden können.
Neue Version von Node
Node.JS bringt uns jedes Jahr zwei Veröffentlichungspläne, Version 6.0 im April und Version 7.0 im Oktober.
Die Plattform ist derzeit auf dem Vormarsch, obwohl W3Techs berichtet, dass die Node.js-Servernutzung nur 0,2 % beträgt, verglichen mit 82,3 % für PHP. Diese Zahlen können etwas irreführend sein, da Node.js nicht unbedingt erkannt wird, selbst wenn es installiert ist.
Denn PHP gibt es schon lange und es ist immer noch die zuverlässigste Wahl für den Server. Node.js schreibt jedoch seine eigene Geschichte und wird von Entwicklern aller Sprachrichtungen häufig verwendet.
Garn
Ich mag npm wirklich und denke, dass es einer der Hauptgründe ist, warum Node.js-Tools so beliebt sind. Ich hatte noch nie allzu viele Probleme mit npm, aber ich arbeite nicht an einem so großen Projekt wie Facebook.
Facebook-Ingenieure haben Yarn im Oktober veröffentlicht. Es handelt sich um einen neuen Node.js-Paketmanager, der schneller und stabiler als npm ist. Es basiert auf der NPM-Registrierung und bleibt daher vollständig mit NPM kompatibel.
Garn vs. NPM von Tim Severien: Alles, was Sie wissen müssen. Ich stimme seiner Schlussfolgerung zu:
Obwohl Yarn kein Klon ist, verbessert es mehrere Mängel von npm. Wäre es nicht cool, wenn npm von Yarn lernen und Facebook, Google und andere Yarn-Mitwirkende bitten würde, zusammenzuarbeiten, um npm zu verbessern?
Müde und müde
Ein Artikel aus dem Jahr 2016 mit dem Titel „Ich kann das nicht mehr ertragen“ wurde in Jose Aguinagas Learning JavaScript Feel 2016 aufgenommen.
Dies mag eine humorvolle Art sein, den aktuellen Stand von JavaScript darzustellen, aber der Punkt ist, dass es immer schwieriger wird, mit den neuesten Trends, Frameworks und Empfehlungen Schritt zu halten. Wenn Entwickler mit einer großen Anzahl technischer Lösungsbewertungen konfrontiert werden, geraten sie untereinander in Streit.
Mein Rat: Versuchen Sie nicht, mitzuhalten. Denn das geht einfach nicht. Jedes System, auf das Sie sich heute konzentrieren, wird morgen durch etwas Besseres ersetzt. Wählen Sie eine gute Lösung für Ihr Projekt und bleiben Sie dabei, es sei denn, die Arbeit wird dadurch schrecklich.
Eines ist sicher: JavaScript selbst. Lernen Sie zunächst die Sprache und erweitern Sie Ihr Wissen weiter. Ihre Erfahrung wird Ihnen helfen zu verstehen, wie die einzelnen Frameworks funktionieren, sodass Sie eine fundierte Entscheidung treffen können, selbst wenn diese Entscheidung möglicherweise darin besteht, alle Frameworks ganz aufzugeben.
Ich wünsche allen im Jahr 2017 alles Gute im Beruf und im Leben.