Autor: peter@peterkroener.de
-
Fragen zu HTML5 und Co beantwortet 25 – lange Klassen, Input-Labels, rekursive TypeScript-Typen, HTML-Attribute
n nDieser Artikel ist Teil einer Serie:n n Fragen zu HTML5 & Co 1 n Fragen zu HTML5 & Co 2 n Fragen zu HTML5 & Co 3 n Fragen zu HTML5 & Co 4 n Fragen zu HTML5 & Co 5 n Fragen zu HTML5 & Co 6 n Fragen zu HTML5 & Co…
-
TypeScript: Premature type annotations are the root of all evil!
n nTypannotationen verwende ich in TypeScript wie Gewürze beim Kochen: gezielt und wohldosiert. Ich schreibe sie üblicherweise (nicht immer) in meine Funktionssignaturen und an Klassenfelder, meist aber nicht an Variablen (außer, wenn ich es eben doch mache). Das bedeutet, dass in meinem TypeScript-Code vergleichsweise wenig TypeScript vorkommt. Wenn ich Sie schreibe, dann stelle ich Typannotationen…
-
String.prototype.replace() ist eine Falle
nEiner meiner größten Kritikpunkte an JavaScript ist das Vorhandensein fieser Fallen. TypeScript ist schön und gut (und wird von mir fleißig verwendet), aber zur Not komme ich auch mit einem dynamischen Typsystem klar. Dass Dinge wie if und try keine Expressions sind, ist primitiv, aber die meisten Programmiersprachen haben auch ihre Rudimente aus der Steinzeit.…
-
Finger weg vom function-Keyword!
n nDas function-Keyword ist in modernem JavaScript ein Code Smell und man sollte es nicht mehr verwenden. Es einzusetzen ist nicht direkt ein schlimmer Fehler, aber seine Nutzung steht meines Erachtens unter dringendem Rechtfertigungsdruck. function-Functions haben fast keine wünschenswerten Fähigkeiten, dafür allerhand Legacy-Anhängsel, mit denen man sich eigentlich nicht mehr herumschlagen möchte. Stattdessen sollte man…
-
Service Worker und Notification-Icons im Offline-Modus
n nViele Features in Service Workers wurden nicht extra neu spezifiziert, sondern sind Adaptionen existierender Standards. So ist z.B. Message Passing ein in jedem Browser schon vorhandenes Feature, das einfach auch in Service Workers zur Verfügung gestellt wird. Warum würde man das Rad auch neu erfinden, wenn man doch einfach vorhandene Funktionalität übernehmen kann! Allerhöchstens…
-
Vortragsrundreise zu Progressive Web Apps mit Stationen in Essen, Halle/Saale, Wiesbaden, Hamburg und Düsseldorf
nIch werde in den nächsten Wochen eine kleine Vortragstour durch diverse JS-User-Groups u.Ä. machen und ihr solltet alle vorbeikommen! Das Thema meines Talks sind natürlich Progressive Web Apps und die damit verbundenen Buzzwords. Anhand einer kleinen Beispiel-App werde ich zeigen, wie Service Worker, Manifest und Konsorten eingesetzt werden, ohne auf ein bestimmtes Framework beschränkt zu…
-
Fragen zu HTML5 und Co beantwortet 24 – HTML-Kommentare, Indexed DB, JavaScript-Regex, HTML5-Buch
n nDieser Artikel ist Teil einer Serie:n n Fragen zu HTML5 & Co 1 n Fragen zu HTML5 & Co 2 n Fragen zu HTML5 & Co 3 n Fragen zu HTML5 & Co 4 n Fragen zu HTML5 & Co 5 n Fragen zu HTML5 & Co 6 n Fragen zu HTML5 & Co…
-
PostMessage zwischen Service Worker und Client(s)
n nEin Service Worker ist nur ein Worker und entsprechend sollte der Nachrichtenaustausch via postMessage() und MessageEvent eine Kleinigkeit sein – möchte man meinen! Tatsächlich ist die ganze Angelegenheit beim Service Worker etwas weniger trivial als bei anderen Workern, was an ein paar besonderen Umständen liegt:n n n Eine Seite/App wird immer von einem Service Worker…
-
Conditional CSS mit Pseudo-Booleans
nWie dem einen oder anderen Twitter-Verfolger aufgefallen sein mag, ringe ich zur Zeit mit einem Projekt rund um per JavaScript generiertes CSS. Besagter CSS-Generator soll im Prinzip aus einem gegebenen Input immer den gleichen Output liefern, aber es soll auch ein paar an- und abschaltbare Features geben. Da stellt sich die Frage: wie sieht die…
-
Maps vs. Plain Objects in JavaScript
nAls Webtechnologie-Erklärbär genieße ich den zweifelhaften Luxus, vergleichsweise selten selbst Code schreiben zu dürfen (und stattdessen sehr viel über Code zu erzählen). Nur im Sommer oder zum Jahresende, wenn niemand eine Schulung haben will, komme ich mal dazu, etwas nicht völlig triviales zu programmieren. Dabei zeigt sich immer, was ich selbst bei meinen eigenen Schulungen…