JavaScript-frameworks: hoe ze te kiezen. Essentiële JavaScript-bibliotheken, tools en frameworks die u moet kennen

Vandaag ontving ik een e-mail van een bloglezer die om advies vroeg over een "goed" raamwerk om te leren JavaScript... De brief was lang genoeg, maar het komt erop neer: de man heeft niet geprobeerd vanille te bestuderen JavaScript, heeft een basiskennis van het gebruik van de jQuery-bibliotheek en wil zijn vaardigheden "pompen" door een van de "coole" frameworks te leren. Ik begon de tekst van het antwoord in te vullen - we hadden al meer dan eens soortgelijke vragen gesteld, maar toen besloot ik dat het gemakkelijker zou zijn om iedereen tegelijk te beantwoorden.

Ik zal beginnen met het belangrijkste - je kunt geen goede ontwikkelaar worden door een taal te leren vanuit een framework / bibliotheek. De eerste stap is om de taal zelf te leren: syntaxis, voordelen, nadelen, problemen, enz. Om een ​​idee te krijgen van al het bovenstaande, volstaat het niet om iemands slimme artikel te lezen. Het is raadzaam om alles in de praktijk te leren kennen, d.w.z. het voltooien van echte projecten. Laat het kleine projecten zijn die een echt probleem oplossen. Zo begrijp je meteen welke problemen het gemakkelijkst op te lossen zijn met de gekozen programmeertaal en welke niet.

Dit is waar je een steen in de jQuery-tuin wilt gooien. Nee, denk niet dat dit een geweldige bibliotheek is die erin is geslaagd een heleboel verschillende problemen op een elegante manier op te lossen, maar veel ontwikkelaars hebben het bij het verkeerde eind. Om de een of andere reden begonnen ze plug-in-integrators te worden en waar mogelijk jQuery te gebruiken. Hoorde de zin "JQuery-noedels?", is dit niet de schuld van de bibliotheek zelf, maar het misbruik ervan. Ze koppelden het gewoon aan elkaar en beslisten alles in de context van de bibliotheek, niet de taal.

Tegenwoordig is jQuery niet in de mode om te gebruiken; andere, meer geavanceerde tools hebben hun plaats ingenomen. Dat is gewoon hals over kop rennen en hun studie op zich nemen, zonder een solide basis te hebben in de vorm van kennis van de taal zelf, het is in ieder geval dom. Ja, met de moeite kun je een bepaald raamwerk toepassen, ongeacht het interne. Misschien kun je op deze manier zelfs een echte applicatie schrijven. Talrijke demo's van applicaties op basis van populaire frameworks verlagen de instapdrempel aanzienlijk. Maar zonder kennis van het platform (in dit geval de programmeertaal) loop je het risico de opgedane kennis snel kwijt te raken.

Overstappen naar een ander framework zal net zo moeilijk zijn als de eerste keer. Het gevoel zal hetzelfde zijn als bij het leren van een volwaardige programmeertaal. Uitgang: jaag niet achter alle nieuwe producten aan, en probeer niet een scherpe start te maken, in de hoop over een paar maanden de jongens in te halen die al enkele jaren met het nieuwe product werken en echte wonderen te doen.

Bijna elke dag verschijnen er nieuwe kaders. Ongeveer eens in de zes maanden (een jaar, twee) worden nuggets gecreëerd - kaders waarrond hype stijgt en krachtige communities van fans worden gecreëerd. Dit proces zal lang duren en het is niet nodig om de afgrond van chaos in te rennen.

Als je een beginner bent, leer en oefen dan met de programmeertaal. Begin eenvoudig te programmeren en problemen op te lossen. Verbeter uw code en architectuur geleidelijk, probeer geen niet-bestaande problemen op te lossen. Ten eerste is het onwaarschijnlijk dat je zult slagen (je bent een beginner), en ten tweede kun je niet alle problemen van tevoren voorzien. Eisen aan programma's veranderen voortdurend en vroeg of laat zullen stukjes code moeten worden weggegooid. Dit is normaal ©.

