IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AngularJS Discussion :

Intérêt de AngularJS ? [Infos]


Sujet :

AngularJS

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 41
    Points : 30
    Points
    30
    Par défaut Intérêt de AngularJS ?
    Bonjour à tous,

    On entend de plus en plus parler du framework javascript AngularJS.

    Selon vous:

    • Quelle est sa réelle valeur ajoutée par rapport aux autres frameworks?

    • Dans quels types d'architecture son choix serait-il pertinent?

    • Cela vaut-il le coup d'investir dans son apprentissage?

    • Quelle est la courbe d'apprentissage?

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Il y a pas mal d'articles et de blogs sur le net qui ont répondu à ces questions avec beaucoup de détail et d'argumentaire. Il y a toujours une part de subjectivité quelque-part, difficile de rester parfaitement objectif sur l'intérêt d'un framework qui vient chambouler notre façon de concevoir des sites. Enfin, vu que la question commence par "Selon vous", j'imagine que je peux répondre en quelques lignes

    Quelle est sa réelle valeur ajoutée par rapport aux autres frameworks?

    Il faut voir de quels autres frameworks tu parles. AngularJS est un framework JavaScript qui incite à délocaliser une grande partie de sa logique applicative côté client: data-binding, routing, contrôleurs etc... Donc soit la question est plus large (client riche ou serveur riche), soit il faut le comparer avec d'autres frameworks JS similaires. Et là il y en a trois qui me viennent à l'esprit : Ember, Backbone et Knockout.js

    Dans quels types d'architecture son choix serait-il pertinent?

    Je parlerais plutôt de types d'applications : celles dites en temps réel, avec beaucoup d'opérations et de saisies client, et des vues mises à jour dynamiquement : webmail, réseau social, dashboard, ce genre de choses ; côté serveur il n'y a pas beaucoup de requirements, mais j'aurais tendance à vouloir mettre une base NoSQL.

    Cela vaut-il le coup d'investir dans son apprentissage?

    Ca vaut le coup de passer une soirée à faire les tutos pour savoir à quoi on a affaire, et de se faire sa propre idée dessus.

    Quelle est la courbe d'apprentissage?

    D'après ma propre expérience, en deux temps : progression rapide au début car on se sert que d'éléments triviaux (typiquement le data-binding avec un seul contrôleur). Ensuite si on veut aller plus loin et maîtriser les directives, le routing, gérer pas mal de contrôleurs etc... ça se corse vite.


    PS si ça t'intéresse : j'ai codé en live un jeu avec AngularJS, je fais pas mal de commentaires à l'oral sur une vidéo de 45 minutes. Je ne survole qu'une toute petite partie du framework, mais bon, tu peux apprendre quelques trucs :

    One Web to rule them all

  3. #3
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Points : 3 325
    Points
    3 325
    Par défaut
    Bonjour,

    Citation Envoyé par ikane Voir le message
    Quelle est sa réelle valeur ajoutée par rapport aux autres frameworks?
    Le gros point fort est qu'il est très complet. On peut même se passer de jQuery avec Angular (elements) qui contient un "jQuery lite".
    Un des reproches fait aux applications HTML5 est la multiplication des frameworks utilisés pour coder une seule application, Angular répond bien à cette problématique.

    L'intégration des tests est aussi un gros avantage dans un contexte industriel dans lequel ils sont souvent nécessaires et imposés.
    Au final le code peut être très "propre" et structuré et donc plus facilement maintenable.

    La flexibilité de ce framework est très appréciable.
    Si il est possible de réaliser une "single page app" vraiment très rapidement avec le routing, il est aussi possible de mettre en commun le code client dans un contexte d'application web classique.

    Citation Envoyé par ikane Voir le message
    Dans quels types d'architecture son choix serait-il pertinent?
    Il est très pertinent pour les applications de "gestion". Globalement lorsqu'il faut afficher des données et les éditer. (templating et data-binding)

    Avec les "ressources" Angular facilite grandement le travail de persistance des données lorsqu'on utilise une API REST.

    Citation Envoyé par ikane Voir le message
    Cela vaut-il le coup d'investir dans son apprentissage?
    Quelle est la courbe d'apprentissage?
    Il faut relativiser le temps d'apprentissage qui reste très court. Quelques jours suffisent pour une bonne partie des fonctionnalités.

    Contrairement à d'autres frameworks il n'y a aucun langage spécifique à apprendre, tout est en HTML/JS.


    La vidéo que je conseille pour ceux qui démarrent est celle du Google I/O:
    [ame="http://www.youtube.com/watch?v=HCR7i5F5L8c"]Google I/O 2013 - Design Decisions in AngularJS - YouTube[/ame]

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 41
    Points : 30
    Points
    30
    Par défaut
    Merci Sylvain et Beekeep pour vos retours et eclairages on ne peut plus pertinents

  5. #5
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Citation Envoyé par beekeep Voir le message
    Bonjour,


    Le gros point fort est qu'il est très complet. On peut même se passer de jQuery avec Angular (elements) qui contient un "jQuery lite"...
    Là j'avoue ne pas comprendre. JQuery est probablement la lib la moins complète que je connaisse. il faut lui adjoindre quantité de plugins pour arriver à faire quelque chose.

    si je comprends la popularité de JQuery je ne vois vraiment pas en quoi c'est une référence.

    je ne connais pas bien AngularJS. mais je vais répondre
    Citation Envoyé par ikane
    Bonjour à tous,

    On entend de plus en plus parler du framework javascript AngularJS.

    Selon vous:
    Quelle est sa réelle valeur ajoutée par rapport aux autres frameworks?
    Je n'ai pas trouvé de points marquants qui le démarquent des autres. sont point fort est effectivement de prendre en charge ne nombreux point de la création d'appli js. mais ce n'est ni le seul ni le plus complet. je trouve qu'il le fait bien et ça c'est déjà pas mal.

    la présence d'une méthodologie de test est bien venue mais là encore il y en a d'autre qui le font.

    Citation Envoyé par ikane
    Dans quels types d'architecture son choix serait-il pertinent?
    Perso je ne le vois pas dans le rôle d'enrichisseur de site web. j'entends pas là avoir une appli web
    traditionnelle faite de multiple pages et utiliser js pour ajouter des facilités comme par exemple un petit calendrier pour saisir une date.
    je pense que ce framework est beaucoup trop lourd est complexe pour un tel usage. par contre je le vois plus dans des "single page app" dans lesquelle le code côté client est complexe. AngularJS dans ce cadre offre une approche qui permet de garder son code clair et bien structuré.

    Citation Envoyé par ikane
    Cela vaut-il le coup d'investir dans son apprentissage?
    Là je ne saurais répondre. je dirais que si tu ne connais aucun framework JS alors je te conseille d'explorer plus large. il existe d'autre frameworks qui offrent les mêmes services qui existe depuis plus longtemps et qui ont une base installé plus importante. cela ne signifie pas qu'il faille se désintérésser de AngularJS la nouveauté à parfois du bon.

    la question à te poser est plus de savoir si tu vas avoir à faire des application client riche ou pas.
    si la réponse est oui alors effectivement explorer la diversité du marché pour de tel frameworks.
    avant de faire un choix.

    Citation Envoyé par ikane
    Quelle est la courbe d'apprentissage?
    là je ne maitrise pas. je n'ai pas assez investi la bête. ayant déjà un framework très riche pour faire mes dev. j'ai evalué AngularJS sans m'investir sur la formation. je n'est regardé que ses capacités et ses concepts ainsi que le code à produire.

    A+JYT
    PS: pour revenir à la dualité dont parlait @SylvainPV "client riche ou serveur riche". je dirais que JQuery ce situe plus dans une approche "serveur riche" et propse d'ajouter des "enrichisement au client. Alors qu'AngularJS est clairement "client riche". (même si avec de nombreux plugin JQuery permet de faire bien des choses sont approche reste pour moi sur le principe d'ajouter des composant au élément html d'une page)

  6. #6
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Citation Envoyé par sekaijin Voir le message
    Là j'avoue ne pas comprendre. JQuery est probablement la lib la moins complète que je connaisse. il faut lui adjoindre quantité de plugins pour arriver à faire quelque chose.
    Alors tu n'en connais pas beaucoup... jQuery est une librairie généraliste, donc forcément très polyvalente. On pourrait presque parler de framework. Si tu parles des plug-ins jQuery pour faire des composants d'interface, ce n'est pas le rôle de la librairie, et il en va de même pour AngularJS (qui dispose de tout un tas de plug-ins comme Angular-UI pour ça ; tu vois le rapprochement avec jQueryUI ?)

    Citation Envoyé par sekaijin Voir le message
    Je n'ai pas trouvé de points marquants qui le démarquent des autres
    data-binding DOM-based, navigation full AJAX, déclaration d'éléments HTML custom via les directives

    Citation Envoyé par sekaijin Voir le message
    je pense que ce framework est beaucoup trop lourd est complexe pour un tel usage. par contre je le vois plus dans des "single page app" dans lesquelle le code côté client est complexe. AngularJS dans ce cadre offre une approche qui permet de garder son code clair et bien structuré.
    Angular est single page par nature, étant donné que le routing est coté client.

    Citation Envoyé par sekaijin Voir le message
    (même si avec de nombreux plugin JQuery permet de faire bien des choses sont approche reste pour moi sur le principe d'ajouter des composant au élément html d'une page)
    un peu comme n'importe quel framework client en somme ?
    One Web to rule them all

  7. #7
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Citation Envoyé par SylvainPV Voir le message
    Citation Envoyé par sekaijin
    Là j'avoue ne pas comprendre. JQuery est probablement la lib la moins complète que je connaisse. il faut lui adjoindre quantité de plugins pour arriver à faire quelque chose.
    Alors tu n'en connais pas beaucoup... jQuery est une librairie généraliste, donc forcément très polyvalente. On pourrait presque parler de framework. Si tu parles des plug-ins jQuery pour faire des composants d'interface, ce n'est pas le rôle de la librairie, et il en va de même pour AngularJS (qui dispose de tout un tas de plug-ins comme Angular-UI pour ça ; tu vois le rapprochement avec jQueryUI ?)
    Ben justement j'en connais pas mal et plusieurs qui offrent bien plus de services que JQuery et de façon beaucoup plus homogène.
    JQuery n'est pour moi pas une référence pour construire une application. je trouve que c'est un très bons outil pour ajouter des goodies (fonctionnels ou graphiques) à des page HTML. C'est pour moi plus une lib qu'un framework.
    dans JQuery de base
    pas de modèle Data,
    pas de Data-Binding,
    Pas de modèle déclaratif de composants (interface ou fonctionnel),
    pas de structure MVC,
    pas de observer pattern (juste l'observation du dom std js),
    pas de bus d'événement, pas de require (chargement dynamique de source)
    pas de composant graphique (sans passer par une extention JQuery-UI),
    Pas de méthode de test,
    pas de mécanisme de localisation,
    pas de mécanisme d'accessibilité,
    pas de navigation au clavier,
    pas de webservice Rest ou Soap sans plugin
    pas de dessin,
    pas de graphes,
    pas d'association graphe grille de donnée
    ...
    on peux effectivement lui ajouter tout ça. mais ce sont des plugins issues des diverses sources et donc pas toujours très homogènes.
    voilà pourquoi pour moi JQuery même si c'est une bonne lib n'est pas une référence en tant que framework.


    Citation Envoyé par SylvainPV Voir le message
    Citation Envoyé par sekaijin
    Je n'ai pas trouvé de points marquants qui le démarquent des autres
    data-binding DOM-based, navigation full AJAX, déclaration d'éléments HTML custom via les directives
    C'est bien ce que je dis rien de plus que d'autres frameworks. je retrouve tout ça et bien plus dans d'autres frameworks. donc pour moi rien qui me fasse dire "AngularJS possède ce truc qui en fait un framework à part". Mais je ne crache pas pour autant sur AngularJS il le fait bien. si je n'avais aucun autre framwork déjà utilisé chez moi et que je devais en choisir un AngularJS ferait partit de la liste des ceux que j'évaluerais.


    Citation Envoyé par SylvainPV Voir le message
    Citation Envoyé par sekaijin
    ...j'entends pas là avoir une appli web traditionnelle faite de multiple pages et utiliser js pour ajouter des facilités comme par exemple un petit calendrier pour saisir une date. je pense que ce framework est beaucoup trop lourd est complexe pour un tel usage.

    par contre je le vois plus dans des "single page app" dans lesquelle le code côté client est complexe. AngularJS dans ce cadre offre une approche qui permet de garder son code clair et bien structuré.
    Angular est single page par nature, étant donné que le routing est coté client.
    c'est ce que je dis. je ne vois pas AngularJS pour enrichier une page HTML de goodies. mais bien dans le single page.

    Citation Envoyé par SylvainPV Voir le message
    Citation Envoyé par sekaijin
    (même si avec de nombreux plugin JQuery permet de faire bien des choses sont approche reste pour moi sur le principe d'ajouter des composant au élément html d'une page)
    un peu comme n'importe quel framework client en somme ?
    Ben justement non. certains frameworks offre d'entrée de jeux suffisamment pour ne pas avoir besoin de plugins. où alors à la marge.
    et certains frameworks sont plus basé sur le principe du Zero HTML.

    soit on part d'une page HTML avec des éléments dedans. et on applique dessus un code JS qui transforme ces éléments en des composants interactifs comme le fait très bien JQuery.
    • on a donc besoin d'un outils puissant à la syntaxe simple pour rechercher les éléments à transformer.

    soit on part d'une page blanche et on pose directement les composants interactifs dans la page.
    • on n'a pas besoin de chercher quoi que ce soit vu qu'on le construit et il faut donc un sérieux modèle de description des composants.


    donc non, pas
    Citation Envoyé par SylvainPV Voir le message
    comme n'importe quel framework client
    on peut travailler avec certain framework avec l'approche exactement opposée à celle de JQurey

    Jquery c'est
    • une approche par enrichissement de page, multi-pages web, avec de nombreux plugin

    ExtJS ou YUI par exemple c'est
    • une approche Zero HTML (pas d'enrichissement), single page, pas de plugin (ou très peu)


    AngularJs est quelque par entre les deux.

    on peu bien sur utiliser n'importe quel framework ou lib dans une approche qui n'est pas sa prédilection. et je ne pense pas qu'une approche soit meilleure qu'une autre.

    Angular et AngularUI ensemble sont des outils à surveiller (où à adopter s'il correspondent au besoin)

    A+JYT

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Quand je vois l'ajax avec angular ...
    Faut être adepte du MVC
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Citation Envoyé par ikane Voir le message
    Quelle est sa réelle valeur ajoutée par rapport aux autres frameworks?
    Ne connaissant pas assez les autres frameworks ... Je m'abstiens Sauf pour JQuery, comment dire, JQuery c'est les années 2000, AngularJs c'est le futur.

    Citation Envoyé par ikane Voir le message
    Dans quels types d'architecture son choix serait-il pertinent?
    Archi Rest nécessitant une interface riche en single page. Vu comment la SOA est à la mode (normal avec la mobilité) c'est adapté pour pratiquement n'importe quelle application web pro ou non.

    Citation Envoyé par ikane Voir le message
    Cela vaut-il le coup d'investir dans son apprentissage?
    Oh oui. C'est un framework vraiment très structurant contrairement à JQuery qui relève plus de la toolbox. D'où la nécessité d'avoir une vue globale claire pour produire un code correct et testable.

    Citation Envoyé par ikane Voir le message
    Quelle est la courbe d'apprentissage?
    Lente. Si les premières notions sont rapides à aquérir, on est vite bloqué par pas mal de choses (les directives, quelles sont les bonnes pratiques, ...) et on peut rapidement produire un code dégueulasse (plein de trucs dans le $scope, controlleurs contenant de la logique, ...). Pour arriver à un bon résultat il faut plusieurs mois de pratique. Mais le jeu en vaut la chandelle.

    Pour démarrer :
    http://www.frangular.com/2013/03/com...angularjs.html
    http://stephanebegaudeau.tumblr.com/...-to-start-with

    A noter que AngularJs devrait s'utiliser systématiquement avec Bootstrap et Angular UI se qui donne tout additionné un ensemble d'outils qui n'ont presque rien à envier à du développement client lourd au niveau de la richesse des composants.

    Pour les ressources, outre le site officiel on a :
    https://github.com/jmcunningham/AngularJS-Learning en anglais et
    https://github.com/jmcunningham/Angu...aster/FR-FR.md en français.
    Je connais pas de listes plus exhaustives
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 47
    Points : 55
    Points
    55
    Par défaut
    J'ajouterai la formation de Grafikart, très bien expliqué !

  11. #11
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Si je peux me permettre, j'aurai tendance à dire qu'Angular n'est pas aiser à prendre en main. Comme le dit @SylvainPV, je trouve l'apprentissage compliqué dès que l'on essaye de sortir de la base du framework.
    Je travail actuellement sur un projet ou Angular est la clé de voute, j'en ai bavé comme pas possible pour arriver à comprendre ce qui avait été fait avant mon arrivée.

    Pour moi le problème c'est que ce Framework doit être utilisé par des gens qui ont une bonne base JS, car sinon cela devient impossible à maintenir...

    Quand j'entend le chef de projet dire que l'utilisation d'Angular a été choisi pour facilité le travail du designer, cela me rend fou. Avec toutes les directives, binding, fonctions et variable que l'on trouve dans le code HTML (qui au passage pourrit vraiment le DOM) cela rend le travail du designer complexe et pas évident s'il n'a pas idée des méchanismes utilisé en JS.

    Par contre, une fois que l'on à compris le fonctionnement des directives, binding, filter etc..., je pense que l'on peut gagner pas mal de temps en dev, mais il faut tout de même prendre un peu de temps pour se former car ce n'est pas évident...
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  12. #12
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par ludojojo Voir le message

    Pour moi le problème c'est que ce Framework doit être utilisé par des gens qui ont une bonne base JS, car sinon cela devient impossible à maintenir...

    .
    d'où l'intérêt, à mon avis, d'utiliser AngularDart.

  13. #13
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Points : 3 325
    Points
    3 325
    Par défaut
    Citation Envoyé par ludojojo Voir le message
    Si je peux me permettre, j'aurai tendance à dire qu'Angular n'est pas aiser à prendre en main. Comme le dit @SylvainPV, je trouve l'apprentissage compliqué dès que l'on essaye de sortir de la base du framework.
    Je travail actuellement sur un projet ou Angular est la clé de voute, j'en ai bavé comme pas possible pour arriver à comprendre ce qui avait été fait avant mon arrivée.

    Pour moi le problème c'est que ce Framework doit être utilisé par des gens qui ont une bonne base JS, car sinon cela devient impossible à maintenir...
    Ton cas est un peu spécial. La reprise d'un existant ne facilite jamais les choses (enfin pas souvent ^^).
    Et une application codée par quelqu'un qui n'a pas de bonnes connaissances ne sera pas facilement maintenable, quelque soit le langage.

    Citation Envoyé par ludojojo Voir le message
    Quand j'entend le chef de projet dire que l'utilisation d'Angular a été choisi pour facilité le travail du designer, cela me rend fou. Avec toutes les directives, binding, fonctions et variable que l'on trouve dans le code HTML (qui au passage pourrit vraiment le DOM) cela rend le travail du designer complexe et pas évident s'il n'a pas idée des méchanismes utilisé en JS.
    Il y a quand même le fait d'utiliser des directives qui rend le code HTML plus propre qu'avec d'autres librairies. (après les moustaches on aime ou on aime pas..)

  14. #14
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Citation Envoyé par ludojojo Voir le message
    Je travail actuellement sur un projet ou Angular est la clé de voute, j'en ai bavé comme pas possible pour arriver à comprendre ce qui avait été fait avant mon arrivée.
    Il y a deux explications à cela :

    Soit tu n'es pas formé sur le framework, soit tu es formé mais le code est mauvais. (si tu n'es pas formé et que le code est mauvais ce n'est pas gérable)

    Citation Envoyé par ludojojo Voir le message
    Pour moi le problème c'est que ce Framework doit être utilisé par des gens qui ont une bonne base JS, car sinon cela devient impossible à maintenir...
    Disons que n'importe quel projet développé dans une techno ne peut pas être maintenu par des gens qui ne connaissent pas la techno.

    Bien utilisé, angular facilite énormément la maintenance d'une application. Après cela nécessite d'avoir de bonnes pratiques. Utiliser un framework moderne ne suffit pas à produire un code maintenable.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  15. #15
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Soit tu n'es pas formé sur le framework, soit tu es formé mais le code est mauvais. (si tu n'es pas formé et que le code est mauvais ce n'est pas gérable)
    Je pense que c'est un peu des deux... Même si je pense plus pour le second dans le cas présent Pour ce qui est de la formation, cela reste une autoformation via le site de l'éditeur...
    Citation Envoyé par beekeep Voir le message
    Et une application codée par quelqu'un qui n'a pas de bonnes connaissances ne sera pas facilement maintenable, quelque soit le langage.
    Citation Envoyé par Marco46 Voir le message
    Disons que n'importe quel projet développé dans une techno ne peut pas être maintenu par des gens qui ne connaissent pas la techno.
    Je suis pas complètement d'accord sur ce point. Un code C# mal pensé me semble plus maintenable qu'un code JS mal pensé.
    Cela est certainement dû au fait que j'ai plus de connaissances en C# qu'en JS mais je pense surtout que c'est dû aux spécifications du language. Et surtout le fait qu'il ne soit pas fortement typé. Cela laisse malheureusement plus de possibilités de faire des choses incensées...
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  16. #16
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Citation Envoyé par ludojojo Voir le message
    Je pense que c'est un peu des deux... Même si je pense plus pour le second dans le cas présent Pour ce qui est de la formation, cela reste une autoformation via le site de l'éditeur...
    Quels sont les défauts du code du projet sur lequel tu travailles ?

    Les défauts courants d'un projet Angular sont :

    - contrôleurs obèses
    - contrôleurs avec de la logique
    - absence de directives
    - directives obsèses
    - utilisation de jquery dans des controleurs
    - absence de services
    - absence de tests unitaires et e2e

    Citation Envoyé par ludojojo Voir le message
    Je suis pas complètement d'accord sur ce point. Un code C# mal pensé me semble plus maintenable qu'un code JS mal pensé.
    Cela est certainement dû au fait que j'ai plus de connaissances en C# qu'en JS mais je pense surtout que c'est dû aux spécifications du language. Et surtout le fait qu'il ne soit pas fortement typé. Cela laisse malheureusement plus de possibilités de faire des choses incensées...
    En règle générale, tout projet où :

    - une fois l'environnement de dev installé, un simple clone du repo permet de travailler (avec un fichier de config à modifier, ou un script initialisant des variables d'environnement)
    - le build de l'appli est faisable en un clic (ou une action)
    - les variables sont nommées clairement
    - chaque fichier de code source est petit (très peu de scroll pour lire, voire pas du tout)
    - chaque classe/service fait une chose et une seule
    - tout le code est couvert par des tests unitaires

    est maintenable. Et à contrario tout projet ne respectant pas ces règles ou plusieurs de ces règles est difficile à maintenir.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  17. #17
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Quels sont les défauts du code du projet sur lequel tu travailles ?
    - contrôleurs obèses
    - contrôleurs avec de la logique
    - absence de directives
    - directives obsèses
    - utilisation de jquery dans des controleurs
    - absence de services
    - absence de tests unitaires et e2e

    En effet, je me rencontre qu'ils ont vraiment cumulé

    En règle générale, tout projet où :

    - une fois l'environnement de dev installé, un simple clone du repo permet de travailler (avec un fichier de config à modifier, ou un script initialisant des variables d'environnement)
    Je travail sur SharePoint, malheureusement ce n'est pas aussi simple...
    - les variables sont nommées clairement
    Alors ça je confirme, je me suis trouvé avec un fichier JS contenant des variables nommées str1 -> str17
    - chaque fichier de code source est petit (très peu de scroll pour lire, voire pas du tout)
    Certain des fichiers JS font plus de 1000 lignes...
    - chaque classe/service fait une chose et une seule
    Si seulement, ils ont même dupliqué certaines méthodes d'un fichier à l'autre
    - tout le code est couvert par des tests unitaires
    Aucun test avec des echainements de .parent().parent().find().attr()... Ca me rend fou !

    Bon bah conclusion, il faut qu'un jour j'arrive à tomber sur un projet avec un développeur Angular confirmé pour vraiment comprendre à apprécié cette techno. J'ai hâte !
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  18. #18
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Et ben mon pauvre ...

    Ton équipe ça doit être leur premier projet angular ?

    J'en reviens à ton post d'origine :

    Pour moi le problème c'est que ce Framework doit être utilisé par des gens qui ont une bonne base JS, car sinon cela devient impossible à maintenir...
    C'est vrai mais là en l'occurrence ton problème c'est que tu es avec des dev qui se sont formés à l'arrache sur Angular et qui ne connaissent pas les bonnes pratiques.

    1000 lignes dans un fichier source, peu importe le langage ou le projet c'est n'importe quoi dans tous les cas.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  19. #19
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Et ben mon pauvre ...

    Citation Envoyé par Marco46 Voir le message
    Ton équipe ça doit être leur premier projet angular ?
    Tout comme moi, mais nous en avons à première vue pas compris la même chose...
    Citation Envoyé par Marco46 Voir le message
    1000 lignes dans un fichier source, peu importe le langage ou le projet c'est n'importe quoi dans tous les cas.
    Je confirme, c'est pas très bien, mais j'ai quand même ma class Utilities pour SharePoint que je traine un peu partout avec moi... Elle fait presque deux milles lignes, mais par contre, elle est complètement commentée et jamais directement utilisée !
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  20. #20
    Nouveau Candidat au Club
    Homme Profil pro
    Architecte technique
    Inscrit en
    Janvier 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 28
    Points : 0
    Points
    0
    Par défaut AngularJS est de la pure absurdité
    Personnellement , je ne vois pas pourquoi j'aurai besoin d'utiliser un framework client MVC comme AngularJS ou Backbone.

    Dans mon travail, j'utilise déjà un framework MVC serveur(symfony2) et dans quasiment 90% des projets sur lesquels j'ai travaillé, il y a beaucoup plus de traitements en back qu'en front car ce sont souvent des applications de gestion:
    1- Je crée le modèle avec Doctrine , le contrôleur avec PHP , et la vue avec TWIG
    2- Ensuite dans ma vue , j'affiche juste les données , faire de calculs dans le DOM et envoyer les résultats à un autre contrôleur qui va utiliser des websockets pour ré-afficher en tant réel d'autres données dans ma vue TWIG
    3- Et après j'utilise ensuite JQuery ou javascript pur pour placer les données issues du contrôleur symfony à gauche ou à droite de ma page TWIG. Et tous çà de façon sécurisée car le contrôle se fait sur le serveur(php) et non pas javascript(client).

    Donc , je ne vois pas pourquoi devrais-je m'embêter à utiliser le model-vue-contrôleur d'AngularJS pour juste afficher les données dans ma vue TWIG qui sont déjà récupérées et bien contrôlées depuis le back de l'appli , parce qu'à force de croire à votre philosophie absurde , je dois m'efforcer de refaire le travail 2 fois:
    - d'abord, un model-contrôleur-vue depuis mon symfony2 qui est déjà assez sécurisée et bien fait
    - et ensuite un model-contrôleur-vue depuis angularJS qui n'est pas assez sécurisée(car côté client) et qui ne sert finalement pas à grand chose

    Pour moi, ces frameworks soient disant en vogue(AngularJS, Backbone, etc) ne sont juste que de la pure publicité de leurs créateurs et qu'ils ont été créés juste pour voler vos données.

    A moins de ne travailler exclusivement que sur du SPA, je ne vois pas pourquoi on devrait s'embêter avec AngularJS à refaire une deuxième fois dans le front un travail déjà fait et mieux fait depuis le back

Discussions similaires

  1. Mais quel est l'intérêt de XML ?
    Par darkbauer dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 01/06/2004, 18h03
  2. [TDataModule] Intérêt de séparer les accès aux données?
    Par Cornell dans le forum Bases de données
    Réponses: 5
    Dernier message: 05/09/2003, 16h42
  3. Quel est l'intérêt des Services Web ??
    Par silvermoon dans le forum Débats sur le développement - Le Best Of
    Réponses: 19
    Dernier message: 12/02/2003, 22h28
  4. [Concept] BD ou Gestion par fichier. Intérêt de la BD ?
    Par Cian dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 28/11/2002, 12h16
  5. [Technique] Intérêt des index
    Par ddams dans le forum Décisions SGBD
    Réponses: 10
    Dernier message: 04/11/2002, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo