11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

comme surement un grand nombre d'entre vous, je m'intéresse à toutes les nouvelles tendances en matière de développement web.

Je me pose aujourd'hui des questions au sujet d'AngularJs version 2 dont on parle de plus en plus.

J'ai essayé de regarder un peu comment ça marche et je trouve ça un peu compliqué et "usine à gaz".

En suivant un tuto, je me suis retrouvé à installer des dépendances dans tous les sens et au final j'avais 11 000 fichier répartis dans des arborescences infinies à tel point que l'explorateur de Windows me sort des erreurs de noms de fichiers trop longs lorsque je veux faire des sauvegardes entres disques durs, et tout ça pour faire une liste de courses .... (Todo list)

Alors je me demande si il ne faut pas attendre que cet outil arrive à maturité, avec la création par exemple d'un outil global ... un AngularPress en quelques sortes ?

et globalement, aujourd'hui, qu'est ce que Angular2 permet de faire que Php + Ajax ne permettrait pas de faire?

merci
Oula il y a tellement à dire,

Alors premièrement le projet est déjà a maturité à quelques fonctionnalités près (server-side rendering, angular-material, angular-layout etc).

Dire que c'est une "usine à gaz" je réponds çà dépend de tes besoins et visiblement tu n'en as pas eu encore besoin. Si le PHP + Ajax te satisfais alors en effet pas besoin d'Angular et d'autres frameworks JS.

A la base les frameworks JS permettent de faire des SPAs (Single Page Application). Il introduise une notion d'interface réactive en temps réel. Mais aujourd'hui Angular est aussi orienté pour faire des applications mobiles cross-plateformes çà cela va être compliqué sans utilisé de frameworkJS bien qu'il en existe en C++ & Co.

Alors je dirais cela dépend le comparatif est trop vaste sinon avoir un AngularPress n'a pas d'intérêt c'est framework pas un CMS attention. Néanmoins, si il y a angular-cli qui t'échafaude une application pour toi mais en effet cela installe des milliers de dépendances Smiley lol

Je te conseil de prendre le problème par le bon bout en débutant avec le getting start d'angular.io mais surtout de comprendre à quoi sert chaque outils de la stack JS pour comprendre le workflow mise en place.

Bonne poursuite Smiley cligne et vive le web
Modérateur
lionel_css3 a écrit :
J'ai essayé de regarder un peu comment ça marche et je trouve ça un peu compliqué et "usine à gaz".

Contrairement à Echyzen, je confirme: c'est une usine à gaz. Ces frameworks sont fait pour créer des applications complexes, généralement en équipe et consistent en un métier à part entière. L'apprentissage est long et fastidieux.

Après il faut se méfier du phénomène de hype et regarder ce qui se fait ailleurs. Backbone, Ember, React, Meteor, etc. la palette des frameworks est large.

Après des essais sur Angular, dans ma boîte nous avons opté pour ember.js, Angular s'étant révélé inadapté pour notre usage occasionnel.

lionel_css3 a écrit :
qu'est ce que Angular2 permet de faire que Php + Ajax

Rien. Plutôt même le contraire: Angular n'est que la partie «ajax», il faut aussi une partie serveur qui gèrera les webservices (ça peut être optionnel mais tous ces frameworks sont dédiés à être en front devant des webservices): en node.js, php, java, ruby, python ou tout ce qui te convient. Par contre dès que la partie ajax se complexifie le gérer soi-même avec juste jQuery tourne vite au cauchemar. Si tu ne vois pas l'utilité c'est probablement que tu n'as pas été confronté à ces difficultés et que ces frameworks sont probablement peu utile.

lionel_css3 a écrit :
comme surement un grand nombre d'entre vous, je m'intéresse à toutes les nouvelles tendances en matière de développement web.

Attention quand on parle de «développement web». Aujourd'hui nombre d'applications autrefois dites lourdes (à installer sur son OS) se font désormais en web. Angular & co sont des outils principalement fait pour répondre aux problèmes posés par ce genre d'application (comptabilité, informatique de gestion de tout poil, etc.), mais ce n'est que très peu adapté à des sites vitrines ou faiblement interactifs (les coûts seraient exhorbitants) pour lesquels il existe des solutions bien plus efficaces.

lionel_css3 a écrit :
Alors je me demande si il ne faut pas attendre que cet outil arrive à maturité, avec la création par exemple d'un outil global ... un AngularPress en quelques sortes ?