Met een gedegen basiskennis kun je eenvoudig overstappen naar nieuwe tools en benaderingen. Onthoud dat elk raamwerk eenvoudig is:

  • Een elegante oplossing voor verschillende problemen. Misschien heb je maar één probleem uit deze lijst;
  • Extra beperkingen bij het schrijven van code. Bij het kiezen van een framework moet je volgens "zijn regels" spelen;

Het begrijpen van de programmeertaal, kennis van ontwerppatronen en het observeren van de ontwikkeling van al het bovenstaande zal tal van overgangen vereenvoudigen en u in staat stellen altijd aan de top te blijven. Frameworks veranderen regelmatig (zelfs van versie tot versie kunnen er aanzienlijke verschillen zijn), en de onderliggende technologieën zijn al veel langer relevant.

Al het bovenstaande samenvattend: begin niet moeilijk. Leer de basis en onderliggende technologie (programmeertaal). Pas na het bestuderen van de basis, neem de hulptools (frameworks, bibliotheken, build-systemen, enz.) Onthoud dat al deze dingen zijn gemaakt met het doel om problemen / tekortkomingen van de oorspronkelijke technologie op te lossen. Gebruik hen en u voor dit doel.

JS-frameworks zijn tools voor het bouwen van dynamische web/mobiel/desktop applicaties in Javascript. Zoals bij elk ander instrument,
ontwikkelaars nemen hun toevlucht tot het gebruik van js-frameworks waar het onmogelijk / erg moeilijk / erg lang is om de taak met conventionele middelen te voltooien. In de overgrote meerderheid van de gevallen worden frameworks gebruikt om de zogenaamde Single Page Applications te schrijven. Die. alles wat op de site staat, komt op één pagina, zonder een directe overgang ervan.

Met hun hulp kun je zowel volwaardige sites als functionele modules (diverse online tools) ontwikkelen. Natuurlijk zijn volwaardige frameworks beter geschikt voor de eerste taak, terwijl het voor de tweede wordt aanbevolen om lichtere frameworks of bibliotheken te gebruiken.

Laten we het eerst even hebben over kaders. Ze geven een duidelijke structuur van de applicatie en worden geïmplementeerd met behulp van de zogenaamde "design patterns" (een concept dat meer vanuit de backend is gemigreerd, maar duidelijk plaatsvindt in front-end ontwikkeling met behulp van js-frameworks). De meest gebruikte patronen zijn MVC (Model-View-Controller), MVP (Model-View-Presenter) en MVVM (Model-View-ViewModel). Er is een enorme hoeveelheid informatie op internet die elk van hen in detail beschrijft, en de onthulling van dit onderwerp is niet de hoofdtaak van het artikel, omdat iedereen die geïnteresseerd is, zich onafhankelijk met deze concepten kan vertrouwd maken.

Voordelen van het bouwen van een applicatie op een JS-framework:

  • u kunt eenvoudig SPA (Single Page Application) implementeren;
  • het gebruik van een js-framework verplicht ons om een ​​applicatiestructuur te hebben (zeg een volmondig "nee" tegen spaghetticode);
  • de code wordt merkbaar kleiner en schoner, wat een positieve invloed heeft op de ontwikkelingssnelheid, evenals de ondersteuning en eliminatie van fouten in de applicatiecode;
  • de aanwezigheid van de structuur impliceert de modulariteit van de applicatie, en dit maakt het voor meerdere ontwikkelaars gemakkelijker om tegelijkertijd aan de applicatie te werken;
  • Het volgende voordeel komt meer van het gebruik van javascript zelf, maar wordt aanzienlijk verbeterd bij gebruik van het framework: de mogelijkheid om snel een mobiele en/of desktop cross-platform applicatie te maken vanuit de webversie met behulp van systemen zoals PhoneGap of Apache Cordova.

Van de belangrijke tekortkomingen kan men slechts tijdelijk onvolledige ondersteuning door zoekmachines onderscheiden, maar deze taak valt zelden samen met de taak om SPA (Single Page Application) te implementeren, vooral omdat de toonaangevende zoekmachines (tenminste Google) dit bijna volledig hebben opgelost probleem.

Er zijn al veel applicaties op js-frameworks uitgebracht en dit segment wint alleen maar aan kracht. Voor voorbeelden van voltooide projecten in Angular.js, bijvoorbeeld, is de hele site builtwith.angularjs.org gemarkeerd, lijsten met sites en applicaties die andere frameworks gebruiken, zijn hieronder te vinden op de hoofdpagina's van de officiële sites: backbone.js, ember .js.

Javascript-bibliotheken

Tot slot nog een paar woorden over de hierboven genoemde js-bibliotheken. De meest voorkomende zijn jQuery, mootools, knock-out, polymeer, reactjs. Ze vereenvoudigen het proces van het schrijven van niet-complexe afzonderlijke functionele modules die in javascript zijn geïmplementeerd aanzienlijk, maar het zijn en zullen nooit js-frameworks zijn. Ja, ze passen perfect in een kant-en-klare site, en ja, ze worden gebruikt door dezelfde js-frameworks voor het werken met de DOM (bijvoorbeeld Ember.js). Maar dit is waar hun functionaliteit en bruikbaarheid eindigen: ze zijn niet geschikt voor volwaardige implementatie van single-page-applicaties.

In deze les zullen we analyseren waarom JS-frameworks überhaupt nodig zijn. Stel dat we een SPA (Single Page Application) moeten maken, dit is een webapplicatie die uit één pagina bestaat, en al het andere wordt gedaan door middel van middelen. Dergelijke applicaties worden gekenmerkt door het feit dat ze erg dynamisch zijn en veel sneller draaien dan statische sites.

Er zijn verschillende manieren om een ​​dergelijke aanvraag te schrijven:

  1. Schrijf in native JS.
    Dat wil zeggen, zonder gebruik te maken van bibliotheken van derden. We zullen deze benadering niet analyseren, omdat het uw middelen erg verspilt, en in de meeste gevallen tevergeefs.
  2. Bibliotheken gebruiken.
    Laten we voor deze zelfstudie eens kijken naar jQuery als voorbeeld.
  3. Schrijf op het frame.
    En we zullen ook deze methode overwegen.

Een jQuery-app maken

voordelen

  • Snelle start.
    Dat wil zeggen, om te beginnen met schrijven, hoeft u geen instellingen te maken. Je hoeft alleen maar de bibliotheek op te nemen - het is snel.
  • Je hoeft niets te studeren.
    Velen kennen deze bibliotheek.

minpuntjes

  • Langzame bibliotheek.
    jQuery is tientallen keren langzamer dan enig JavaScript-framework of native JS.
  • Er is geen structuur.
    Deze aanpak heeft geen specifieke structuur. Dat wil zeggen, jQuery is slechts een bibliotheek die is gebaseerd op selectors en geen programmeerpatroon bevat. Daarin schrijven we gewoon de code en dat is alles.
  • Ondersteuning voor complexe code.
    Dit punt is een gevolg van het vorige punt. Als er geen structuur is, is het moeilijk om erachter te komen waar en wat ligt, daarom is het moeilijk om dergelijke code te onderhouden (en dat weet ik al uit persoonlijke ervaring).
  • Slechte uitbreidbaarheid.
    Wanneer de applicatie uitgroeit tot grote volumes, zal het erg moeilijk zijn om nieuwe functionaliteit toe te voegen, omdat het niet duidelijk is wat en waar te zijn. Dat wil zeggen, voor kleine toepassingen is dit niet erg relevant, maar voor serieuze toepassingen zal het een groot nadeel zijn.

Een applicatie maken op een framework

voordelen

  • Gestructureerde code, patronen.
    Elk framework heeft een soort programmeerpatroon. Hierdoor heeft het een zeer gestructureerde code. Backbone.js draagt ​​bijvoorbeeld het MVC-patroon, of bijvoorbeeld AngularJS draagt ​​het MVVM-patroon. Dit vereenvoudigt de verdere ontwikkeling van de applicatie aanzienlijk.
  • Veel van het benodigde gereedschap zit al in de doos.
    Bijvoorbeeld enkele tools voor routing of voor templates.
  • Hoge performantie.
    Elk framework is tientallen keren sneller dan jQuery. Nogmaals, bij kleine projecten is dit misschien niet erg relevant, maar voor grote projecten is het erg merkbaar. Dat wil zeggen dat jQuery-toepassingen kunnen vertragen omdat DOM-bewerkingen erg duur zijn.
  • Eenvoudige uitbreidbaarheid en code-ondersteuning.
    Doordat de code gestructureerd is en alles in een eigen module zit (model, routing), is het heel eenvoudig om nieuwe functionaliteit toe te voegen.
  • Snelle ontwikkeling.
    In de beginfase moet u het raamwerk op de een of andere manier configureren. Later zal het echter mogelijk zijn om gewoon gebruik te maken van het feit dat alles gestructureerd is en de snelheid van ontwikkeling zal toenemen.

minpuntjes

  • Het kader leren.
    Dat wil zeggen, sommige frameworks hebben hun eigen syntaxis, zoals in of Angular.js. Elk raamwerk heeft zijn eigen "speciale" ideologie (hierdoor kunnen interessante dingen worden geïmplementeerd).

Resultaat:

Voor kleine toepassingen is een groot raamwerk niet erg aan te raden.

Voor SPA moet u echter een raamwerk gebruiken.

Op zoek naar handige JavaScript-frameworks en -bibliotheken? Bekijk onze review en ontdek wat precies geschikt is voor uw project.

JavaScript (JS) is een van de meest populaire programmeertalen ter wereld. Webontwikkelaars gebruiken JS uitgebreid om webpagina's te ontwerpen, te animeren en te maken. Samen met HTML en CSS kan JavaScript bergen verzetten, namelijk een webpagina interactief en zo interessant mogelijk maken voor gebruikers.

JavaScript beperkt zichzelf niet. In plaats daarvan blijft het zich ontwikkelen. Het is de meest veelzijdige programmeertaal, ondersteund door zijn vermogen om applicaties te ontwikkelen voor een breed scala aan platforms zoals Android, Windows en iOS.

De belangrijkste voordelen van JS:

  1. Flexibiliteit - veranderingen zijn welkom.
  2. Betrouwbaarheid - werkt en verandert in overeenstemming met bepaalde prioriteiten.
  3. schaalbaarheid.
Laten we eens kijken naar enkele JavaScript-frameworks en -bibliotheken die anno 2018 nog steeds relevant zijn.

Vue.js

Een open source UI-framework dat blijft evolueren. Verdiend het meest populaire JS-framework volgens GitHub-statistieken. Vue.js tekent een minimaal aantal componenten opnieuw en ondersteunt bibliotheekintegratie van derden. Net als React.js is Vue.js erg snel, gebruikt het de Virtual DOM en biedt het ook reactiviteit en componentenstructuur.

Voordelen:

  1. Eenvoudige integratie in projecten met andere bibliotheken.
  2. Het kan werken als een raamwerk voor het bouwen van geavanceerde single-page-applicaties.

minpuntjes:

  1. Het weergavesysteem biedt minder foutopsporingsopties dan het equivalente React-systeem.
  2. De componentenbenadering in React is flexibeler en eenvoudiger.

hoekig

Dit door Google ontwikkelde JS-framework heeft een nieuwe lat gelegd. Een onmisbaar framework, niet alleen ontworpen voor softwareontwikkelaars, maar ook voor ontwerpers. AngularJS, Angular 2 en Angular 4 zijn stevig verankerd onder de veelgevraagde frameworks. Het is een open platform dat u helpt bij het maken van SPA-applicaties (Single Pages Applications), het uitvoeren van tweerichtingsbinding om gegevens dynamisch te wijzigen, enz.

