Dziś wpis, który nie tak dawno temu zapowiadałem już na Facebooku – na temat ECMAScript 6 prowadziłem ostatnio Lightning Talka (krótka prezentacja, maks 15 minut) u mnie w firmie i pomyślałem, że szkoda by było zmarnować zebrany materiał. Dlatego też dziś wersja blogowa tamtej prezentacji Na początek, dla porządku warto wspomnieć (w razie jakby ktoś nie wiedział), że ECMAScript to standard obiektowego języka p...
Strona głównaUżytkownik
burczu | użytkownik
W pierwszej części pokazującej dziedziczenie w JavaScript, pokazałem tzw. podejście „klasyczne”, mające niby być najbardziej zbliżonym do tego, spotykanego w językach programowania posiadających silne typowanie. Tamten wpis wywołał pewne kontrowersje… Być może ja nie do końca dobrze wszystko wyjaśniłem, a może to ja się mylę Nie jestem alfą i omegą… Jednak zostawmy już w spokoju podejście „classic” ponieważ jest ono mało sz...
Ostatnio w projekcie natrafiłem na problem, który najlepiej było rozwiązać stosując dziedziczenie. Niby prosta sprawa, „podstawowe podstawy” każdego obiektowego języka programowania. Jak jednak się pewnie domyślacie, dziedziczenie w JavaScript „nieco” różni się od tego klasycznego podejścia, znanego z innych języków programowania, a ja zdałem sobie sprawę, że choć na tym blogu poruszam różnorakie (i na różnym poziome skompli...
Walidacja formularzy w AngularJS jest moim zdaniem jednym z największych minusów tego frameworka. Ja jako programista z doświadczeniem w C# i ASP.NET MVC byłem przyzwyczajony do czegoś zupełnie innego… Tam wystarczy właściwości modelu oznaczyć odpowiednimi atrybutami i użyć odpowiedniego „helpera” na widoku, a mechanizm „jQuery unobtrusive validation” robi resztę za mnie – oczywiście przy bardziej niestandardowych walidacjac...
KnockoutJS jest JavaScriptowym frameworkiem MVC/MVVM, który wykorzystujemy w projekcie, w którym obecnie biorę udział. Co prawda nie opisywałem go w moim wpisie dotyczącym tego rodzaju frameworków, ale jest on pełnoprawnym przedstawicielem swojego gatunku, a od wersji 3.2.0, która to pojawiła się w połowie zeszłego (2014) roku wprowadzono kilka „ficzerów”, które spowodowały, że teraz patrzę na to narzędzie zupełnie inaczej… ...
Postanowiłem przedstawić Wam dziś zajebiste narzędzie, o którym wcześniej nie słyszałem, a na które natknęła się ostatnio koleżanka pracująca ze mną w projekcie, poszukując odpowiedniego frameworka do „routingu” po stronie klienta. Zresztą mni...
Jakiś czas temu pisałem tutaj na blogu na temat różnego rodzaju frameworków JavaScript. Dla przypomnienia, porównałem w nim takie frameworki jak BackboneJS, EmberJS oraz AngularJS. Myślę, że tematyka „frameworkowa” będzie się na łamach tego bloga przewijać wielokrotnie i dziś jest jeden z takich właśnie momentów – podstawy AngularJS Wpis powstał na podstawie krótkiej prezentacji na temat Angulara (lokalnie u mnie w firmie),...
Myślę, że każdy kto czyta mojego bloga zauważył, że jeśli opisuję jakiś przykładowy kod, często wrzucam dodatkowo link do jsfiddle. Żeby nie było – uważam, że to świetne narzędzie, które wielokrotnie przydało mi się nie tylko podczas tworzenia wpisów na bloga ale nawet częściej przy codziennej pracy, kiedy to trzeba było zrobić na szybko jakiś „proof of concept”. Od dzisiaj jednak ogłaszam wszem i wobec, że każd...
W ostatnią środę, czyli 21 stycznia 2015 roku Microsoft zaprezentował nowy system Windows 10. Konferencja giganta z Redmond przyniosła wiele ciekawych informacji – m.in. dowiedzieliśmy się, że nowy system operacyjny będzie przez rok od dnia premiery dostępny za darmo dla wszystkich obecnych użytkowników Windowsa począwszy od wersji 7. Komentarzy na ten temat możecie przeczytać w „Internetach” co nie miara, ja jednak chciałbym ...
Dlaczego tak wielu programistów tak często rzuca tytułowym tekstem (któremu zwykle towarzyszą mniej parlamentarne przerywniki) wykonując gest jak na zdjęciu powyżej? Odpowiedzi pewnie nie trzeba daleko szukać, dlatego dziś postanowiłem przyjrzeć się kilku powodom, dla których pada tak wiele pomstowań i siarczystych przekleństw z tak wielu pokoi projektowych Wybrałem 4 najczęstsze błędy JavaScript, bo niestety ale większość problemów związanych z pisaniem kod...
Dziś przedstawiam jeden ze znanych JavaScript’owych wzorców projektowych czyli tytułowy „Memoization„, a po naszemu po prostu wzorzec zapamiętywania. Wzorzec ten opiera się na właściwości języka JavaScript polegającej na tym, że każda funkcja jest obiektem. A skoro jest obiektem, to może posiadać właściwości… ba, jak pewnie wielu z Was wie, właściwości można do obiektów dodawać w dowolnym momencie. Skoro więc takie możliwości drzemią w naszym ulubionym JavaSc...
Myślę, że wiele osób po raz pierwszy siadających do projektu opartego na frameworku AngularJS może zadawać sobie tytułowe pytanie: jaka struktura projektu AngularJS będzie odpowiednia? Nie inaczej było w moim przypadku, na szczęście kolega natknął się i polecił mi szkolenie na Pluralsight, które wiele mi rozjaśniło dzięki czemu mam teraz na ten temat jako taki pogląd i dziś właśnie podzielę się nim z Wami.
Hej! Dziś temat, o którym wspomniałem już poprzednio przy okazji ostatniej części serii wpisów dotyczących testowania za pomocą frameworka Jasmine. Pokazywałem tam, w jaki sposób można „zamokować” wywołanie funkcji ajax dostępnej w bibliotece jQuery za pomocą specjalnych obiektów Deffered oraz Promise dostarczanych przez tę bibliotekę. Uznałem wówczas, że szczegóły tego rozwiązania to temat na osobny wpis… i dziś właśnie postanowiłem Wam je w przystępny sposó...
Hej, dziś wpis trochę krótszy, z rodzaju tych „tips & tricks”… Czasem zdarza nam się natknąć na sytuację kiedy napisaliśmy w pocie czoła jakiś „zajebisty”, „zakręcony” kod JavaScript ale nie wiedzieć czemu nie działa – dzieje się tak często dlatego, że JavaScript w wielu sytuacjach zachowuje się inaczej od innych topowych języków programowania. Jedną z takich sytuacji opiszę w dzisiejszym wpisie.
Witam w ostatnim wpisie z serii „Testowanie z Jasmine„, w którym to zajmę się, zgodnie z tytułem, zagadnieniem testowania operacji asynchronicznych – zresztą w komentarzach pod jednym z wpisów serii, prosił o to jeden z czytelników bloga, a ja obiecałem, że to zrobię więc, tym bardziej czuję się w obowiązku aby ten temat zgłębić i go Wam tutaj jak najlepiej przedstawić Tematyka ta wbrew pozorom nie jest szczególnie skomplikowana… No nic, jak zwykle nie ma co...
Witam w kolejnym już wpisie z serii „Testowanie z Jasmine”. Tak jak obiecałem ostatnio, tym razem zajmiemy się bardzo przydatnym elementem frameworka Jasmine, a konkretnie tytułowymi szpiegami (ang. spy – w dalszej części wpisu będę posługiwał się zamiennie terminem polskim i angielskim). Generalnie, jak sama nazwa wskazuje, taki szpieg służy do szpiegowania… A konkretniej szpiegowania wywołań funkcji oraz przekazywanych do niej argumentów. Zobaczmy z czym t...
Witam ponownie! Dziś, tak jak zapowiadałem w ostatnim wpisie, znów powraca temat „Testowanie z Jasmine” Powoli robi się z tego taki mini kurs (czy jak to nazwać) no ale temat zdecydowanie wymaga kontynuowania… Zatem dziś kolejne aspekty frameworka Jasmine, a konkretniej matchery czyli odpowiedniki asercji znanych z innych frameworków testowych; ponadto „setup” oraz „teardown” czyli sposób na inicjowanie testów i sprzątanie po nich; wspomnę także o metodach w...
Hej, sorry za tę przerwę! Dopadło mnie chyba to samo o czym pisał ostatnio procent… No ale nic to, oto jestem z powrotem z nowymi siłami do blogowania! A dzisiejszym wpisem postanowiłem kontynuować temat testowania kodu napisanego w JavaScript. Ostatnio zrobiłem krótki wstęp do frameworka Jasmine – jeśli jesteś nowicjuszem w temacie testów jednostkowych w JavaScript lub nie wiesz zupełnie nic na temat frameworka Jasmine, to zachęcam do przeczytania tego wpis...
W poprzednim wpisie na temat testowania kodu JavaScript, przedstawiłem trzy najpopularniejsze frameworki służące do tego celu – QUnit, Mocha oraz Jasmine. Napisałem też baaardzo pokrótce na czym generalnie polega testowanie JavaScript. Myślę jednak, że to zdecydowanie za mało… Postanowiłem więc trochę zgłębić temat na łamach bloga, tak żebyśmy wszyscy się mogli czegoś nowego nauczyć Całkiem subiektywnie, na warsztat wybrałem Jasmine. Podoba mi się składnia ...
Sezon ogórkowy w pełni, dlatego i wpisy troszkę rzadziej niż zwykle, ale że u mnie w mieszkaniu remont to i urlop spędzam w domu i mogę nadrobić trochę zaległości… A w dzisiejszym wpisie temat, który często traktowany jest po macoszemu czyli testowanie JavaScript. O zaletach i konieczności testowania napisano już wiele, a jako profesjonalni programiści musimy wiedzieć, że dotyczy to nie tylko „backendu” ale i warstwy interfejsu użytkownika. Na całe szczęście,...