Angular 2 est en version finale, Ninja Squad vous met le pied à l’étrier

Posté par . Édité par Benoît Sibaud et Davy Defaud. Modéré par ZeroHeure. Licence CC by-sa
11
19
sept.
2016
JavaScript

Ninja Squad proposait un e‐book sur Angular 2 quand ce framework n’était alors qu’en bêta (cf. la dépêche précédente Deviens un Ninja avec Angular 2 : un e‐book sans DRM à prix libre et en soutien à l’EFF).
Cette semaine, Angular 2 est — enfin — passé en version finale. Ce qui signifie qu’il est utilisable sans trop de crainte en production (plus de changements incompatibles) et qu’il est donc temps de s’y mettre sérieusement.

Après l’e‐book (à jour de la dernière version), Ninja Squad propose désormais un « pack pro », proposant de mettre en pratique la théorie apprise dans l’e‐book en construisant pas à pas une application complète, avec une batterie de tests fournie couvrant le code produit à 100 % : à chaque étape, on soumet sa solution, dont la qualité est analysée ; un score est donné ; on peut alors améliorer son implémentation, ou sauter les trois exercices suivants, ou même tricher en consultant la solution fournie respectant les bonnes pratiques et l’état de l’art ; on suit ainsi sa progression dans la trentaine d’exercices proposés (entre 3 et 5 jours de travail).

Cela devrait faire gagner des heures sur vos projets personnels et professionnels, en ayant toujours sous la main du code fonctionnel et à jour des dernières versions couvrant l’essentiel des cas d’usage d’une application d’entreprise (les mises à jour sont évidemment gratuites).

Tarif normal : 199 €.
Code de réduction pour les lecteurs de LinuxFr.org : LinuxFrRocks, -30 % pour les 20 premiers acheteurs.

La plate‐forme est testable gratuitement sur les six premiers exercices : https://angular2-exercises.ninja-squad.com/.

N. D. M. : la licence de l’e‐book (201 pages A4) interdit explicitement la vente, l’utilisation commerciale et la redistribution. Le site annonce actuellement environ 2 800 acheteurs et 114 packs pro, ayant généré 6 452 € de dons à l’EFF.

Sortie de Electron 1.0

Posté par (page perso) . Édité par Benoît Sibaud et tankey. Modéré par Benoît Sibaud. Licence CC by-sa
23
14
mai
2016
JavaScript

Electron permet de construire des applications de bureau multi-plateformes avec les technologies du web (HTML, CSS et JS). Il était initialement développé par Github pour son éditeur de texte Atom et est maintenant un projet à part entière. Il vient d'atteindre la version 1.0, signe d'une certaine maturité.

Electron 1.0

Node.js passe la sixième vitesse

Posté par (page perso) . Édité par M5oul, Florent Zara, palm123 et Benoît Sibaud. Modéré par Florent Zara. Licence CC by-sa
37
12
mai
2016
JavaScript

Node.js est la principale implémentation du langage JavaScript côté serveur. Elle utilise V8, le moteur JavaScript de Google Chrome, et vient d’atteindre la version 6.0.0 le 26 avril 2016.

Logo Node.js

La montée de version de V8 vers la version 5.0 a d'ailleurs permis une meilleure prise en charge d'ES6, avec 93 % des fonctionnalités couvertes. Parmi les autres nouveautés, on trouve des performances accrues (notamment pour le chargement des modules), une meilleure stabilité et utilisabilité des API JavaScript (notamment Buffer et File System).

Peu de temps après la sortie de la version 6.0.0, des failles OpenSSL ont été annoncées, ce qui a conduit à la sortie d'une version 6.1.0.

Et si JavaScript allait droit dans le mur ?

Posté par (page perso) . Édité par Davy Defaud, patrick_g et Pierre Jarillon. Modéré par patrick_g. Licence CC by-sa
37
4
mar.
2016
JavaScript

Cette dépêche pose la question de l’avenir du JavaScript. Celui‐-ci continue de gagner en popularité, mais aussi en complexité. L’auteur du journal a étudié d’autres langages encore peu connus (Elixir, Elm, Pony, Oden et Crystal) et ceux‐ci lui ont fait sauter aux yeux les défauts du JavaScript. Il s’interroge donc sur le futur de ce langage.