Voordelen:

  1. Ontwikkelaars hebben minder fouten omdat databinding is opgebouwd rond Angular-elementen.
  2. Verschillende MVC-elementen worden ondersteund.
  3. Werkt goed in Agile omgeving.

minpuntjes:

  1. Vue is eenvoudiger qua architectuur.
  2. De Angular API is enorm en er zijn veel concepten om te begrijpen.

jQuery

jQuery en JavaScript hebben een lange en sterke relatie. Met een MIT-licentie biedt deze bibliotheek applicatieontwikkelaars de mogelijkheid om kortere code te schrijven, waardoor de werkdruk wordt verminderd. Ondersteunt DOM-manipulatie en kan in combinatie met CSS van pas komen voor elke taak.

Voordelen:

  1. Het wordt veel gebruikt vanwege de snelle verwerking.
  2. Het gedraagt ​​zich in alle browsers hetzelfde.

minpuntjes:

  1. Veel functies die het werken met de DOM vergemakkelijken, zijn al native geïmplementeerd.

Reageren.js

Naast lid worden van de competitie is een bibliotheek voor het werken met UI React.js. Het is het hart en de ziel van IT-bedrijven en verschillende zakelijke websites. Deze JS-bibliotheek komt in het spel wanneer u het probleem van het gedeeltelijk vernieuwen van de inhoud van een webpagina moet oplossen. Een ideale tool voor grootschalige webprojecten. De functionaliteit van React.js draagt ​​bij aan de verbetering van de UI.

Voordelen:

  1. Gratis en open source.
  2. Kan reeds geschreven code gebruiken.
  3. Ondersteunt virtuele DOM-functionaliteit.

minpuntjes:

  1. Het Virtual DOM-algoritme is onnauwkeurig en traag.
  2. Vereist complexe asynchrone programmering bij communicatie met de server.

Node.js

Dit server-side JS-framework zal de volgende zijn. Responsieve, niet-blokkerende en snelle tool. GoDaddy en Paypal zijn slechts enkele van de grote namen die Node.js gebruiken. Het is het meest geschikt voor I/O- en streamingtoepassingen.

Voordelen:

  1. Dergelijke software kan op meerdere hosts draaien.
  2. Snelle servers inschakelen.

minpuntjes:

  1. Niet voor "niet-doorlopende" bewerkingen.
  2. Er is niets te doen zonder tests in Node.js.

Titanium

Titanium is zowel een SDK als een cloudplatform voor het bouwen/distribueren van software. Hoogwaardige, betaalbare en gemakkelijk te leren tool. Titanium is ontworpen voor platformonafhankelijke ontwikkeling, wat ideaal is voor het bouwen van rijke applicaties.

Voordelen:

  1. Gemakkelijk te leren en te implementeren.
  2. Hoogwaardige structuur.
  3. Voor desktop- en mobiele platformonafhankelijke software.

minpuntjes:

  1. Niet de meest efficiënte en originele benadering voor het maken van een gebruikersinterface, in tegenstelling tot React.

Ember.js

Een andere vertegenwoordiger van open source JavaScript-frameworks. Het belangrijkste voordeel ligt in de enorme repository die kan dienen als een vocabulaire voor applicatie-ontwikkeling. Vergemakkelijkt het maken van schaalbare afzonderlijke pagina's en biedt gegevensbinding in twee richtingen.

Voordelen:

  1. Eenvoudig te configureren in het systeem.
  2. Implementeert grote gebruikersinterfaces.

minpuntjes:

  1. Strakke projectstructuur.
  2. Er is geen standaard set UI-elementen.

