Von Babel zu GraphQL: HolyJS 2019 Moskau spricht

Wenn Sie ein JS-Entwickler sind, ist der Browser Ihr Zuhause. Können Sie jedoch Schritt für Schritt alle Aktionen des Browsers beschreiben, um Ihre schöne Seite zu rendern? Und Sie haben wahrscheinlich schon von WebAssembly gehört, aber wissen Sie, was sich in dieser Technologie befindet?



Die Berichte helfen dabei, sich mit diesen und vielen anderen JS-Themen zu befassen. HolyJS 2019 Moskau fand im November statt, und jetzt sind seine Videos für alle zugänglich, und wir veröffentlichen traditionell eine Auswahl über Habré - im Allgemeinen gibt es etwas, um ein Wochenende über Selbstisolation zu verbringen.

"JavaScript Core, viele Compiler bringen diese Engine zum Laufen" - Michael Saboff


Michael sprach über das interne Gerät der schnellsten Engine für JS - JavaScriptCore.




"Client-Rendering, Server-Rendering, Pre-Rendering. Das gesamte Spektrum der Bereitstellung von JS-Websites und Anwendungsleistungen “- Guillermo Rauch


Guillermo ist Mitbegründer von ZEIT (sie ist Vercel), dem Unternehmen, das Next.js erstellt, das wiederum eine der Hauptlösungen für SSR on React ist. Der Bericht behandelt das Thema serverseitiges Rendern gut.




"Figma to React: Designlieferung an Code" - Zar Zakharov, Alexander Kamenyar


Was aber, wenn Designer und Entwickler zusammenarbeiten, um die Bereitstellung von Stilen zu automatisieren?
Figma ist ein neues Designwerkzeug. Im Gegensatz zu Sketch arbeitet Figma im Web, der nativen Umgebung von Komponentendesignsystemen. Sie hat eine API. Alexander und Zar zeigten, wie man Freunde dazu bringt, Systeme aus zwei Welten zu entwerfen.




„Renderstrategien reagieren: Optimale Leistung erzielen, Bots glücklich machen“ - Miguel Angel Duran Garcia


Denken Sie, dass das Rendern in React auf die Client- und Serverseite beschränkt ist? Denken Sie noch einmal darüber nach - Sie können verschiedene Rendering-Strategien verwenden, von denen jede ihre eigenen Vor- und Nachteile hat. Details im Bericht.




"Ich werde alle Daten von Ihnen nehmen und Sie werden nicht einmal davon wissen. Ich bin eine Browser-Erweiterung “- Nikita Mostovoy


Nikita zeigte, welche Nuancen Sie bei der Verwendung dieser Erweiterungen erwarten können, und demonstrierte wirklich elegante Angriffsvektoren.




"Transpile alles auf alles!" - Anna Herlihy


Das Problem beim Erstellen eines ORM ist, dass es für jede Sprache und Technologie durchgeführt werden muss. Anna sprach darüber, wie man eine Schnittstelle für die meisten Sprachen und Plattformen geeignet macht.




"WebAssembly ohne Schnitte" - Andrey Roenko


Wenn Sie wissen möchten, was WebAssembly unter der Haube ist, lesen Sie den Bericht von Andrey.




"@ Babel / How-to" - Nicolò Ribaudo


Nicolo ist einer der Hauptentwickler bei Babel. In seinem Bericht erfahren Sie, wie Sie Ihr eigenes Babel-Plugin erstellen, um neue Funktionen der Sprache zu unterstützen oder Ihre Probleme zu lösen.




"In den Grundsätzen für ein zugängliches Web" - Romulo Cintra


Das Problem der Internationalisierung ist für viele Entwickler relevant und hat daher viele Lösungen. Sie haben die Möglichkeit zu erfahren, welche Optionen jetzt verfügbar sind und in welcher Form sie dieses Problem mithilfe der neuen API in JavaScript selbst lösen werden.

Vor einem Monat haben wir bereits die Übersetzung des Berichts von Romulo über Habré veröffentlicht .