Dans les commentaires du journal, de nombreux développeurs ont fait un retour sur leur expérience. Certains apprécient le JavaScript (souvent, un sous‐ensemble de ce langage qui va à l’encontre des dernières nouveautés). D’autres, souhaiteraient fortement s’en débarrasser, mais quasiment tous sont d’accord sur le fait qu’il va rester grâce à son monopole sur les navigateurs).

Certains ont encouragé à essayer leur langage de prédilection : Go, OCaml, ClojureScript, etc.

Enfin, on peut également retrouver un certain espoir avec WebAssembly (le successeur d’asm.js), qui permettrait à de nombreux langages d’être compilés vers la plate‐forme Web.

Sortie de iTowns v1.0 : framework web pour la donnée géographique 3D

Posté par (page perso) . Édité par tankey et palm123. Modéré par tankey. Licence CC by-sa
27
20
fév.
2016
JavaScript

Le projet iTowns est heureux d'annoncer la sortie de la première version OpenSource de iTowns, un nouveau framework de visualisation de données 3D géospatiales.

iTowns est un framework web écrit en Javascript/WebGL basé sur THREE.js pour la visualisation de données géographiques 3D, permettant également des mesures précises en 3D. Son premier but est la visualisation d'images type "street view" et de nuages de points LIDAR terrestre, mais il supporte bien d'autres types de données.

Aperçu de iTowns

La version 1.0 est la première version OpenSource de iTowns, publiée sous license CeCILL-B. Il s'agit du cœur de l'application originelle iTowns développée ces dernières années au laboratoire de recherche MATIS de l'IGN. L'IGN a travaillé ces derniers mois sur la transition de cet outil depuis un logiciel interne vers un projet ouvert et libre.

Deviens un Ninja avec Angular 2 : un ebook sans DRM à prix libre et en soutien à l'EFF

Posté par . Édité par Benoît Sibaud, Nÿco et Xavier Teyssier. Modéré par Ontologia. Licence CC by-sa
29
24
jan.
2016
JavaScript

Deviens un Ninja avec Angular 2 : un ebook sans DRM à prix libre et en soutien à l'Electronic Frontier Fondation (EFF).

Ninja Squad propose un livre permettant d'apprendre à maîtriser le framework web Angular 2. Sur le modèle des Humble Bundle, cet ebook est proposé à prix libre, et en soutien optionnel à une association : l'EFF, qui défend un Internet libre dans le monde.

Si Angular 2 est encore en beta, cet ebook vous donnera toutes les clés pour connaître ses prérequis (ECMAScript 6, TypeScript, Web Components), découvrir sa philosophie (ce qui a évolué depuis la version précédente AngularJS), et construire une véritable application.

Les mises à jour de l'ebook seront fournies gratuitement.

NdM: la licence interdit explicitement la vente, l'utilisation commerciale et la redistribution.

ECMAScript 2015 est approuvé

Posté par . Édité par palm123, Kaane, BAud, ZeroHeure et DontShootMe. Modéré par Nils Ratusznik. Licence CC by-sa
Tags : aucun
55
29
juin
2015
JavaScript

La spécification ECMAScript 6e édition a été approuvée le 17 juin 2015 sous le nom ECMAScript 2015.

Parmi les nouveautés, il faut noter l'arrivée des classes, des modules, des fonctions fléchées, des boucles for-of, des générateurs, des proxies et de plusieurs nouvelles méthodes.

RapydScript, le JavaScript qui se déguise en Python

Posté par . Édité par Nils Ratusznik, palm123, Nÿco, ZeroHeure, Ontologia et tankey. Modéré par ZeroHeure. Licence CC by-sa
28
29
avr.
2015
JavaScript