Comme dit par Echyzen, ne pas confondre un CMS et un framework. Par contre on peut tout à fait utiliser wordpress comme backend, et utiliser angular en front en se servant de wordpress comme moteur de webservices. À nouveau, pour un site vitrine, j'éviterais ce genre de construction Smiley smile
j apporte mon grain de sel car historiquement des CMS sont à l origine de frameworks tandis que des frameworks métier e_commerce donnent naissance à des CMS et un troisièmes cas ou des CMS préfère utiliser des Framework tiers ( le cas de CMS drupal avec le framework symfony ) . Maintenant ces frameworks et ces CMS coté serveur doivent s appuyer sur un language et la le seul langage qui existe à la fois coté client et serveurs non binaire , il n'y a que javascript !!

Maintenant angular est un framework donc une grosse librairies qui utilisent typescript car à un certain niveau de complexité javascript est trop textuel ,compliqué et inadapté concernant l'héritage , les modules ,le typage fort .... Pourquoi il n 'ont pas pris python coté client dès le début ( j 'ai testé dans IE sous windows /...Active X !!?? il y a longtemps ....) . Enfin cela ouvre des opportunités de travail/mutation et des salaires TRES correctes .... ......angular 2.0 .

Maintenant un CMS se base toujours sur des librairies clientes . par exemple joomla a décidé de basé sont backend pour la partie visuelle sur JQuery et bootstrap ( qui justement utilise sa propre version de jquery ). Maintenant coté visuel/interactif ....aucun CMS n 'impose de librairies clientes ( ui et non ui ) .

Sinon il y a hippoCMS qui il me semble par défaut peut supporter JSP, Freemarker et AngularJS pour le la partie rendu visuel interactif ... mais le plus important est la mise a disposition d'une API REST coté serveur adapté au concept SPA coté client .

Maintenant pour l'utilisation de angular sur le serveur en recherchant sur google il y a un article de 2015 mais ile semble que angular est implémenté sur express ou sur sa propre implémentation . Enfin l 'implémentation de angular fait la différence entre l API UI (dom) et non UI ici

En gros angular "angular" peut être comparé a l'environnement de Microsoft .
angular propose un framework MFC C++ ( angular) avec WinFX (directive ng-) en C/C# ( typescript ) et un IDE visual studio ( intelliJ.idea) et un outils de gestion msbuild (gradle) et un serveur IIS ( express.js) .
Android studio est basé sur intelliJ idea ( java) mais le support angular doit se faire en passant par les webview et le support angular et typescript n'est disponible que dans la version payant de jetbrain pas dans la version gratuite d'android studio plus utile pour java ... pour l'instant !! .

Je crois que les mots firebase mongodb et fireloop et parse et mean sont actuellement la solution .

On va dire que les web framework sont basé sur nodejs sont des futurs CMS . Coté serveur se pose la question de l'acces aux stockage ( rdbms , no sql) .
Donc actuellement e n2016 un serveur basé sur nodejs express et angular avec une interface graphique backend basé sur angular .... je n'en connais pas ! .

Je me demande toujours si angular reste neutre concernant l'interface graphique qui par défaut se base sur HTML/js standart des navigateurs ou si l'équipe de développement de angular va proposer sa propre librairie graphique basé sur html.js et donc se placer en concurrence avec les widgets/librairies CSS ( portage des CSS framework pour angular 2.0 )
Modifié par 75lionel (24 Dec 2016 - 00:30)
Bonjour,

Je découvre Vue.js et il est vraiment très bien pour démarrer (il a aussi le gros avantage de ne pas être chapeauté par GG, FB, Tw... & co)

Il peut être utilisé sur des tout petits projets comme sur des gros.
Et être utilisé seulement en chargeant le fichier vue.js dans la page ou avec vue-cli

C'est vraiment bien fait et s'apprend progressivement.

Aussi, je trouve dommage de dire que ces framework sont fait uniquement pour des grosses appli et en particulier des très sérieuses. En fait on en fait ce qu'on veut. Ils peuvent aussi être abordés de manière ludique et créative. C'est un peu l'équivalent de Flash à l'époque ou il était très utilisé (mais en mieux).

Ces framework sont basés sur les principes des "design pattern", ça peut être utile de s'y intéresser pour mieux comprendre le pourquoi du comment.
https://www.amazon.fr/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612

http://shop.oreilly.com/product/9780596528461.do (très bon livre malgré qu'il soit pour as3)
Modifié par 3akycka (25 Jan 2017 - 21:29)