XML van de programmeertalen: JavaScript

 
21 februari 2011

Niks Java EE, niks Dotnet: JavaScript is de taal waarin we gaan ontwikkelen met z’n allen over een paar jaar. Waar we de afgelopen jaren een grote versplintering hebben gezien aan programmeertalen denk ik dat we de komende jaren zullen gaan consolideren en standaardiseren, en wel naar een oude en vertrouwde – door velen verguisde – taal: JavaScript.

Waarom deze stellige uitspraken? Ik constateer de volgende ontwikkelingen:

  • Data standaardisatie is extreem krachtig gebleken heeft XML ons geleerd, we hebben ook zo’n portable taal nodig tussen client & server;
  • Binnen de browser is JavaScript (eigenlijk: ECMAScript) al meer dan 10 jaar de de-facto standaard;
  • Server-side JavaScript is sterk in opkomst het laatste jaar: niet in de laatste plaats door de V8 engine van Google (http://code.google.com/p/v8/);
  • JavaScript bevat al vele jaren al die features die Java 7 weer net niet gaan halen (lambda’s bijvoorbeeld);
  • Anders dan proprietary talen / platformen als .NET of Java EE is JavaScript volledig open en in vele implementaties op vele platformen beschikbaar;
  • Tooling wordt beter en beter, en dynamische talen zijn zowiezo na Ruby, Python en PHP al jaren aan een opmars bezig;
  • Er verschijnen naast veel client-side libraries (JQuery bijvoorbeeld) ook meer en meer server-side smaken (Node.js).

Kortom, mij lijkt maar één conclusie mogelijk: JavaScript wordt meer en meer omarmd en geeft ons de mogelijkheid om ook eindelijk te gaan standaardiseren voor wat betreft programmacode, waar XML deze boost heeft gebracht voor de datagedreven wereld. Of heeft iemand een beter alternatief?


Werken met ?
Kijk dan bij onze mogelijkheden voor starters en/of ervaren IT'ers.


Categorieën: Architectuur, Development, Overige talen en platformen


Reacties (6)

  • Ah, ik snap hem.. ik las hem anders, maar heb hem nu door.

    Volgens mij heb je daar zeker een mooi idee te pakken. Wordt denk ik al wel sporadisch toegepast tussen client en server in dezelfde applicatie (als je je validatieregels in javascript schrijft en zonder vertaalslag (à la GTW) zowel op de server als de client kunt gebruiken, is dat natuurlijk best wel handig).

    Weet je nog andere goede javascript resources naast die van Douglas?

    Geplaatst op 28 februari 2011 om 10:22 Permalink

  • Inderdaad, voor een beter beeld van de taal zelf is JavaScript: The Good Parts een mooi startpunt. Overigens is inheritance in mijn optiek ook overrated en een teveel gebruikte constructie (‘golden hammer’). Geniet maar gebruik met mate. Dat werkt de wat kromme manier die binnen JavaScript aanwezig is ook in de hand, dat is dan misschien juist een positieve eigenschap :).

    Mijn punt is echter niet direct dat JavaScript nu de perfecte taal zou zijn, meer dat het blijkbaar tot een soort standaard is verworden die ons in staat stelt om code portable te maken tussen diverse componenten en zelfs platformen. In de data-wereld is XML deze (ook misschien niet ideale) standaard geworden; zou het niet fantastisch zijn als we als vakgenoten nu ook een soort code-serialization naar één standaard zouden kunnen bedenken? JavaScript is in mijn optiek door de grote penetratie en de krachtige features de beste kandidaat hiervoor.

    Geplaatst op 27 februari 2011 om 14:30 Permalink

  • Andries Nieuwenhuize schreef:

    JavaScript is een taal waar ik erg enthousiast van wordt. Zeker gezien de functionele mogelijkheden. Oo is een stuk minder maar het blijft dan toch ook een scripttaal. Ik denk echter dat een loosely typed taal niet meer kan tegenwoordig. De kwaliteitseisen zijn daarvoor te hoog. Ooit bij Sogyo een erg lastige bug gehad: bleek dat een int bij een string werd opgeteld. (4 + “55” = 455). Daarnaast kent het niet zulke bijzondere controlestructuren. Je zult nog steeds met een for-loop aan de slag moeten. jQuery zou eigenlijk build-in moeten zijn, zoals linq in dot-net. Kortom, JS niet krachtig genoeg om op een server te draaien. Maar kent wel interessante language-features, zoals JSON-formaat e.d.. Zou F# met Silverlight wel het juiste duo zijn…

    Geplaatst op 23 februari 2011 om 9:27 Permalink

  • Even voor de duidelijkheid: ik vind dat je best leuke dingen kunt doen met JavaScript. En de vorm van inheritance die in javascript gebruikelijk is, prototyping, is niet op alle punten elegant uitgewerkt, maar wel krachtig. En je kunt er prima functioneel in programmeren.

    Heb er zelf jaren behoorlijk intensief in gewerkt, maar niet direct in de taal zelf verdiept, omdat ik dacht dat het een beetje een kreupel knooptaaltje was (dat was toen ook wel meer zo). Heb recent “Javascript: the good parts” gelezen, dat helpt wel om de elegantie te zien. En met de huidige snellere engines, zelfs op de server. Blijft wel dat het op sommige plekken echt een rafelig taaltje is en niet altijd hetzelfde ondersteund wordt in alle engines.

    Geplaatst op 22 februari 2011 om 0:07 Permalink

  • De broer van schreef:

    Inheritance werkt ook zo fijn in javascript.

    Geplaatst op 21 februari 2011 om 23:14 Permalink

  • De XML van de programmeertalen?

    Je bedoelt: JavaScript is just like violence, if it ain’t working, you aren’t using enough of it?

    Geplaatst op 21 februari 2011 om 22:41 Permalink