RapydScript est un langage qui se compile en JavaScript, avec une syntaxe et des fonctionnalités qui se veulent proches de Python. Pour ceux qui connaissent coffeeScript, RapydScript est pareil mais inspiré par la lisibilité de Python. Il ne s'agit pas d'une nouvelle tentative de faire tourner Python dans le navigateur, comme par exemple Pyjamas. RapydScript reste du JavaScript, il n'introduit aucune limitation ni surcoût. Il paraît juste plus propre et donne l'impression d'écrire du Python.

Ses quelques fonctionnalités :

  • comme CoffeeScript, RapydScript répare les incohérences et inconsistances de JavaScript ;
  • un système de classes similaire à Python ;
  • support des listes en compréhensions ;
  • des exceptions comme en Python ;
  • des modules, plus flexibles que les modules Python ;
  • des arguments optionnels pour les fonctions, comme en Python ;
  • des décorateurs (sans arguments) ;
  • un système d'héritage plus puissant que celui de Python et plus clair que celui de JavaScript ;
  • le support d'objets (dictionnaires) avec fonctions anonymes, comme en JavaScript ;
  • la possibilité d’appeler n'importe quelle fonction, méthode, code JavaScript ou appel au DOM de n'importe quel framework, sans syntaxe spéciale ;
  • le choix entre les méthodes et fonctions à la Python ou leurs équivalents JavaScript ;
  • RapydScript s'auto-compile, c'est à dire que le compilateur est lui-même écrit en RapydScript et compile en JavaScript.

Worldwide Meteor 1.0 Day le 6 novembre 2014 chez Numa (Paris)

Posté par (page perso) . Édité par ZeroHeure et Benoît Sibaud. Modéré par Ontologia. Licence CC by-sa
10
5
nov.
2014
JavaScript

Rejoignez nous à Paris jeudi 6 novembre vers 18h30 chez Numa pour un événement unique : le Worldwide Meteor 1.0 Day ! Meteor est une plate‐forme open source facilitant le développement d’applications modernes Internet et mobiles en JavaScript.

Toute la communauté Meteor organise des meetups simultanément à travers le monde le 6 novembre ; ouvert à tous ceux qui sont intéressés à en apprendre plus sur la plate-forme Meteor.

Vous aurez la chance de rencontrer des développeurs d'applications réalisées avec Meteor, jouer avec les nouveaux exemples et tutoriels ainsi que de participer à une session de questions/réponses via Hangouts avec un développeur du Meteor Development Group et d'experts de la communauté.

Meteor 1.0

Posté par (page perso) . Édité par Davy Defaud, BAud, Nils Ratusznik, palm123 et Pierre Jarillon. Modéré par patrick_g. Licence CC by-sa
21
31
oct.
2014
JavaScript

Meteor est une plate‐forme open source facilitant le développement d’applications modernes Internet et mobiles en JavaScript. Il offre des fonctions de mise à jour automatique des interfaces permettant le travail collaboratif temps réel et des interfaces intuitives assurant la même expérience utilisateur qu’une application de bureau. Ces applications peuvent s’exécuter dans un navigateur Web, ainsi que sur tous les appareils mobiles (applications natives avec Cordova/PhoneGap).

Meteor 1.0 est sorti hier soir, annoncé par Matt DeBergalis du MDG (Meteor Developpement Group). Cette version assure la stabilité de l’API, qui jusqu’alors évoluait fortement entre chaque version.

Voyez sa description en seconde partie de l’article…

Un ebook sur AngularJS à prix libre et pour une bonne cause

Posté par . Édité par Benoît Sibaud. Modéré par patrick_g. Licence CC by-sa
Tags : aucun
18
4
sept.
2014
JavaScript

Devenez un Ninja avec AngularJS : un ebook à prix libre et en soutien à une association caritative.

Ninja Squad propose un livre permettant de découvrir ou d'approfondir ses connaissances du framework web AngularJS. Sur le modèle des Humble Bundle, cet ebook est proposé à prix libre, et en soutien optionnel à une association caritative : Docteur Souris, qui fournit des ordinateurs et des accès internet sécurisés pour les enfants hospitalisés.

Si AngularJS est un framework web extrêmement puissant, il est aussi très exigeant. Il permet d'atteindre des vitesses de développement inégalées, pour peu que l'on prenne le temps de le maîtriser.
Ce livre devrait vous permettre de comprendre en détails tous les principes et pratiques d'AngularJS, des bases aux dernières nouveautés introduites par la version 1.3.

Intercooler.js

Posté par (page perso) . Édité par Benoît Sibaud. Modéré par ZeroHeure. Licence CC by-sa
Tags :
20
5
juil.
2014
JavaScript

Intercooler.js est une énième, mais nouvelle bibliothèque JavaScript pour les sites web orientés client lourd.

Elle propose un mécanisme déclaratif assez intéressant : le comportement de l'interface est codé dans les attributs de balises HTML standard.
Elle simplifie la vie du développeur en évitant de devoir intégrer des évènements sur des sélecteurs JQuery (ou ses concurrents) : celui-ci a le choix de provoquer un appel AJAX ou un appel interne sur une fonction javascript, de manière déclarative dans le code HTML.

Intercooler est basé sur le concept de Partial View Controller. Dans cette approche, le serveur renvoi des fragments de HTML à intégrer dans l'interface.

Proxy HTTP(s) gatejs

Posté par . Édité par Xavier Teyssier, Benoît Sibaud, Pierre Jarillon et Christophe Guilloux. Modéré par ZeroHeure.
20
20
juin
2014
JavaScript

gatejs est un nouveau mandataire/proxy HTTP(s) (forward & reverse) qui a pour vocation de remplacer squid, nginx, varnish ou encore apache, dans leurs fonctions de proxy (forward & reverse). Il est publié sous licence GPLv3.

Il est développé en JavaScript (2/3) et en C++ (1/3). Il est prévu que la proportion de C++ se réduise au fil du temps. Ce proxy utilise le moteur Javascript V8 et nodejs.

Il a été initialement conçu pour offrir plus de flexibilité sur l'interception et le traitement d'informations en HTTP.

Pour ceux qui ne sont pas pro-JavaScript, il est important de préciser que les performances de gatejs sont proches, voire dans certains cas, supérieures à nginx.

De plus, l'utilisation de Javascript permet d'augmenter la lisibilité des codes, de les factoriser et de renforcer la sécurité, surtout pour des opérations complexes.

Les configurations sont écrites au moyen de la notation d'objets Javascript (JSON).

Retour d'expérience sur sql.js

Posté par . Édité par Nÿco, ZeroHeure, palm123, Benoît Sibaud et Nils Ratusznik. Modéré par tankey. Licence CC by-sa
33
15
juin
2014
JavaScript

J'aimerais parler ici de mon expérience lors du développement de sql.js, un port de SQLite en JavaScript. Pour ceux qui ne s’intéressent pas aux technologies du web, la deuxième partie de cette dépêche pourrait quand même vous intéresser, on va parler de SQLite.

Note : cette dépêche a initialement été postée en tant que journal.

Atelier Back to Basics : Javascript

9
28
mai
2014
JavaScript

L’association Silex Labs propose une série de quatre ateliers pour travailler ensemble avec des outils devenus incontournables et partager des retours d’expériences sur les bonnes pratiques d’organisation et de travail collaboratif. Le prochain aura lieu le mercredi 28 mai de 19h à 21h à l’IESA Multimédia (Paris) sur le thème Javascript (après ceux sur HTML5 et CSS3, et avant celui sur Node.js le 18 juin).

Titre de l'image

NdM : l'inscription coûte 15 € (ou une adhésion annuelle à Silex Labs couvrant tous les ateliers).

La troisième rencontre de la communauté JavaScript de Lille - Jeudi 25 juillet 2013

Posté par . Édité par Benoît Sibaud, Nils Ratusznik, NeoX, Nÿco et Xavier Teyssier. Modéré par Xavier Teyssier. Licence CC by-sa
Tags : aucun
6
22
juil.
2013
JavaScript

Tous les passionnés de JavaScript ont rendez-vous au CoworkingLille pour discuter de JavaScript. L'accueil des participants se fera dès 19H30 au CoworkingLille au 10 rue de la Piquerie 59000 Lille.

