Het kan ook zonder jQuery

-

In een eerder artikel heb ik je (hopelijk) geholpen om je gereedschapskist als developer iets uit te breiden. Hoe meer gereedschap je hebt als ontwikkelaar, hoe beter. Klinkt logisch toch? Hier wil ik echter wel een kleine opmerking bij plaatsen: hoeveel gereedschap je ook hebt, dat verplicht je niet om bij elke klus alles te gebruiken.

Heb je echt een javascript library nodig?

Wat veel gebeurt bij het opstarten van een nieuw project (groot of klein) is dat een developer als eerste alle voor hem of haar bekende code libraries aan het project toevoegt. Een goed voorbeeld hiervan is de javascript library jQuery. Natuurlijk maakt je dit het schrijven van javascript een stukje makkelijker, toch is het altijd het overwegen waard om een keer basis javascript zonder libraries (vanilla, een term in IT-land voor software die nog helemaal in originele staat is, zonder aanpassingen) te schrijven.

Begrijp me niet verkeerd, ik ben absoluut geen tegenstander van het gebruik van jQuery. Moet het project in korte tijd opgeleverd worden? Ga gerust voor jQuery. Zijn er Michael Bay achtige effecten nodig op de website? Kies jQuery. Ben je vooral elementen aan het selecteren en heb je geen zin om document.getElementById() te typen? Misschien is het dan tijd om je gereedschapskist even dicht te laten en gewoon ‘old school’ te gaan.

Vanilla javascript is zo gek nog niet

Zeker developers die net beginnen met javascript raad ik het sterk aan om eerst voor de vanilla way te gaan. Tuurlijk, de leercurve is wat steiler en je zal af en toe de neiging hebben om met je toetsenbord te gooien na de zoveelste error melding in je console. Maar kennis hebben van de DOM, hoe die werkt en wat JS allemaal onder de motorkap doet is belangrijk en zal je in de toekomst alleen maar helpen.

Een uitstekende bron om je op gang te helpen is youmightnotneedjquery.com waar tientallen voorbeelden staan hoe je vertrouwde jQuery code kunt omschrijven naar de standaard javascript.

Ja maar! Browser compabiliteit! is een veel gehoorde reden om toch meteen jQuery toe te passen. Dit is niet altijd waar… browsers hoger dan IE9, en in veel gevallen IE9 zelf ook, ondersteunen praktisch alle code die je nodig hebt om vanilla js te schrijven. Mocht je toch oudere browsers moeten ondersteunen, dan kun je proberen om zelf de bugs te fixen of voor een progressive enhancement oplossing kiezen.

Javascript zonder jQuery kan prima!

Bij het laatste project waar ik aan mee mocht werken was performance het aller-aller-belangrijkste. Het inladen van javascript-libraries moest tot een minimum beperkt worden en daarom werd er gekozen om zoveel mogelijk voor vanilla JS te gaan. Animaties, funky effecten, alle mogelijke kermis-attracties werden tot een minimum beperkt en waar nodig met CSS afgevangen. Deze keuze was aan het begin even slikken, maar nu het project bijna afgerond is blijkt dat we het compleet zonder jQuery af konden. Een wijze les die me geleerd heeft voor elk project mezelf af te vragen hoe ‘vanilla’ een project kan worden.

Nogmaals, jQuery is niet per definitie een no-go. Maar overweeg per project of jQuery of andere librabries echt nodig zijn. Moeten er oude browsers ondersteund worden? Hoe belangrijk is de performance ten opzichte van de interactie? Stel jezelf deze vragen en durf te kiezen voor vanilla JS.

Bron afbeelding: Dmitrij Paskevic / Unsplash