Wpisy z kategorii JavaScript
Strona 2
-
Tworzymy własny bundler typów
Nieco ponad rok temu opisałem proces tworzenia prymitywnego bundlera. Nie tak dawno zacząłem się zastanawiać, czy dałoby się go w prosty sposób dostosować do bundle’owania plików z definicjami typów TS-a. A że to wciąż jest faktyczny problem, postanowiłem to sprawdzić.
-
Bramkarz na urlopie
Byłem zmuszony podjąć decyzję o zakończeniu projektu Bramkarz, który rozpocząłem jakieś 2 miesiące temu. W tym wpisie pokrótce wyjaśnię dlaczego.
-
Bramkarz
Ostatnio natrafiłem na projekt Hagana, który oferuje ochronę w trakcie wykonywania skryptu Node.js. Polega ona na blokowaniu operacji sieciowych oraz operacji na plikach poza katalogiem projektu. Postanowiłem zatem sprawdzić, jak to dokładnie działa pod spodem.
-
Mutowalna niemutowalność
Istnieje sobie taka biblioteka jak Immer. W największym skrócie można powiedzieć, że jest ona w świecie niemutowalności tym, czym składnia
async
/await
w świecie asynchroniczności – ukrywa przed nami fakt, że kod jest nie-jakiś lub jest a-jakiś. I ostatnio zaczęło mnie zastanawiać, jak działa pod spodem. -
Najprostszy event emitter w przeglądarce
Praca z DOM prędzej czy później wymusi na każdym zapoznanie się z event listenerami. Ten prosty mechanizm pozwala nam reagować w momencie, gdy w aplikacji sieciowej coś się dzieje – użytkownik kliknie przycisk, jakaś animacja się zakończy, wczyta się zawartość ramki… Jednak czasami taki system zdarzeń przydałby się w logice naszej aplikacji. Wówczas w jednym miejscu moglibyśmy reagować na rzeczy, które dzieją się w innych częściach aplikacji. Na szczęście okazuje się, że w przeglądarce jest na to sposób.
-
Jeden znak jest warty więcej niż tysiąc ifów
Czasami niektóre błędy są bardzo trudne do zdebugowania, bo występują stosunkowo rzadko, a i czają się w miejscach, w których byśmy się ich nie spodziewali.
-
Jak strzelić sobie różdżką w stopę?
W życiu niemal każdego programisty przychodzi taki moment, w którym stwierdza, że w jego kodzie przyda się więcej magii. A potem za zabawę z tymi ciemnymi mocami płaci wysoką cenę. Nie inaczej było też i w mojej przypadku. Ale po kolei…
-
Rewolucja klasowa
Swego czasu powszechną wiedzą było to, że klasy stanowiły wyłącznie cukier składniowy dla prototypów. Tak też sprawę ująłem w swojej książce (JavaScript. Programowanie zaawansowane, s. 113). Wtedy (5 lat temu!), faktycznie, takie stwierdzenie dało się obronić. Z jednej strony dlatego, że klasy nie były tak rozbudowane jak obecnie, z drugiej dlatego, że były nowością i paradoksalnie łatwiej było je zrozumieć poprzez porównanie do już istniejącego mechanizmu. Ale od tego czasu sporo się zmieniło.
-
Oswojony Zalgo
Wieki temu Isaac Z. Schlueter napisał artykuł na temat projektowania asynchronicznyczh API. Przestrzegł w nim przed wypuszczaniem na świat Zalgo.
-
Jak działa narzędzie do code coverage?
Dzisiaj kontynuujemy zabawy z AST. Tym razem padło na narzędzie do code coverage!