Dans la communauté JavaScript les promises (en français, promesse, engagement) font l'actualité. Selon le Wiki CommonJS, une promise, en JavaScript, est un objet représentant une valeur qui pourrait être retournée par l'exécution d'une opération unique (souvent asynchrone). Nicolas Froidure nous fera, lors de cette rencontre, une présentation de cette nouvelle techno et de son expérience acquise pendant le développement de Liar.

Vous pouvez trouver sur ce lien la spécification des promises (polyfill inside).

Cette présentation sera suivie d'une table ronde sur NodeJS, la production et les outils existants. Nous aborderons les différentes approches :

Tous les retours d'expériences sont les bienvenus avec des exemples d'application en production à l'appui.

ChtiJS sur Twitter : @chtijs

Apéro Web à Nancy

Posté par . Édité par Xavier Claude, Nÿco et Benoît Sibaud. Modéré par patrick_g. Licence CC by-sa
Tags : aucun
7
8
juil.
2013
JavaScript

Après Bash, un nouvel Apéro Web se déroulera à Nancy le 18 Juillet 2013 au Classico (1 Rue Général Hoche) à 19h. Le but de ces évènements est de partager, discuter sur ces thèmes autour du Web, dans une ambiance agréable. Le thème de la soirée du 18/07 sera Node.js :

« JavaScript sort de son navigateur pour vous en mettre plein les yeux avec Node.js. Plus qu'un serveur web de nouvelle de génération, Node.js est une plateforme avec une communauté et des outils autant destinés au serveur qu'au client.

Durant cette introduction, les spécificités de Node.js seront décortiquées : event-driven model, non-blocking I/O, CommonJs, packages, etc. Puis, nous vous présenterons un des outils de l'univers node: Grunt.js, le task-runner sortira de son terrier pour vous aider à automatiser vos projets Javascript. »

SlimerJS 0.6

Posté par (page perso) . Édité par Nÿco, tuiu pol et Xavier Teyssier. Modéré par Nÿco. Licence CC by-sa
24
3
mai
2013
JavaScript

SlimerJS est un navigateur web « scriptable », utilisable en ligne de commande. Par le biais d'un script Javascript, il vous permet de charger une page, de « cliquer » dessus, de manipuler la page, d'en extraire des données, etc. SlimerJS est en fait un navigateur similaire à PhantomJS, excepté qu'il est basé sur Gecko, le moteur de rendu de Firefox, au lieu de WebKit. Et il propose une API identique à celle de PhantomJS. Dans cette première version stable de SlimerJS, l’implémentation de cette API n'est pas 100% terminée, il est toutefois déjà possible de réaliser pas mal de chose.