We blijven de toonaangevende Javascript Frameworks voor 2011 vergelijken. In strikt wetenschappelijke methoden, waarbij subjectiviteit en onnodig expressisme worden vermeden, zullen deze wereldleiders, welnu, vandaag zullen we ze direct en in de directe nabijheid beschouwen - zes van 's werelds toonaangevende javascript-bibliotheken in afnemende volgorde van hun populariteit.

1e plaats:

Grootte: 155Kb (minimale versie - 72Kb), Licentie: MIT en GNU GPL, Laatste versie: 1.6 (3 mei 2011)

jQuery is de meest populaire en meest gebruikte JavaScript-bibliotheek die zich richt op JavaScript en HTML-interoperabiliteit. JQuery biedt ook een handige API om met Ajax te werken. Dit framework was een van de eerste die succesvol werd geïmplementeerd. Een ander geheim van de populariteit van deze bibliotheek is de implementatie van een zeer evenwichtige balans tussen goede functionaliteit en tegelijkertijd een succesvolle poging om een ​​redelijk compacte universele kernel te creëren. Als we hier de compromismogelijkheid toevoegen om heel eenvoudig de functionaliteit van de basisbibliotheek uit te breiden door extra plug-ins toe te voegen (waarvan het aantal nu meer dan 1000 is), dan is de output die we krijgen een echt zeer veelzijdig, flexibel en snel product.

Voor degenen die meer geavanceerde UI-effecten (UI, gebruikersinterface), zoals schalen, sorteren, ondersteuning voor slepen en neerzetten, en standaardwidgets zoals bladwijzers, schuifregelaar, voortgangsbalk, enz. willen, wordt het aanbevolen om de gerelateerde bibliotheek te gebruiken , dat zich juist specialiseert in grafische effecten en het creëren van een complexe gebruikersinterface.

Over het algemeen is jQuery zeer nuttig voor kleine tot middelgrote projecten, maar bij het ontwikkelen van grote projecten kan het problematisch zijn, omdat het leidt tot een gebrek aan ontwerp, hoewel het zeer productief is vanwege de eenvoudige inhoud en code. Welnu, de populariteit van het product blijkt in ieder geval uit het feit dat voormalige concurrenten, bijvoorbeeld xajax (xajaxproject.org), zelf uiteindelijk overstappen op het gebruik van jQuery, Microsoft het gezamenlijke gebruik van jQuery met zijn technologieën gaat populariseren en Nokia kondigt zijn voornemen aan om jQuery te integreren voor zijn mobiele widgets.

Digg, BBC, Dell, IsoHunt, Break.com, TinyPic, eMusic, Box.net, Yandex Maps.

SEO-zoekwoorden: jQuery-menu, oigukn, jQuery ajax-voorbeelden, javascript-referentie, oigukn

2de plaats:

Grootte: 278Kb (minimale versie - 56Kb), licentie: MIT, laatste versie: 1.7 (22 november 2010)


Het op één na populairste js-framework, dat het werken met Ajax en enkele andere geavanceerde js-functies aanzienlijk vereenvoudigt. Hoewel beschikbaar als een op zichzelf staande bibliotheek, wordt het het meest gebruikt door programmeurs naast Ruby on Rails, Tapestry, script.aculo.us en Rico. Vaak is het een nauwe integratie met het wijdverbreide Ruby on Rails dat ze de populariteit ervan proberen te verklaren (hoewel de reeds overwogen jQuery op plug-in-niveau ook kan communiceren met veel populaire platforms, bijvoorbeeld met dezelfde Ruby on Rails of PHP (jQuery. hohli.com)).

Vanuit ontwerpoogpunt is het raamwerk erg handig voor middelgrote projecten, omdat het naast de eenvoudige functionaliteit een elementaire manier biedt om klassieke OOP te emuleren. De prestaties zijn enigszins onstabiel, d.w.z. bij sommige bewerkingen kan het snel zijn, bij andere - de prestaties nemen merkbaar af. Prototype is een van de weinige frameworks die geen UI-componenten of UX-verbeteringen bevat - om dergelijke effecten te gebruiken, wordt het aanbevolen om de onderliggende bibliotheek te gebruiken - script.aculo.us (of Scripty2), die een groot aantal grafische effecten toevoegt, slepen en neerzetten, schuifregelaars, Ajax-editors, enz.