"GraphQL-Fragmente auf dem Client: Verlauf des Auftretens, Verwendungsfehler" - Pavel Chertorogov


Immer mehr Menschen beginnen mit GraphQL. Pavel sprach über die Best Practices, die sich in der Branche angesammelt haben, und warum und wie GraphQL-Fragmente verwendet werden.




"Vertragsprogrammierung als Mittel, nicht als Zweck" - Artyom Harutyunyan


Viele Leute möchten, dass TypeScript zusätzlich zur statischen Typisierung eine Laufzeit-Typprüfung bietet. Das TypeScript-Team wird diese
Funktionalität jedoch noch nicht hinzufügen . Was ist zu tun? Artyom schlug Optionen für Laufzeitarten vor und äußerte deren Mängel.




"Vom Code zu Pixeln im Handumdrehen" - Prashant Palikhe


Können Sie die Schritte des Browsers beschreiben, um den Inhalt der Seite anzuzeigen? Wenn nicht, hat Prashant deutlich gezeigt, was passiert und wie es optimiert werden kann.




"JavaScript im Dienste der theoretischen Informatik" - Vitaly Bragilevsky


Ein grundlegender Bericht einer Person, die sich im akademischen Umfeld dreht und die neuesten Trends in der Theorie der Programmiersprachen und der theoretischen Informatik kennt. Vitaly sprach darüber, wie Berechnungen in jeder Sprache erstellt werden, und erzählte von der Turing-Maschine, dem Lambda-Kalkül usw.




"Wie bezahlen wir für den Übergang von div zu WebGL und was bekommen wir (Gewinn!) An den Beispielen von PixiJS" - Ivan Popelyshev


Nach diesem Bericht können Sie die Probleme beim Wechsel von einem multifunktionalen DOM zu WebGL verstehen, um die richtigen Seiten mit Dokumentation oder Code zu öffnen, wenn Sie seltsame Artefakte sehen, die nicht auftreten sollten.
Der Bericht zieht Parallelen zwischen Lösungen in DOM / CSS / SVG, Canvas 2d und WebGL. Der Fokus liegt natürlich auf Letzterem.




„Karriereeffizienz und Karriereweg in der IT“ - Dmitry Voloshin


Einen Stein legen oder einen Stern verbrennen. Was ist Ihr Weg zur IT? Dmitry Voloshin zeigte die effektivsten Entwicklungsmethoden im Beruf.




"(Nicht | gut) Belohnung entweder Monade in der Praxis und in der Theorie" - Dmitry Makhnev, Artyom Kobzar


Manchmal können Konzepte aus der funktionalen Programmierung heute direkt aus Ihrem bevorzugten TypeScriptJjavaScript angewendet werden. Ein Bericht von Dmitry und Artyom über den bequemen Umgang mit Fehlern und Ausnahmen.




"Von der Spezifikation bis zur Implementierung" - Yulia Startsev


Berichte über die SpiderMonkey-Engine sind sehr selten zu hören, und Sie haben die großartige Gelegenheit, der Person zuzuhören, die im Team dieser Engine arbeitet und Co-Vorsitzender von TC39 ist. In dem Bericht sprach Julia über den Weg des Nullish Coalescing zu SpiderMonkey.




"CSS-Definitionssyntax" - Roman Dvornov


Besonders radikale JS-Entwickler behaupten manchmal, dass "CSS nicht mehr benötigt wird, alles wird in JS sein." CSS war, ist und ist jedoch wahrscheinlich. Der Roman sprach über die grundlegenden Grundlagen, die jeder braucht.




"Entwicklung eines Compilers für TypeScript auf TypeScript basierend auf LLVM" - Dmitry Patsura


Compiler sind für viele JavaScript-Entwickler ein äußerst interessantes und mysteriöses Thema. Dmitry sprach über seine Erfahrungen beim Schreiben eines StaticScript-Compilers für TypeScript in einer LLVM-Zwischenansicht.



, . HolyJS 2020 Piter — , . , — . .

All Articles