
jQuery â nĂ« botĂ« JavaScript. Komuniteti i zhvilluesve tĂ« uebit e krijoi atĂ« nĂ« fund tĂ« viteve 2000, gjĂ« qĂ« çoi nĂ« krijimin e njĂ« ekosistemi tĂ« pasur tĂ« faqeve, plug-in-eve dhe framĂ«forkeve qĂ« pĂ«rdorin jQuery nĂ«n kapak.
Por në vitet e fundit statusi i saj si mjeti kryesor për zhvillimin e uebit ka rënë. Le të shohim pse jQuery u bë e njohur dhe pse doli jashtë mode, si dhe në cilat raste është ende e arsyeshme ta përdorni atë për të krijuar faqe moderne.
Historia e shkurtër e jQuery
John Resig () krijoi versionin e parë të bibliotekës në 2005-n, dhe -n, në një ngjarje të quajtur BarCampNYC. Në autori shkroi:
jQuery është një bibliotekë JavaScript, në thelb të cilës qëndron parimi: Programimi në JavaScript duhet të jetë i këndshëm. jQuery merr detyra të zakonshme, të përsëritura, largohet nga gjithë markup-i i panevojshëm dhe i bën ato të shkurtër, elegante dhe të kuptueshme.
jQuery ka dy tipare kryesore. E para është një API e lehtë për manipulimin e faqeve të internetit. Në veçanti, ajo ofron metoda të fuqishme për të zgjedhur elemente. Mund të zgjidhni jo vetëm sipas ID ose klasave, jQuery lejon të shkruani shprehje të komplikuara, për shembull, për të zgjedhur elemente në bazë të marrëdhënieve të tyre me elemente të tjera:
// Select every item within the list of people within the contacts element
$('#contacts ul.people li');Me kalimin e kohës mekanizmi i zgjedhjes u shndërrua në një bibliotekë të veçantë .
Tipari i dytë i bibliotekës ishte se ajo e abstragonte dallimin midis shfletuesve. Në ato vite ishte e vështirë të shkruhej kod që të funksiononte në mënyrë të besueshme në të gjithë shfletuesit.
Mungesa e standardizimit do të thoshte që zhvilluesit duhet të merrnin parasysh shumë dallime midis shfletuesve dhe raste të kufizuara. Shikoni dhe kërkoni për jQuery.browser. Këtu është një nga shembujt:
// If Mozilla is used
if ( jQuery.browser == "mozilla" || jQuery.browser == "opera" ) {
// Use the handy event callback
jQuery.event.add( document, "DOMContentLoaded", jQuery.ready );
// If IE is used, use the excellent hack by Matthias Miller
// http://www.outofhanwell.com/blog/index.php?title=the_window_onload_problem_revisited
} else if ( jQuery.browser == "msie" ) {
// Only works if you document.write() it
document.write("<scr" + "ipt id=__ie_init defer=true " +
"src=javascript:void(0)></script>");
// Use the defer script hack
var script = document.getElementById("__ie_init");
script.onreadystatechange = function() {
if ( this.readyState == "complete" )
jQuery.ready();
};
// Clear from memory
script = null;
// If Safari is used
} else if ( jQuery.browser == "safari" ) {
// Continually check to see if the document.readyState is valid
jQuery.safariTimer = setInterval(function(){
// loaded and complete are both valid states
if ( document.readyState == "loaded" ||
document.readyState == "complete" ) {
// If either one are found, remove the timer
clearInterval( jQuery.safariTimer );
jQuery.safariTimer = null;
// and execute any waiting functions
jQuery.ready();
}
}, 10);
}Dhe falë jQuery, zhvilluesit mund të kalonin shqetësimet mbi të gjitha këto pengesa në supet e ekipit që zhvillonte bibliotekën.
Më vonë jQuery e lehtësoi zbatimin e teknologjive më të komplikuara, si animacionet dhe Ajax. Biblioteka në fakt u shndërrua në një varësi standarde për faqet e internetit. Dhe sot ajo mundëson funksionimin e një pjesë të madhe të internetit. W3Techs vlerëson se .
Kontrolli mbi zhvillimin e jQuery gjithashtu u bë më formal. Në 2011-n, skuadra . Në 2012-n, jQuery Board.
Në vitin 2015, jQuery Foundation u bashkua me Dojo Foundation,, e cila më pas u bashkua me Node.js Foundation në-n për të krijuar, në kuadër të të cilit jQuery ishte një nga ".»
Rrethana të ndryshueshme
Megjithatë, gjatë viteve të fundit, jQuery . GitHub. Bootstrap v5 , sepse kjo është "" (aktualisht me një madhësi prej 30 KB, e minifikuar dhe e paketuar). Disa tendenca në zhvillimin e uebit kanë dobësuar pozitat e jQuery si një mjet të nevojshëm.
Shfletuesit
Për disa arsye, ndryshimet dhe kufizimet e shfletuesve janë bërë më pak të rëndësishme. Së pari, standardizimi është përmirësuar. Zhvilluesit kryesorë të shfletuesve (Apple, Google, Microsoft dhe Mozilla) punojnë së bashku për të zhvilluar në kuadër të.
Megjithëse shfletuesit ende dallojnë nga njëri-tjetri në disa aspekte të rëndësishme, disponuesit tani kanë një mjet për të gjetur dhe krijuar një bazë të zakonshme në vend të ndërmjet tyre. Si rezultat, API-të e shfletuesve kanë fituar mundësi të reja. Për shembull, ka mundësi të zëvendësojë funksionet Ajax nga jQuery:
// jQuery
$.getJSON('https://api.com/songs.json')
.done(function (songs) {
console.log(songs);
})
// native
fetch('https://api.com/songs.json')
.then(function (response) {
return response.json();
})
.then(function (songs) {
console.log(songs);
});Metodat dhe përsëritin mjetet e selektimit nga jQuery:
// jQuery
const fooDivs = $('.foo div');
// native
const fooDivs = document.querySelectorAll('.foo div');Tani është e mundur të manipulohet me klasat e elementeve përmes :
// jQuery
$('#warning').toggleClass('visible');
// native
document.querySelector('#warning').classList.toggle('visible');Në faqen tonë janë listuar disa situata të tjera, në të cilat kodi jQuery mund të zëvendësohet me kodin natyror. Disa zhvillues gjithmonë qëndrojnë me jQuery, sepse thjesht nuk dinë për API-të e reja, por kur mësojnë, fillojnë ta përdorin këtë bibliotekë më rrallë.
Përdorimi i mundësive natyrale lejon përmirësimin e performancës së faqeve. Shumë tani mund të realizohen me anë të CSS.
Arsyeja e dytë është se shfletuesit përditësohen shumë më shpejt se më parë. Në shumicën e tyre, aplikohet , përveç Apple Safari. Ato mund të përditësohen në sfond pa angazhimin e përdoruesit dhe nuk janë të lidhura me përditësimet e sistemit operativ.
Kjo do të thotë se mundësitë e reja të shfletuesve dhe rregullimet e defekteve shpërndahen shumë më shpejt, dhe zhvilluesit nuk duhet të presin deri sa pjesa e do të arrijë një nivel të pranueshëm. Ata mund të përdorin me besim funksionet dhe API-të e reja pa shkarkuar jQuery ose polifilë.
Arsyetimi i tretë është se Internet Explorer po afrohet në një gjendje plotësisht të pavlerë. IE ka qenë prej kohësh një tungë për zhvillimin e web-it në të gjithë botën. Gabimet karakteristike të tij kanë qenë shumë të përhapura, dhe pasi IE ka dominuar në vitet 2000 dhe nuk ka përdorur strategjinë e përhershme të përditësimit, deri tani shpesh hasen versionet e tij të vjetra.
Në vitin 2016, Microsoft përshpejtoi tërheqjen e IE nga përdorimi, për versionin e dhjetë dhe më të hershëm, duke u kufizuar në mbështetje për IE 11. Dhe gjithnjë e më shpesh zhvilluesit e webit mund të lejojnë luksin për të injoruar pajtueshmërinë me IE.
Madje jQuery ka ndalur mbështetje për IE 8 dhe më poshtë që nga , i lëshuar në vitin 2013. Dhe megjithëse në disa raste ende kërkohet mbështetje për IE, si në rastet e faqeve të vjetra, këto situata po bëhen gjithnjë e më të pakta.
Fushat e reja
Që nga shfaqja e jQuery, janë krijuar shumë fushata, duke përfshirë liderët modernë , dhe . Këto kanë dy avantazhe të rëndësishme përballë jQuery.
Së pari, ato lejojnë ndarjen e lehtë të ndërfaqes së përdoruesit në komponentë. Fushatat janë projektuar për të trajtuar vizatimin dhe përditësimin e faqes. Ndërsa jQuery zakonisht përdoret vetëm për përditësim, duke i ngarkuar serverit detyrën për të ofruar faqen fillestare.
Në anën tjetër, komponentët React, Angular dhe Vue lejojnë një lidhje të ngushtë mes HTML, kodit dhe madje CSS. Siç ne ndajmë bazën e kodit në shumë funksione dhe klasa të vetë-mjaftueshme, ashtu edhe mundësia për të ndarë ndërfaqen në komponentë të ripërdorshëm e lehtëson ndërtimin dhe mbështetje të faqeve të komplikuara.
Avantazhi i dytë është se fushatat më të reja ndjekin paradigmat deklarative, në kuadër të së cilës zhvilluesi përshkruan se si duhet të duket ndërfaqja, dhe për realizimin e të gjitha ndryshimeve të nevojshme për të arritur atë që dëshirohet, e ngarkon fushata. Ky qasje është në kontrast me qasjen imperative që karakterizon kodin jQuery.
Në jQuery, ju shënoni hapat për të bërë ndonjë ndryshim. Ndërsa në një fushatë deklarative, ju thoni: "Sipas këtyre të dhënave, ndërfaqja duhet të duket kështu". Kjo mund ta lehtësojë shumë shkruan e kodit pa gabime.
Zhvilluesit kanë adoptuar qasje të reja në zhvillimin e faqeve, çka ka bërë që popullariteti i jQuery të ulet.
Kur të përdoret jQuery?
Pra, kur duhet të përdoret jQuery?
Nëse kompleksiteti i projektit do të rritet, është më mirë të filloni me një bibliotekë ose kornizë tjetër që mundëson menaxhim të qëllimshëm të kompleksitetit. Për shembull, të ndahen interfacet në komponente. Përdorimi i jQuery në këto faqe në fillim mund të duket i pranueshëm, por shumë shpejt do të çojë në krijimin e kodit spageti, ku nuk do të jeni të sigurt se cili fragment ndikon në cilën pjesë të faqes.
Kam qenë në një situatë të tillë, ku përpjekja për të bërë çfarëdo ndryshimi krijon një ndjenjë sipërmarrjeje të vështirë. Nuk mund të jeni të sigurt se nuk do të thyej asgjë, sepse selektorët e jQuery varen nga struktura HTML, e krijuar nga serveri.
Në anën tjetër janë faqet e thjeshta, që kërkojnë vetëm pak gjithnjë e më shumë interaktivitet ose përmbajtje dinamike. Në raste të tilla, nuk do të doja të përdorja jQuery, sepse me API natyrore mund të bëhet shumë më tepër.
Edhe nëse më nevojitet diçka më të fuqishme, do të kërkoj një bibliotekë të specializuar, për shembull, për Ajax ose për animacione. Do të ishte më e lehtë sesa të ngarkoja të gjithë jQuery për një funksionalitet të vogël.
Mendoj se arsyetimi më i mirë për përdorimin e jQuery është se ajo ofron funksionalitet të gjithanshëm për punën në frontin e faqes. Në vend që të studioni më shumë API natyrore ose biblioteka të specializuara, mund të lexoni vetëm dokumentacionin e jQuery dhe do të bëheni menjëherë produktiv.
Qasja imperativ është e vështirë për t'u zgjatur, por është më e lehtë për t'u mësuar se qasja deklarative e biblioteka të tjera. Për një faqe me mundësi të qarta të kufizuara është më mirë të përdorni jQuery dhe të punoni qetë: biblioteka nuk kërkon ndonjë ndërlikim ose kompilim të vështirë.
Për më tepër, jQuery është e mirë në ato raste kur jeni të sigurt se faqja nuk do të komplikojë në të ardhmen, dhe nëse nuk ju shqetëson funksionaliteti natyror, i cili, me siguri, do të kërkojë më shumë kode se jQuery.
Gjithashtu, mund ta përdorni këtë bibliotekë nëse duhet të mbështesni versione të vjetra të IE. Atëherë jQuery do t'ju shërbejë si në kohën kur IE ishte shfletuesi më i njohur.
Shikimi në të ardhmen
jQuery nuk do të largohet shumë shpejt. Ajo , dhe shumë zhvillues preferojnë të përdorin API e saj, edhe me disponueshmërinë e metodave natyrore. Biblioteka ndihmoi një gjeneratë të tërë zhvilluesish që të krijojnë faqe që funksionojnë në çdo shfletues. Dhe megjithëse në shumë aspekte e kanë zëvendësuar biblioteka të reja, framework-e dhe paradigma, jQuery ka luajtur një rol të madh pozitiv në krijimin e internetit modern.
Nëse funksionaliteti i jQuery nuk do të ndryshojë shumë, është shumë e mundshme që në disa vitet e ardhshme përdorimi i bibliotekës do të vazhdojë të zvogëlohet ngadalë, por me siguri. Website-et e reja, zakonisht, krijohen që në fillim duke përdorur framework-e më moderne, dhe skenarët e përshtatshëm për përdorimin e jQuery po shfaqen gjithnjë e më rrallë.
Ndonjëherë disa njerëz nuk e pëlqejnë intensitetin e moshës së pakët të mjetëve për zhvillimin e uebit, por për mua kjo është një dëshmi e progresit të shpejtë. jQuery na lejojë të bëmë shumë më mirë. E njëjta vlen edhe për pasardhësit e saj.
Burimi: habr.com