Voorbeelden van bekende sites op basis van dit framework: CNN, The New York Times, Apple, Fox News Channel, Last.fm, Twitter, Hakia.

SEO-zoekwoorden: java script, prototype downloaden, javascript js, js document, script js, framework vergelijking

3de plaats:

Grootte: 101Kb (min versie - 60Kb), licentie: MIT, laatste versie: 1.3 (11 oktober 2011)


MooTools is een modulair, objectgeoriënteerd framework. Het lijkt qua benadering van kernontwerp sterk op jQuery en Prototype - het bevat geen UI-besturingselementen en widgets, het is beperkt tot een minimale set effecten en functies.

Dit is een zeer goede JavaScript-bibliotheek - snel, klein, opgesplitst in veel kleine modules en goed gedocumenteerd. Naar onze unanieme mening is de code duidelijker en beter georganiseerd dan de leider, jQuery. Modulariteit is een apart gewaagd pluspunt: het is mogelijk om de bibliotheek die je nodig hebt voor een specifiek doel te compileren - hoewel er praktisch geen besparing in kilobytes is in vergelijking met jQuery. Er is een stereotiepe mening dat jQuery beter is voor beginners en MooTools voor ervaren programmeurs, terwijl we geloven dat MooTools beter is voor beide.

Bovendien bevat dit framework een zeer interessante plug-in MooTools.More.js, die eigenlijk iets meer is dan alleen een plug-in: het stelt je in staat om de mogelijkheden van bibliotheken van derden aanzienlijk te vergroten en heeft tegelijkertijd zeer interessante add- ons voor het manipuleren van arrays, datums, hashes, strings, enz. We waren erg onder de indruk van de mogelijkheid om de Engelse syntaxis van de mootools-taal zelf te lokaliseren in elke nationale taal, waardoor we er zo comfortabel mogelijk in kunnen programmeren, bijvoorbeeld in het Russisch.

Voorbeelden van bekende sites op basis van dit framework: MooTools wordt gebruikt in CMS Joomla, dus er zijn veel van dergelijke sites. Het wordt ook gebruikt door (World Wide Web Consortium)

SEO-zoekwoorden: mootools joomla, mootools jQuery, mootools js

4e plaats:


Bibliotheek Yahoo! UI-bibliotheek (YUI) is een set hulpprogramma's en besturingselementen geschreven in JavaScript en CSS voor het maken van interactieve webapplicaties met behulp van DOM-scripting, DHTML en Ajax-technieken. Er zijn twee soorten componenten beschikbaar in dit raamwerk: hulpprogramma's en besturingselementen. De hulpprogramma's vergemakkelijken de browserontwikkeling met betrekking tot DOM, DHTML en Ajax. Besturingselementen zijn een set kant-en-klare, zeer interactieve visuele elementen voor het ontwerpen van webpagina's. Al deze elementen zijn gemaakt en werken alleen aan de clientzijde en vereisen geen paginavernieuwing om ze te wijzigen. De hele bibliotheek wordt gedistribueerd onder een BSD-licentie en is gratis voor alle gebruikers. YUI is een samenwerking tussen vooraanstaande Yahoo-ingenieurs en -ontwikkelaars over de hele wereld. Nu is het een van de toonaangevende js-frameworks, volledig klaar voor industrieel gebruik, waar zeer geavanceerde UI- en UX-componenten worden geïntegreerd tot één geheel binnen één levering, waardoor een volledig compleet, onafhankelijk en universeel product ontstaat. Als we hieraan zijn zeer liberale licentie toevoegen, dan is de populariteit die deze bibliotheek terecht heeft gewonnen, vooral in commerciële ontwikkelingen en talrijke forks, waar deze als basis werd genomen, begrijpelijk.