NdM : Licence MPL 2.0 (http://mozilla.org/MPL/2.0/), sauf certains composants qui ont été spécifiquement positionnés dans des licences différentes type MIT (voir https://github.com/laurentj/slimerjs/blob/master/LICENSE)

jQuery 2.0

Posté par (page perso) . Édité par Davy Defaud, Benoît Sibaud, Florent Zara, Christophe Guilloux et Nÿco. Modéré par Christophe Guilloux. Licence CC by-sa
Tags : aucun
35
24
avr.
2013
JavaScript

jQuery est une bibliothèque JavaScript qui a pour but de simplifier l’utilisation de ce même langage dans les pages Web (notamment d’abstraire les différences entre navigateurs). L’opérateur de sélection $ est sans doute l’élément le plus connu de la bibliothèque.

logo jQuery

La principale nouveauté de cette version est l’abandon de la prise en charge des versions 6, 7 et 8 d’Internet Explorer. La bibliothèque est aussi de 12 % plus légère, ce qui accélère le chargement des pages Web qui l’utilisent. Et si l’on veut l’alléger plus encore, il est possible de construire une version personnalisée en retirant, ou pas, jusqu’à 12 modules différents.

Au niveau des fonctionnalités, elles sont, sauf bogues, équivalentes à celles de la version 1.9 ; et il est, pour l’instant, prévu que la compatibilité entre les branches 1.x et 2.y soit conservée. Ainsi la version 2.1 sera compatible avec la version 1.11. La version 1.10 étant réservée pour inclure les corrections de bogues et les différences qui ont été constatées pendant les bêtas des versions 1.9 et 2.0.

EditableGrid, des nouvelles du projet

Posté par (page perso) . Édité par Florent Zara, Nÿco et Benoît Sibaud. Modéré par Florent Zara. Licence CC by-sa
37
24
avr.
2012
JavaScript

Il y a un an et demi, j'avais publié ce billet concernant une bibliothèque Javascript nommée Editablegrid. Pour rappel, cette bibliothèque permet de créer facilement des tableaux éditables. C'est l'outil idéal pour gérer des données provenant d'une base de données par exemple.

Depuis la première publication le projet a bien évolué et la bibliothèque s'est enrichie de nouvelles fonctionnalités, entre autres grâce aux retours des utilisateurs. Mais il y a un autre grand changement : la licence. Le projet est désormais publié sous double licence MIT et GPL afin de permettre son utilisation dans des projets non-GPL.

Node.js passe en version 0.6.0 et arrive sous Windows

Posté par (page perso) . Modéré par Nÿco. Licence CC by-sa
27
5
nov.
2011
JavaScript

Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d’entrées‐sorties, notamment réseau. En pratique, il se compose :

  • d’un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d’une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d’un ensemble de conventions : par exemple, les fonctions de retour indiquent toujours en premier paramètre si l’appel s’est bien passé, et dans le cas contraire, quelle a été l’erreur ;
  • et d’un exécutable, « node », pour lancer tout ça.

La version 0.6.0 est sortie aujourd’hui et apporte quelques nouveautés de taille (plus de détails en seconde partie) :

  • la prise en charge de Windows en utilisant les I/O Completion Ports (IOCP) ;
  • un répartiteur de charge entre plusieurs processus Node.js intégré ;
  • des moyens de communications entre des processus Node.js plus efficaces ;
  • des améliorations du débogueur en ligne de commande ;
  • des bindings pour la zlib ;
  • la mise à jour de V8, passant de la version 3.1 à la 3.6.

La prise en charge de Windows, sans dégrader les performances pour les UNIX, a pris plus longtemps que prévu. Cela a fortement retardé la sortie de cette version, mais Ryan Dahl, son créateur, souhaite sortir la prochaine version stable de Node.js (la v0.8.0) pour janvier 2012.

Dart va‐t‐il remplacer JavaScript comme langage dans les navigateurs ?

51
11
oct.
2011
JavaScript

Google a publié une première version, dite « preview release », de son nouveau langage de programmation : Dart. Google espère que ce langage va remplacer JavaScript comme langage de référence dans les navigateurs.

Un mémo interne qui a fuité nous informe des intentions de Google. Les ingénieurs de Google, et tout particulièrement l’équipe travaillant sur V8, considèrent que le JavaScript est une impasse : il serait trop lent, très mal adapté pour des développements de grande taille et souffrirait d’erreurs de jeunesse irréparables. Google a donc décidé de proposer son propre langage, Dart, dont la première version vient tout juste de sortir.

Pour le moment, les programmes écrits en Dart peuvent être compilés en JavaScript pour tourner dans les navigateurs. D’ici peu, Chrome devrait être en mesure d’exécuter directement du code en Dart, étape nécessaire pour des performances accrues. Les plans de Google sont ensuite de proposer son moteur aux développeurs des autres navigateurs, mais il semble peu probable dans l’immédiat que ceux‐ci acceptent.

Dart se distingue de JavaScript par :

  • le typage statique optionnel ;
  • les classes et interfaces (par opposition aux prototypes du JS) ;
  • l’obligation d’utiliser les « ; » pour séparer les instructions ;
  • une bibliothèque standard plus riche ;
  • la possibilité d’être outillé plus facilement (meilleure prise en charge pour l’IDE et outils de ré‐usinage par exemple).

Pour autant, Dart a reçu un accueil très froid de la part des développeurs. Par exemple, Brendan Eich, le créateur de JavaScript, considère qu’il est plus simple et plus efficace de faire évoluer le JavaScript que de développer un nouveau langage.

3 bibliothèques javascript à découvrir : D3, Sugar et Batman

27
30
août
2011
JavaScript

D3.js

D3.js est une bibliothèque javascript légère et libre qui permet de manipuler et représenter graphiquement des documents en s'appuyant sur leurs données. Elle est une réécriture de protovis et s'appuie sur des technologies comme HTML5, CSS3 et SVG pour afficher des données et interagir avec elles. Je vous encourage à aller voir les exemples pour voir de quoi est capable d3.js.

Sugar.js

Sugar.js est une bibliothèque qui vise à faciliter la manipulation des objets natifs Javascript et à combler les différences entre navigateurs. Elle ajoute des méthodes bien pratiques aux entiers, chaînes de caractères, fonctions, tableaux, objets, dates... En revanche, elle ne concerne ni les requêtes AJAX ni le DOM (jQuery fait ça très bien).

Batman.js

Batman.js est un petit framework MVC sous licence MIT. Il est écrit en CoffeeScript et peut donc naturellement être utilisé en Javascript afin de structurer une application web qui ferait un fort usage du JS. S'inspirant des principes de Rails (convention over configuration, etc.), il doit permettre de développer rapidement des applications web mono-page.

Découvrez Backbone.js 0.5.0 pour organiser votre code JavaScript

Posté par (page perso) . Modéré par tuiu pol. Licence CC by-sa
34
3
juil.
2011
JavaScript

Backbone.js est un framework JavaScript sous licence MIT que Jeremy Ashkenas a écrit dans le cadre de son travail chez DocumentCloud. Il permet d’apporter de la structure à des applications JavaScript grâce à une bibliothèque qui ne fait pourtant qu’un millier de lignes de code en tout.

Pour cela, il apporte la séparation du code en classes :

  • les modèles et collections sont responsables de la logique métier et peuvent également servir pour la persistance, aussi bien locale avec localStorage que distante via des API RESTful en JSON. Les modèles proposent des enregistrements clé‐valeur et des événements associés. Les collections offrent un catalogue bien pratique de méthodes d’énumération : ce sont les méthodes map, reduce, filter importées depuis underscore.js, une des rares dépendances de Backbone.js ;
  • les vues font la liaison entre les modèles et le DOM. Elles mettent à jour le code HTML en fonction des modifications des modèles et, dans l’autre sens, peuvent gérer les événements du DOM ;
  • le routeur permet de modifier l’URL de la page (le #fragment ou, depuis la version 0.5.0, le chemin complet grâce à pushState) et de retourner à l’état associé quand la page est rechargée. Cela permet d’avoir des URL qui peuvent être mises en favoris ou partagées.

Backbone.js a atteint la version 0.5.0 il y a quelques jours et est déjà utilisé sur des projets notables comme Basecamp Mobile.

Sortie de Node.js 0.4.0

Posté par (page perso) . Modéré par patrick_g.
16
12
fév.
2011
JavaScript
Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d'entrées-sorties, notamment réseau. En pratique, il se compose :
  • d'un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d'une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d'un ensemble de conventions : par exemple, les fonctions de retours indiquent toujours en premier paramètre si l'appel s'est bien passé et dans le cas contraire, quelle a été l'erreur ;
  • et d'un exécutable, node pour lancer tout ça.

La version 0.4.0 sortie cette semaine est la deuxième stable (c'est comme pour l'ancien mode de développement du noyau Linux : le numéro mineur est pair pour les versions stables et impair pour les versions de développement). Les principaux changements depuis la version stable précédente (la version 0.2, pour ceux qui suivent) sont les suivants :
  • nouveau client HTTP, avec une API plus simple et la gestion d'un réserve (pool) de connexions ;
  • refonte du module TLS/SSL ;
  • augmentation des performances, grâce à l'allocation plus rapide des tampons mémoire (Buffer) ;
  • meilleure prise en charge des gestionnaires de paquets comme npm, grâce à l'amélioration de require() ;
  • une mise à jour de V8 pour la version 3.1.2 ;
  • un débogueur fonctionnel, mais encore très limité pour le moment ;
  • un module os qui expose des informations sur le système ;
  • et, bien sûr, plein de corrections de bogues.