jQuery -
Awer an de leschte Joeren ass säi Status als Premier Tool fir Webentwécklung erodéiert. Loosst eis kucken firwat jQuery populär gouf a firwat et aus der Moud gefall ass, an och a wéi enge Fäll et nach ëmmer ubruecht ass et ze benotzen fir modern Websäiten ze kreéieren.
Eng kuerz Geschicht vu jQuery
John Resig (
jQuery ass eng Javascript-Bibliothéik baséiert op dem Motto: Javascript soll lëschteg sinn ze codéieren. jQuery hëlt gemeinsam, repetitive Aufgaben, Sträifen all onnéideg Markup, a mécht se kuerz, elegant, a propper.
jQuery huet zwee Haaptvirdeeler. Déi éischt ass eng praktesch API fir Websäiten ze manipuléieren. Besonnesch bitt et mächteg Methoden fir Elementer ze wielen. Net nëmme kënnt Dir duerch ID oder Klass auswielen, jQuery erlaabt Iech komplex Ausdréck ze schreiwen, zum Beispill Elementer auswielen op Basis vun hire Relatiounen mat aneren Elementer:
// Select every item within the list of people within the contacts element
$('#contacts ul.people li');
Mat der Zäit gouf de Selektiounsmechanismus eng separat Bibliothéik
Den zweete Virdeel vun der Bibliothéik war datt et Differenzen tëscht Browser abstrakéiert huet. An deene Jore war et schwéier Code ze schreiwen, deen zouverlässeg an all Browser funktionnéiert.
De Mangel u Standardiséierung huet gemengt datt d'Entwéckler fir vill Differenzen tëscht Browser a Randfäegkeete musse berücksichtegen. Maacht e Bléck op
// 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);
}
An dank jQuery kënnen d'Entwéckler d'Suergen iwwer all dës Falen op d'Schëllere vun der Équipe verréckelen, déi d'Bibliothéik entwéckelt.
Méi spéit huet jQuery et méi einfach gemaach fir méi komplex Technologien wéi Animatiounen an Ajax ëmzesetzen. D'Bibliothéik ass effektiv eng Standardabhängegkeet fir Websäite ginn. An haut mécht et e groussen Deel vum Internet. W3Techs mengt dat
Kontroll iwwer jQuery Entwécklung ass och méi formaliséiert ginn. Am Joer 2011 huet d'Equipe
Am 2015 huet d'jQuery Foundation mat der Dojo Foundation fusionéiert,
Änneren Ëmstänn
Wéi och ëmmer, an de leschte Joeren jQuery
Browser
Aus e puer Grënn sinn Browser Differenzen a Aschränkungen manner wichteg ginn. Als éischt ass d'Standardiséierung verbessert. Grouss Browser Entwéckler (Apple, Google, Microsoft a Mozilla) schaffen zesummen fir z'entwéckelen
Och wann d'Browser nach ëmmer op enger Rei vu wichtege Weeër vuneneen ënnerscheeden, hunn d'Verkeefer op d'mannst e Mëttel fir eng gemeinsam Datebank ze sichen an ze kreéieren anstatt
// 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);
});
Methoden
// jQuery
const fooDivs = $('.foo div');
// native
const fooDivs = document.querySelectorAll('.foo div');
Dir kënnt elo Element Klassen manipuléieren benotzt
// jQuery
$('#warning').toggleClass('visible');
// native
document.querySelector('#warning').classList.toggle('visible');
Op der Säit
Mat native Features verbessert d'Performance vun der Säit. Vill
Den zweete Grond ass datt d'Browser vill méi séier aktualiséiert ginn wéi virdrun. Déi meescht vun hinnen benotzen
Dat heescht, datt nei Browser Fonctiounen a Bugfixes vill méi séier verdeelt ginn, an Entwéckler mussen net waarden bis de
Den drëtte Grond ass datt Internet Explorer e Staat vu kompletter Irrelevanz kënnt. IE ass laang de Bann vun der Webentwécklung ronderëm d'Welt. Seng Bugs ware verbreet, a well IE d'2000er dominéiert huet an keng ëmmergréng Updatestrategie benotzt huet, sinn eeler Versiounen nach ëmmer heefeg.
Am Joer 2016 huet Microsoft d'Decommissioning vun IE beschleunegt,
Souguer jQuery gestoppt IE 8 an ënnen zanter ënnerstëtzen
Nei Kaderen
Zënter dem Advent vun jQuery si vill Kaderen erstallt ginn, dorënner modern Leader
Als éischt maachen se et einfach d'Benotzerinterface a Komponenten ze trennen. Frameworks sinn entwéckelt fir Säit Rendering an Aktualiséierung ze handhaben. An jQuery gëtt normalerweis nëmme fir d'Aktualiséierung benotzt, a léisst d'Aufgab fir déi initial Säit op de Server ze liwweren.
Op der anerer Säit, React, Angular a Vue Komponenten erlaben Iech HTML, Code a souguer CSS enk ze koppelen. Just wéi mir d'Codebasis a vill selbststänneg Funktiounen a Klassen opdeelen, mécht d'Fäegkeet fir d'Interface an reusable Komponenten opzedeelen et méi einfach ze bauen an komplexe Siten z'erhalen.
Deen zweete Virdeel ass datt méi rezent Kaderen un engem deklarativen Paradigma hänken, an deem den Entwéckler beschreift wéi d'Interface soll ausgesinn a léisst et dem Kader fir all déi néideg Ännerungen ze maachen fir ze erreechen wat gewënscht ass. Dës Approche ass am Géigesaz zu der imperativer Approche déi jQuery Code charakteriséiert.
An jQuery schreift Dir explizit d'Schrëtt op fir Ännerungen ze maachen. An an engem deklarative Kader seet Dir: "Laut dësen Donnéeën soll d'Interface esou ausgesinn." Dëst kann d'Schreiwen vun bug-gratis Code vill méi einfach maachen.
Entwéckler hunn nei Approche fir Websäitentwécklung ugeholl, dofir ass d'JQuery Popularitéit erofgaang.
Wéini benotzt jQuery?
Also wann muss benotzen jQuery?
Wann d'Komplexitéit vum Projet eropgeet, ass et besser mat enger anerer Bibliothéik oder Kader unzefänken, déi Iech erlaabt d'Komplexitéit sënnvoll ze managen. Zum Beispill, deelen d'Interface an Komponenten. D'Benotzung vun jQuery op esou Siten kann am Ufank gutt ausgesinn, awer et wäert séier zu Spaghetti-Code féieren, wou Dir net sécher sidd wéi ee Fragment deen Deel vun der Säit beaflosst.
Ech war an esou enger Situatioun, wann ech probéiert eng Ännerung ze maachen, fillt et sech wéi eng schwiereg Aufgab. Dir kënnt net sécher sinn, datt Dir näischt Paus wäert well jQuery selectors hänkt op der HTML Struktur generéiert vum Server.
Um aneren Enn vun der Skala sinn einfach Siten déi nëmmen e bëssen Interaktivitéit oder dynameschen Inhalt erfuerderen. Ech géif och net an dëse Fäll jQuery als Standard ginn, well et gëtt sou vill méi wat Dir mat gebiertege APIen maache kënnt.
Och wann ech eppes méi staark brauch, sichen ech eng spezialiséiert Bibliothéik, z.B.
Ech mengen déi bescht Begrënnung fir jQuery ze benotzen ass datt et ëmfaassend Funktionalitéit fir de Frontend vun enger Websäit gëtt. Amplaz eng Vielfalt vun gebierteg APIen oder spezialiséiert Bibliothéiken ze léieren, kënnt Dir just d'jQuery Dokumentatioun liesen an direkt produktiv ginn.
Déi imperativ Approche skaléiert net gutt, awer et ass méi einfach ze léieren wéi déi deklarativ Approche vun anere Bibliothéiken. Fir e Site mat kloer limitéiert Fäegkeeten ass et besser jQuery ze benotzen a roueg ze schaffen: d'Bibliothéik erfuerdert keng komplex Versammlung oder Kompiléierung.
Zousätzlech ass jQuery gutt wann Dir zouversiichtlech sidd datt Äre Site mat der Zäit net komplizéiert gëtt, a wann Dir Iech net ëm gebierteg Funktionalitéit këmmert, wat sécherlech méi Code erfuerdert wéi jQuery.
Dir kënnt och dës Bibliothéik benotzen wann Dir eeler Versioune vun IE ënnerstëtzen musst. Dann déngt jQuery Iech wéi et an den Deeg gemaach huet wou IE de populärste Browser war.
A kuckt an d'Zukunft
jQuery wäert net geschwënn verschwannen. Si
Ausser d'Funktionalitéit vun jQuery bedeitend ännert, ass et méiglech datt d'Benotzung vun der Bibliothéik lues awer stänneg an den nächste Joren erofgeet. Nei Websäite tendéieren vun Ufank un mat méi modernen Kaderen gebaut ze ginn, a passend Benotzungsfäll fir jQuery ginn ëmmer méi rar.
E puer Leit hunn den Taux net gär mat deem Webentwécklungsinstrumenter verouderd ginn, awer fir mech ass et Beweis vu séiere Fortschrëtter. jQuery huet eis erlaabt vill Saachen besser ze maachen. Dat selwecht gëllt fir hir Nofolger.
Source: will.com