Les biblothèques javascript



    Définition : En programmation informatique, un framework ou structure logicielle est un ensemble cohérent de composants logiciels structurels, qui sert à créer les fondations ainsi que les grandes lignes de tout ou d’une partie d'un logiciel (architecture) Le terme framework est fréquemment utilisé dans des contextes différents mais il peut être traduit par cadre de développement. Les frameworks se présentent sous diverses formes, qui peuvent inclure tout ou partie des éléments suivants :

    un ensemble de classes généralement regroupées sous la forme de bibliothèques pour proposer des services plus ou moins sophistiqués

    un cadre de conception reposant sur les design patterns pour proposer tout ou partie d'un squelette d'applications

    des recommandations sur la mise en oeuvre et des exemples d'utilisation

    des normes de développement

    des outils facilitant la mise en œuvre


    L'objectif d’un frameworks : est de faciliter la mise en ouvre des fonctionnalités de son domaine d'activité. Il doit permette au développeur de se concentrer sur les tâches spécifiques à l'application à développer plutôt qu'à des tâches techniques récurrentes telles que :

    l'architecture de base de l'application

    l'accès aux données

    l'internationalisation

    la journalisation des événements (logging)

    la sécurité (authentification et gestion des rôles)

    le paramétrage de l'application



    La mise en oeuvre d'un framework permet notamment :

    De capitaliser le savoir-faire sans "réinventer la roue"

    D'accroître la productivité des développeurs une fois le framework pris en main

    D'homogénéiser les développements des applications en assurant la réutilisation de composants fiables, donc de faciliter la maintenance notamment évolutive des applications



    Les difficultés de la mise en œuvre :

    Le temps de prise en main du framework par les développeurs peut être plus ou long en fonction de différents facteurs (complexité du framework, richesse de sa documentation, expérience des développeurs, ...)

    Les évolutions du framework qu'il faut répercuter dans les applications existantes



    Distinction : Un framework se distingue d'une simple bibliothèque logicielle principalement par :

    Son caractère générique, faiblement spécialisé. Un framework peut néanmoins être spécialisé, sur un langage particulier, une plateforme spécifique, un domaine particulier : reporting,mapping, etc. ;

    Le cadre de travail (traduction littérale de l'anglais : framework) qu'il impose de par sa construction même, guidant l'architecture logicielle voire conduisant le développeur à respecter certains patterns ; les bibliothèques le constituant sont alors organisées selon le même paradigme.

    Paradigme : Un paradigme est une représentation du monde, une manière de voir les choses, un modèle cohérent de vision du monde qui repose sur une base définie.



    Le role des frameworks : Les frameworks sont donc conçus et utilisés pour modeler l'architecture des logiciels applicatifs, des applications web, des middlewares et des composants logiciels. Lesframeworks sont acquis par les informaticiens, puis incorporés dans des logiciels applicatifs mis sur le marché, ils sont par conséquent rarement achetés et installés séparément par un utilisateur final. La diversité de ces frameworks permet de répondre à de nombreux besoins. Le revers de la médaille est la difficulté de choisir celui ou ceux qui y répondront au mieux. Pour choisir un framework, les caractéristiques suivantes doivent être prises en compte :

    Adoption par la communauté

    La qualité de la documentation

    Le support (commercial ou communautaire)

    Le support par les outils de développement

    Le plus gros défaut des frameworks est lié à leur complexité : il faut un certain temps d'apprentissage pour avoir un minimum de maitrise et d'efficacité dans leur utilisation.

    Plusieurs types de frameworks : les frameworks peuvent être regroupés en plusieurs catégories :

    Technique : propose des services techniques récurrentes

    Structurel : propose la mise en place d'une architecture applicative

    Métier : propose des services fonctionnels

    Tests : propose des services pour automatiser les tests unitaires

    Exemple: MathJax est un script JS Open Source qui permet un rendu professionnel, accessible et simple des formules mathématiques, même les plus complexes.

    mathjax JS exemple

    Mieux Mathjax est 100% accessible et peut être visualisé par les screenreaders utilisés par les handicapés.Avec MathJax, pas de flash ou d’images générées. Il utilise des fontes web classiques et du CSS.
    Du coup, les formules résistent aux zooms et peuvent être « stylisées ».
    La syntaxe utilisée permet à vos lecteurs de copier les formules et de les coller directement dans des outils très utilisées comme Latex, Mathematica ou Mapple. Une menu contextuel est prévu à cet effet.
    L’utilisation de MathJax est relativement simple sur tout type de sites web, blogs, forums ou Wiki. Il suffit d’inclure le script JS dans vos pages et d’utiliser l’une des syntaxes proposées


    Téléchargez MathJax


    KineticJS est un framework Javascript qui permet de simplifier l’utilisation de Canvas du HTML5. Il permet de gagner du temps dans la réalisation d’animation sous Canvas. Il permet notamment de gérer des groupes et des calques afin de faciliter le travail de développement.
    KineticJS