Voorbeelden van bekende sites op basis van dit framework: Yahoo! Winkelen, Bebo, ImageShack, LinkedIn, Walmart.com.

SEO-zoekwoorden: download yui, nfrsch

5e plaats:

Grootte: 502Kb (minimale versie - 84Kb), licentie: GPLv3 en commercieel, laatste versie: 4.0 (26 april 2011)


Het project begon als een poging om de Yahoo! Gebruikersinterface, maar in dit stadium is het al een volledig origineel project, praktisch niet gerelateerd aan YUI. Drijvende kracht, oprichter en onbetwiste leider van het project is Jack Slotsum, een gerenommeerd specialist in JavaScript-programmeurs.

ExtJS is niet de meest productieve van de bestaande frameworks, het belangrijkste onderscheidende kenmerk is dat het de omgeving biedt die het dichtst bij klassieke programmering ligt, door zeer geavanceerde grafische middelen te implementeren voor het weergeven van en interactie met de gebruiker in de Web 2.0-omgeving. Vanaf Ext JS 3.0 is de bibliotheek logisch verdeeld in twee delen: Ext Core (een set JavaScript-functies waarmee u dynamische webpagina's kunt maken met uniforme verwerking in verschillende browsers en gedistribueerd onder de MIT-licentie) en Ext JS (een set van widgets voor het maken van gebruikersinterfaces met dubbele licentie onder GPL v3 of commerciële licentie).

Over het algemeen maakt ExtJS een zeer gunstige indruk - dit framework heeft echt geweldige grafische mogelijkheden. Dit is waar de lijn tussen web- en desktopapplicaties dunner wordt.

SEO-zoekwoorden: ext download, ext 4, ext js, ext 3, ext 2, ext yst pfdtltybz

6e plaats:

Grootte: 123Kb (minimale versie - 65Kb), licentie: BSD en AFL, laatste versie: 1.6.0 (15 maart 2011)


Nog een voorbeeld uit de lijst met populaire frameworks, die niet alleen de voordelen van zijn tegenhangers op veel manieren herhalen, maar ook zijn eigen kenmerken heeft. Een van de belangrijkste is dat ik een zeer serieuze poging wil noemen om volledige onafhankelijkheid te bereiken van elke specifieke js-interpreter, waarvoor de ontwikkelaars gigantisch werk doen om te testen en de meest universele en eenvoudige oplossingen te vinden. Daarom is het toepassingsgebied van dit framework zo breed mogelijk: dit zijn niet alleen gewone oplossingen aan de clientzijde, maar ook op de server en desktopcomputers, overal waar JavaScript kan worden uitgevoerd. Het tweede belangrijke technische kenmerk van Dojo is de ondersteuning voor het Multiple Points Of Entry-ontwerp, wat het veel voor de hand liggende technische voordelen geeft. Ik wil ook de Dojo-extensies voor Adobe AIR noemen, die zijn ontworpen om ontwikkelaars te helpen het volledige potentieel van het AIR-platform te gebruiken in toepassingen die de Dojo Toolkit gebruiken.

Voorbeelden van bekende sites op basis van dit framework: Dogo Toolkit wordt actief gebruikt in de beroemde PHP-extensie - Zend Framework, dus er zijn veel van dergelijke sites.

SEO-zoekwoorden: download dojo gedetailleerde handleiding, dojo zend dojo toolkit, dojo voorbeelden

In de finale, van dit opus, zal ik niet langer leiders beschouwen, maar gewoon - veelbelovende kaders. Zoals altijd in mijn artikelen, probeer ik niet alleen onder mijn voeten te kijken, terwijl ik tegelijkertijd triviale feiten vermeld, maar ook een beetje vooruit - zo ver mogelijk in de toekomst kijkend. Vanuit dit oogpunt is mijn aanvullende Top 3+ filosofische conclusie over het onderwerp (speciaal voor jonge js-programmeurs).