jQuery Bootstrap. Pomocniczy framework CSS do budowania stron. Pracuje on nad swoją 5 wersją. Wypuścił on całkiem niedawno swoją najnowszą wersję alpha.
Jego najnowszy bajer polega na tym, że nie jest on już zależny od jQuery. To zadaje poważne pytanie. jQuery był pierwszy wspaniałym frameworkiem JavaScript, który przez lata ułatwiał budowanie stron internetowych. Jednakże nic nie trwa wiecznie. W programowaniu ciężko znaleźć rozwiązanie, które potrafi przetrwać 10 lat lub więcej.
Pytanie, czy dziś i w przyszłości potrzebujemy jQuery do budowania stron internetowych
Dlaczego jQuery był popularny
jQuery został stworzony w 2006 roku. W czasach gdy Internet Explorer była najbardziej popularną przeglądarką i gdy internet dopiero zaczął odkrywać swoje prawdziwe możliwości.
JQuery rozwiązywał wiele problemów wtedy. Pamiętaj, że JavaScript przed swoją wersją ECMAScript 6 (2015) czy ECMAScript 5 (2009) wyglądał naprawdę beznadziejnie i nikt nie chciał w nim programować. Zwłaszcza programiści z innych środowisk (.NET, Java)
jQuery był zbiorem prostych funkcji do budowania aplikacji
- Manipulacja DOM : Używając selektorów CSS i pewnych funkcji mogłeś łatwo spacerować po zawartości swojej strony HTML.
- Mimo iż JavaScript też to potrafi, to używanie jQuery wydawało się bardziej intuicyjnie. To jest jeden z powodów, dla których, gdy szukasz rozwiązań problemów pod JavaScript na forach z 2006-2015 znajdujesz odpowiedzi w stylu : zrób to jQuery. Co akurat w roku 202X wydaje się już głupie.
- Animacje : Bez CSS mogłeś zrobić proste animacje.
- AJAX : Robienie zapytań AJAX bez jQuery było bólem głowy. jQuery natomiast skracał cały kod do kilku linijek.
- Wspieranie wielu przeglądarek : jQuery zawierał API wspierane przez wiele przeglądarek. Pamiętaj, teraz żyjemy w raju, nawet nie chcesz wiedzieć, ile problemów kiedyś było z zastanawianiem się, co zadziała w jakiej przeglądarce i w jakiej wersji.
- Pamiętasz Windows XP i jaka tam przeglądarka żyła bardzo długo
Czy jQuery jest warte nauki w 202X
Ktoś ostatnio na moim webinarze zapytał mnie "czy zrobię coś o jQuery". jQuery na pewno nie jest taki, beznadziejny miał swój złoty moment.
Z mojej perspektywy był on użyteczny, aż do pojawienia się Angulara 1.X.X (2014). Pamiętam, jednak jak przed tym momentem namiętnie szukałem gotowych rozwiązań pod jQuery. Slidery, formularze, animacje. Tak bym nawet streścił swoje pół roku programowania w 2012 roku.
Największa dyskusja z jQuery polega jednak na tym, czy warto w ogóle umieszczać tę bibliotekę na stronę internetową. O ile internet jest coraz szybszy to mamy trend oszczędzania bajtów na stronie internetowych, aby jak najszybciej się ona ładowana.
Słuchaj nawet ja na swoim bloga mam bibliotekę jQuery, która żyje tutaj od 2012 roku. Jednakże co ona tutaj robi. Dosłownie służy ona mi za ukrycie dwóch okienek oraz pewnych przycisków. To są takie banalne rzeczy, że w wolnym czasie powinien przepisać te funkcje na czysty JavaScript i wywalić jQuery całkowicie ze strony.
Zamiast więc się pytać ", czy powinien uczyć się jQuery" zobacz jak, możesz zrobić, te same rzeczy w czystym JavaScript.
// Rozwiązanie w jQuery
$(element).addClass("nazwaClassyCSS");
// Czysty JavaScript
element.classList.add("nazwaClassyCSS");
// Rozwiązanie w jQuery
$(el).hide();
$(el).show();
// Czysty JavaScript
el.style.display = 'none';
el.style.display = '';
// Rozwiązanie w jQuery
$(selector).each(function(i, el){
});
// Czysty JavaScript
var elements = document.querySelectorAll(selector);
Array.prototype.forEach.call(elements, function(el, i){
});
Ja ostatnio przepisywałem pewien plugin i udało mi się wywalić od niego zależność od jQuery całkowicie. Jest to możliwe. Ta strona bardzo mi też pomogła
http://youmightnotneedjquery.com/
jQuery tym bardziej nie jest Ci potrzebne, jeżeli korzystasz z Angulara, Vue czy React.
Każdy też Ci powie, że mieszanie tych frameworków to kiepski pomysł.
Rozmiar kodu JavaScript ma znaczenie
Tego argumentu nie przeskoczysz. Każde milisekunda więcej w skali dużej aplikacji może skutkować utratą klientów lub spadkiem SEO w wyszukiwarce Google.
jQuery waży 80 kb i wiesz mi, nie potrzebujesz tego ciężaru.
A co ze starym aplikacjami legacy
Pracuje w firmie ubezpieczeniowej i fakt wiele aplikacji z 2010 roku korzysta mocno z jQuery.
Wiedza na temat jQuery nadal jest użyteczna, jednakże jeżeli już teraz kwestionujemy użycie jQuery to, co dopiero będzie później.
Moim zdaniem nie jest to solidny powód do nauki jQuery, ponieważ kto wie, zanim dostaniesz swoją pracę jako programista, to może tych aplikacji LEGACY już nie będzie.
Gdy jednak będziesz musiał spojrzeć na starą aplikację, która korzysta z jQuery, to wtedy wiesz mi, wystarczy, że spojrzysz parę razy na dokumentacje, aby się odnaleźć.
Obecnie wiedzę z czystego JavaScriptu łatwo jest przenieść na jQuery niż odwrotnie.
Podsumowanie
Internet obecnie wydał wyrok na jQuery. Bootstrap 5 pozbywa się jQuery i no cóż, każde rozwiązanie kiedyś umiera.
Nie wiem, czy wiesz, ale jako programista ".NET", kiedyś pracowałem na stronach w WebForms ASP.NET. Jako student uczyłem się Silverlight-a. Gdy byłem na magisterce, poznawałem Windows Phone oraz WinRT. Każda z tych technologi teraz jest tylko wspomnieniem.
Jako programiści chcielibyśmy mieć jakieś rozwiązania, które żyją bardzo długo. jQuery radził sobie bardzo dobrze. Jak na bibliotekę JavaScript można by powiedzieć, że radził sobie fantastycznie.
Czas jednak przyszedł i na nią.