ASP.NET et Vous

103 views
Skip to first unread message

Vincent Bourdon

unread,
Mar 5, 2014, 4:17:55 PM3/5/14
to paris...@googlegroups.com
Salut tout le monde,

Je vois que le forum dort un peu.
Je vous propose de lancer un Sujet autour de vos expériences (bonnes ou mauvaises) avec ASP.net de façon assez large :  WebForm, MVC , ServiceStack, signalR ... et tout ce que vous utlisez ou avez utilisez.
Je me lance du coup.


Je fais principalement du MVC depuis la sortie de la première version, ça représente pour moi le pattern qui colle le mieux avec le Web et l'HTTP en général : une entrée => une sortie.

Je trouve que la v5 est enfin une "vrai" version grace à OWIN et KATANA. Je m'explique, je trouve que chaque version de ASP.net n'a apporté que des évolutions mineur voir faire un agrégat de divers nuget et framework. Razor à été aussi une grosse évolution.
Je lance aussi le sujet pour voir quels outils vous utilisez. 

- Web Essential : Vraiment pas mal, mais un peu couteux en perf pour VS je trouve, je l'ai désactivé pour l'instant
- R# : Pas seulement pour ASP.net mais aussi pour coder plus vite et mieux ... c'est dingue comment on peut devenir dépendant de cet outil ! peut être un peu trop ...

Coté Frameworks :

- ServiceStack : juste excellent ! Le côte simplicité et performance m'a tout de suite plus. Malheureusement la version payante m'a freiné dans mon élan :(
- Bootstrap 3 : je suis pas designer, et ça fait le taf.  Utilisez vous les packages nuget ? Je trouve que finallement pour tout ce qui est js et css ce n'est pas très utile car ils ne vont jamais là ou l'on voudrait les placer et les mise à jour ne sont pas toujours régulières. 
- Bundle Transformer : J'utilise en ce moment les bundle transformer pour Less, YUI, Typescript. Tout ce fait bien comme il faut avec au final (sur la page standard) un seul js et un css. Problème, comme la précompilation se fait que à la compilation, je suis obligé de relancer sans cesse le debug ...finalement ce n'est pas très efficace pendant le dev des styles et des js. De plus comme je n'ai aucun fichier physique je n'ai aucune autocompletion dans VS. Je vais peut être revenir à Web Essential.
- AngualrJS : Pour moi le meilleur framework js pour faire du SPA à l'heure actuel. Après il faut voir exactement comment le marrié avec le côté serveur d'asp.net. Plus de Directive ou plus de génération côté serveur ???
- signalR : pas encore mis en place, mais c'est en cours, je prend tous les retours d'XP sur le produit :)

Coté Test :
- jUnit et VS test : ca fait longtps que j'ai pas eu vraiment l'occasion de faire des TU sur le côté JS. J'ai vu pas mal de truc dont évidement Kama et mocha ... 
- Grunt ? Grunt dans VS ? 


Bon je m’arrête la pour un premier message, ça devrait suffire pour démarrer le sujet.

++ Vincent

Rui Carvalho

unread,
Mar 5, 2014, 5:50:25 PM3/5/14
to Vincent Bourdon, paris...@googlegroups.com
bon après faut voir si le forum dort pour de bonnes ou de mauvaises raisons ;-) J’ai tendance à croire que comme on fait plus de rencontres, les gens discutent plus en vrai et moins par par forum mais après tout il s’agit surement de choses différentes. peut être aussi que les gens vont plus voir par eux même quand ils ont des questions mais c’est vrai qu’on loupe un peu le coté débat qu’il y avait un peu il y a quelques années. bref, tout ça veut peut dire qu’il faut innover un peu plus sur les formats de discussions. 

questions les gens (répondez tout plein à ce que vous avez envie):

[ ] - est-ce que vous avez envie de débattre sur un certain nombre de sujets de fond ? 
- si oui quelle est la meilleure manière de le faire?
- le pb récurrent qu’on avait au moment ou l’on discutait plus c’était principalement l’organisation des réflexions (en gros pas facile de résumer les idées au fil des mails…)

[ ] - si vous avez des pb ou des questions dans vos codes pro, pourquoi ne pas en discuter ici? 
- sinon, pourquoi ?
- on pourrait faire des rencontres BYOC (bring your own code) comme d’autres le font où le but est de venir avec des cas concrets de vos projets et d’en discuter, de voir ce qui pose pb, de trouver des solutions, etc… ça pourrait intéresser du monde?

d’autres idées pour faire toujours échanger un peu plus avec la communauté?

Vincent, du coup, je vais répondre à la question initiale sur un autre message pour pas mélanger les genres ;-)

cheers!

* * *
Rui Carvalho
twitter : @rhwy
--

---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "altnetfr".
Pour vous désabonner de ce groupe et ne plus en recevoir les messages, envoyez un e-mail à l'adresse parisaltnet...@googlegroups.com.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/groups/opt_out.

Rui Carvalho

unread,
Mar 5, 2014, 6:24:57 PM3/5/14
to Vincent Bourdon, paris...@googlegroups.com
Donc en ce qui concerne le web .net….

Comme je suis un peu plus vieux que Vincent j’ai fait pas mal d’ASP à un moment ou il n’y avait rien d’autre, accueilli les Webforms en beta 1.0 avec le bonheur de quelqu’un qui va pouvoir faire de l’objet et sortir enfin du spaghetti vbscript et pleuré sur le pipeline de génération de page asp.net très peu de temps après…

Puis j’ai commencé ASP.NET MVC sur les premières beta car c’était le sujet chaud des premiers events alt.net, je m’y suis mis sérieusement, j’ai ai parlé pendant des années aux techdays pour essayer d’évangéliser la bonne parole à une époque ou il le fallait et j’avoue que j’ai un peu passé la main aujourd’hui par manque d’intérêt…

MVC est effectivement une très bonne plateforme et quoi que puissent en dire certains réfractaires, faire du webforms aujourd’hui représente un certain non-sens (sauf cas particuliers bien sur). MVC colle très bien au web et tout et tout,

…Mais je n’ai plus envie de l’utiliser aujourd’hui. 

Déjà parce que bon, soit dit en passant, le framework web n’est qu’un détail d’implémentation donc je ne veux plus qu’il soit mon socle, je veux pouvoir le changer si je veux, je veux surtout pouvoir l’exécuter ou je veux (genre dans un host console pendant le dev, un iis en test et un web site azure pour la prod par ex). Et la pour le coup, oui, enfin, OWIN, commence à devenir lisible et supporté par Microsoft (c’est un comble non?) 

J’ai le droit de gueuler aussi sur la non mise en avant d’OWIN par MS, ne serait-ce qu’aux Techdays alors qu’il s’agit de la plus grosse évolution de la plateforme web .net depuis quasiment sa création?

Bref, du coup, comme vous pouvez vous en douter, puisque ça fait quelques années que j’en parle aussi, aujourd’hui je n’utilise presque plus que Nancy car cela couvre de manière très simple presque tous mes besoins, à la fois coté pages serveur -où je peux réutiliser mes templates razor d’ailleurs- et coté api. Mais j’ai des besoins certainement plus simples que la moyenne après tout peut-être. 

J’utlise SignalR en complément pour le reste. Nancy+SignalR+Owin forment pour moi le bon couple du moment.

Bon après c’est vrai que je fait presque plus que du SPA tellement je trouve ça plus pratique et naturel…

Donc coté client, c’est du Angular. Très clairement je perds pas de temps avec autre chose aujourd’hui. Et meme jquery que j’ai défendu pendant longtemps je trouve que c’est pénible aujourd’hui. Je vais pas m’étendre sur le sujet mais je peux venir en causer avec vous lors d’un BBL si voulez plus de détails ;-)

Coté outils, alors que tout le monde veut tout mettre dans VS, mon rêve c’est de m’en passer justement… je veux des outils simples, de la ligne de commande et tout. Si vous faites des SPA, donc vous êtes en full JS/HTML, est-ce que visual studio est le meilleur outil pour ça? jetez un oeil a webstorm/sublime/brackets ou le nouveau Atom, le tout avec du live reload de votre page et vous m’en direz des nouvelles - le tout sans lag lié à la lourdeur parfois énervante de VS. 

pareil pour les tests, pourquoi vouloir lancer les tests dans VS? meme le le runner js de resharper est un peu moisi. un karma en mode watch (continuous testing) dans un console est beaucoup plus efficace. 

pareil pour le build, c’est déjà assez pénible d’avoir ces fichiers projets csproj pour pas faire mes builds/concat/minify de js dans VS. grunt fait ça très bien et est le plus répandu aujourd’hui dans le monde vs mais un peu trop verbeux à mon sens. J’utilise avec beaucoup plus de bonheur gulpjs depuis quelques mois. 

Ah oui et bien sur, il y a les gestionnaires de packages…Nuget est top pour .net mais pourquoi se forcer à l’utiliser pour du js? bower et npm sont tes amis en js…en général sur nuget il n’y a pas tout et souvent ds des versions plus anciennes…

est-ce que en plus des discussions forum ça vous dirait de faire un gros meetup « parlons de web .net moderne » ?

cheers!


* * *
Rui Carvalho
twitter : @rhwy

Le 5 mars 2014 at 22:17:56, Vincent Bourdon (evil...@gmail.com) a écrit:

Jérôme Avoustin

unread,
Mar 5, 2014, 5:59:45 PM3/5/14
to paris...@googlegroups.com
Un open space ? :p

Jérôme Avoustin

unread,
Mar 5, 2014, 6:30:32 PM3/5/14
to paris...@googlegroups.com, Vincent Bourdon
#PouceLevé

Et pour : "Déjà parce que bon, soit dit en passant, le framework web n’est qu’un détail d’implémentation donc je ne veux plus qu’il soit mon socle"
#DoublePouceLevé

:)

Florian

unread,
Mar 6, 2014, 3:29:43 AM3/6/14
to paris...@googlegroups.com, Vincent Bourdon
Bonjour à tous,
 
 
C'est vraiment une idée très intéressante !!!!
 
je plussoie !
 
Dans la forme ça donnerait quoi ? un talk sur ton retour d'xp sur le développement web avec MVC puis Nancy+SignalR+Owin ou bien quelque chose de concret (démo de code etc.)
 
Même la partie sur Angular m'intéresserait.
 
Tout ça pour dire que ça motiverait un Bruxellois à bouger sur Paris un sujet comme ça :)

Vincent Bourdon

unread,
Mar 6, 2014, 6:16:30 AM3/6/14
to Rui Carvalho, paris...@googlegroups.com
Hey je suis vieux Aussi ;)  
J'ai fait du classic ASP3 sous InterDev.

Je suis aussi pour des sessions sur le sujet. 
Je pense qu'il faudrait découper en plusieurs morceau car le Web c'est riche et large.

1/ Coté serveur  : MVC5, nacy , service stack , OWIN
2/ Coté client  : AngularJS, knockout , jquery ...
3/ signalR et autres ?
4/ Testing et build


Sinon le meetup va être long très long...
Je vois bien un présentation par un ou deux speakers a chaque fois d'une heure max suivi d'une bonne discutions ouverte

Qu'en pensez vous ?

Vincent


2014-03-06 0:24 GMT+01:00 Rui Carvalho <r...@rui.fr>:

Jérôme Avoustin

unread,
Mar 6, 2014, 7:33:14 AM3/6/14
to paris...@googlegroups.com, Rui Carvalho
Perso j'ai jamais compris l'intérêt de coupler un framework côté client à un autre côté serveur qui fait la même chose.
Parce que utiliser ASP.NET MVC juste pour faire du REST...
Mais j'ai certainement raté un truc :p

Jérôme

DUVAL Olivier

unread,
Mar 6, 2014, 8:21:10 AM3/6/14
to parisaltnet, Rui Carvalho
sinon y'a WebAPI pour du REST ;)

Olivier DUVAL
☎ 06 64 91 83 61
o...@olivier-duval.info 

IT : Blog RSS LinkedIn Twitter Photo : Flickr Twitter Flavors.me Facebook


Florian Nouri

unread,
Mar 6, 2014, 8:21:49 AM3/6/14
to paris...@googlegroups.com, Rui Carvalho
Ce sera peut-être l'occasion de tout remettre à plat !

2014-03-06 13:33 GMT+01:00 Jérôme Avoustin <jer...@avoustin.com>:

Jérôme Avoustin

unread,
Mar 6, 2014, 9:17:22 AM3/6/14
to paris...@googlegroups.com
Non !
On dit : "du REST, il y a WebAPI" ;)

DUVAL Olivier

unread,
Mar 6, 2014, 9:39:43 AM3/6/14
to parisaltnet
pas osé la faire celle la ;) #humour  #geek

Aline Paponaud

unread,
Mar 6, 2014, 9:56:31 AM3/6/14
to paris...@googlegroups.com
J'adore le sujet de la discussion ^^ "Asp.NET et Vous" ça fait un peu Entretien avec Mireille Dumas :)

En ce qui me concerne je suis en pleine mauvaise expérience avec asp.net webforms... Après avoir "tout appris avec MVC" (oui je suis un peu plus jeune que Rui^^) j'ai récupéré un projet Webforms, et je me suis rendu compte que quand une appli Web vit sa vie avec MVC, il y a quand même pas mal de garde fous qui obligent à faire les choses proprement et au bon endroit... Là c'est un foutoir géant genre "quand je sais pas comment le faire en JS je le fais en code-behind", et puis il y a quelques lueurs d'espoir avec des appels Ajax dans une ou deux pages de temps à autre...

Du coup j'ai commencé à étudier , , et que faire pour la suite avec ce lourd héritage... Pour moi aujourd'hui chaque appli Web ayant un minimum d'intelligence, à l'heure du mobile et du cloud SAAS, ne peut pas se passer de son API REST (pas réussi à caler une autre petite blague !), du coup utiliser le framework MVC n'a plus vraiment de sens non ? Si ? Après, un truc à pas oublier : MVC c'est avant tout un Pattern. Et ce pattern n'est jamais remis en question avec WebAPI, au contraire !
Côté client pour l'instant c'est light (JQuery principalement) mais j'espère intégrer très vite du AngularJS.
Et pour le reste des outils, pour moi c'est du full Microsoft... Je découvre OWIN et Katana dans vos mails, peu de culture dans ce domaine. Vous avez déjà fait un Meetup sur les outils opensource ?

Rui Carvalho

unread,
Mar 6, 2014, 10:05:48 AM3/6/14
to DUVAL Olivier, paris...@googlegroups.com
ba voila, je m’absente et Jérome en profite pour faire des blagues ;-)

je lance une idée comme ça hein,

mais si on prenait une journée genre mi/fin mai pour faire une sorte de mini-conf web .net et causer de tout ça car de toute évidence il y a beaucoup trop à dire pour un petit meetup du soir ?


* * *
Rui Carvalho
mail   : r...@rui.fr
tel.     : 0610047040

Yann Schwartz

unread,
Mar 6, 2014, 10:30:48 AM3/6/14
to paris...@googlegroups.com, DUVAL Olivier
Moi ça doit bien faire dix ans que j'ai pas fait de web, ou alors du REST pur en flask (en gros, comme du sinatra, mais en python). Du coup si on voulait l'équivalent (ultra light, sans rendu html) on prendrait quoi en .NET, nancy ? WebAPI ?

Fabrice MICHELLONET

unread,
Mar 6, 2014, 10:34:42 AM3/6/14
to paris...@googlegroups.com, DUVAL Olivier
Très intéressé par le journée entière.

Surtout pour échanger, découvrir vos combos de technos qui marchent bien ensemble... celles qui ne font pas bon ménage etc...

Florian Nouri

unread,
Mar 6, 2014, 11:03:57 AM3/6/14
to paris...@googlegroups.com
Moi aussi mais pitié pas fin mai, mi-mai m'irait très bien !

Yann Schwartz

unread,
Mar 6, 2014, 11:27:34 AM3/6/14
to paris...@googlegroups.com
D'ailleurs on a une salle libre à criteo pour le 13 mai... Je dis ça hein.

Yann Schwartz

unread,
Mar 6, 2014, 11:27:54 AM3/6/14
to paris...@googlegroups.com
Ah pas la journée cela dit.

Rui Carvalho

unread,
Mar 6, 2014, 11:38:35 AM3/6/14
to Florian Nouri, paris...@googlegroups.com
on va voir comment on peut goupiller ça.


Yann, oui Nancy (Sinatra) bien sur ;-). J’avais meme installé un web site azure avec le python qui va bien pendant votre talk pythor/azure avec Ronan mais j’étais parti sur Bottle du coup qui me paraissait plus proche ;-)



* * *
Rui Carvalho
mail   : r...@rui.fr
tel.     : 0610047040
twitter : @rhwy

Nicholas Suter

unread,
Mar 6, 2014, 2:54:25 PM3/6/14
to paris...@googlegroups.com
Carrément partant pour la journée entière. Et je peux peut-être aider pour la salle.

Nicolas Frelat

unread,
Mar 6, 2014, 4:48:13 PM3/6/14
to parisaltnet, Florian Nouri
L'idée tombe à pic, il faut que je dépoussière mes compétences dans le domaine.

On pourrait commencer par un sondage auprès de la communauté :
* SPA ou pas ? Web Forms ou MVC ? JQuery ou AngularJS ou ... ?
* Actuellement et dans le futur

Quelques idées sur les contenus de cette journée :
* faire des démos qui illustrent les bénéfices sur le flux de travail
* faire une liste des features incontournables pour avoir une sorte d'alignement des présentations (complètement en vrac : validation de la saisie, minification des scripts, API interne et public, sécurité, audit / tracking de l'activité des utilisateurs/visiteurs, etc.) permettant de comparer
* explorer les différences entre un site privé et un site public

Nicolas F.

maxime....@gmail.com

unread,
Mar 7, 2014, 6:20:28 AM3/7/14
to paris...@googlegroups.com, Florian Nouri
Salut tout le monde,

Je m'immisce dans la discussion, le sujet m'intéresse beaucoup !
Je suis également partant pour la journée consacrée au thème.

Alors, pour répondre à la question "Web Forms ou MVC ?" : moi, j'aime VC...
Bon, je sais, c'est nul, mais c'est Jérôme qui a commencé.  :-)

Sinon, Aline, si tu veux un léger tour d'horizon d'OWIN, j'avais fait un support de mini formation que tu peux trouver ici

C'est clair que c'est dingue que cela ne soit pas mis plus en avant par MS, alors que c'est carrément un changement de philosophie...

Rui en a remis une couche lors de sa session techdays sur les SPA avec AngularJS. Vidéo et Près -->  

Pour la salle j'aurais bien été partant, mais c'est quand même petit chez nous... 30 max, et tous autour d'une grande table de réu inutile  :-/
Mais bon, en dernier recours, pourquoi pas.

Maxime.

Radwane

unread,
Mar 7, 2014, 11:45:18 AM3/7/14
to paris...@googlegroups.com, Florian Nouri
Moi j'ai également fait du Asp.net MVC + Knockout avec des tests avec Jasmine (le tout exécuté avec chutzpah dans Visual Studio), c'était pas mal du tout, mais je suis d'accord avec Rui, ayant fait un petit projet full js (Angular + nodejs), je trouves que ça pourrait être encore plus léger (Angular+Nancy ?)... Ah oui RequireJs pour les .NETeux c trop complexe :p, bon j'avoue que c pas ce qu'il y a de mieux fait/simple hein ^^ 

Vous avez parlé de Bootstrap, moi j'aime bien également foundation...

Sinon définitivement, pour du JS moi je vote pour Sublim ;), une console à côté et ça grunt.

Et ce que j'aimerais essayé prochainement, c'est du F# WebApi ou Nancy, si y a des gens qui ont joué avec les templates fourni par la communauté ;) vos feedbacks m'intéresse :)

Côté Test

Moi j'aime bien avoir un set (petit mais efficace ^^) de test specflow+selenium :)
Et des TU (Jasmine ou Mocha côté JS, MSTest ou Nunit pour le reste)

Conférence 

Définitivement oui et pourquoi que "monde .NET" :p ? Finalement ce qui est intéressant est bien au-dessus des simples outils 

<div style="font-family:Verdana,Arial,Helvetica,sans-serif;padding-top:0.8em;padding-right:0.8em;padding-bottom:0.8em;padding-left:0.8em;border-
...

Vincent Bourdon

unread,
Mar 7, 2014, 12:22:29 PM3/7/14
to paris...@googlegroups.com

Merci pour les liens ;)

Vincent

Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.

Aline Paponaud

unread,
Mar 7, 2014, 1:05:31 PM3/7/14
to paris...@googlegroups.com

Yes merci Maxime!

Vincent Bourdon

unread,
Mar 8, 2014, 7:39:16 AM3/8/14
to paris...@googlegroups.com
Est ce que je suis le seul a penser qu'une journée c'est compliquer à avoir pour certain ?
Autre point, si on part sur une journée il faut je pense que ce soit un minimum planifié, avec des créneaux ou l'on parle de tel ou tel sujet.

Quels sont pour vous les points importants à aborder pendant cette journée ?

Vincent

Jérôme Avoustin

unread,
Mar 8, 2014, 8:00:43 AM3/8/14
to paris...@googlegroups.com
pas forcément une bonne idée de planifier la journée à l'avance
au contraire, un open space est excellent pour faire émerger les bons sujets

##

Jérôme 

Rui Carvalho

unread,
Mar 9, 2014, 6:26:49 PM3/9/14
to Jérôme Avoustin, paris...@googlegroups.com
Yop yop amis du soir,

Au niveau orga pour répondre aux différentes questions, voila plutôt l’idée de base:
- 1 journée dans pas trop longtemps
- le samedi pour éviter les pb prise de journée et tout et puis ça change pour une fois
- 2-3 talks de prévus histoire de partager des choses un peu structurées
- le reste de la journée en open space
- si possible des ateliers pour mettre en pratique tout cela.

questions:
1-qui veut causer?
2-qui veut aider à l’orga?

bon début de semaine!


Rui Carvalho
twitter : @rhwy

Florian Nouri

unread,
Mar 10, 2014, 4:02:42 AM3/10/14
to paris...@googlegroups.com, Jérôme Avoustin
Je veux bien aider à l'orga :)

Vincent Bourdon

unread,
Mar 11, 2014, 5:28:41 AM3/11/14
to paris...@googlegroups.com
hey,

J'ai l'impression que tu es l'un des meilleurs speaker potentiel sur le sujet Rui vu tout ce que tu as déjà fait ;)
Moi je veux bien donner un coup de main vu que j'ai lancé le sujet, faut juste me dire quoi faire.

++ Vincent

Rui Carvalho

unread,
Mar 11, 2014, 6:29:18 AM3/11/14
to Vincent Bourdon, paris...@googlegroups.com
Oui, bien sur je causerai (je peux pas m’en empêcher de toute façon hein ;-) mais je ne veux pas d’avis unilatéral mais qu’il y ait plusieurs sons de cloche en fonction des contextes et des besoins (car sinon ça s’appellerai  vient faire une formation avec Rui ;-))

* * *
Rui Carvalho
twitter : @rhwy

Nieve

unread,
Mar 11, 2014, 5:35:04 PM3/11/14
to paris...@googlegroups.com
Hello tous!
Puisque je pourrai pas malheureusement me placer, je vais faire mon petit "trol" en posant quelque réflexions sur l’état actuel de développement web avec MS.

D'abord je crois que pour les start up ça n'a pas pas beaucoup de sens aujourd'hui d'utiliser le stock de MS. En faisant le choix de RoR ou peut être même Node on arrive a accomplir beaucoup plus grâce a l'écosystème. Oui, on a Nuget, mais on est pas encore la. En plus- et c'est vraiment au cœur de l'argument- Windows est trop loin derrière par rapport a tout ce qui passe en Linux - surtout au niveau de l'infrastructure (dev-ops si vous voulez) et l'automation - surtout avec l'arriver de Docker (mais aussi chef/puppet et la facilite de apt-get ou Travis CI par example). L’idée que l'on peut mettre en oeuvre une boit pour les nouveau devs et les différents environnement (test, prod) en quelques minutes voir secondes, est le rêve de chaque geek...

Puis, il y a tout ce que MVC a raté- surtout cette horrible épisode de bundling, caching et le développement pour le mobile. :s
La plus grand problème de MVC c'est qu'il s'agit d'un framework développée pas pour les gens qui l'utilise de façon quotidien. Mais on est sur le bon chemin je crois, les choses avancent- chocolatey par exemple.

Quant aux SPAs, Angular est effectivement le grand gagnant pour moi. Par contre je me demande si quelqu'un a eu la chance d'essayer React de FB? J'ai compris que React est basé sur les mêmes idées d'angular et encore plus avance au niveau de performance puisque React re-render seulement les éléments DOM modifiés et rien d'autre, qui est, apparemment, pas le cas chez angular. Est ce que je bien compris l'histoire?

Nieve

unread,
Mar 11, 2014, 5:42:21 PM3/11/14
to paris...@googlegroups.com
Et j'ai presque oublié- trouver un teste-runner pour les testes javascript que l'on pourrait utiliser localement et sur le serveur CI sur windows... Nous utilisons karma, mais sans conviction vraiment. Disant que c'est dommage de devoir avoir Node que pour ça.

Rui Carvalho

unread,
Mar 12, 2014, 4:09:53 AM3/12/14
to Nieve, paris...@googlegroups.com
ben disons que si tu utilises npm/bower pour tous les packages clients js+chaine de build js+tests en continu et surtout que ça te permet d’avoir un tout cohérent pour la partie app client par rapport au truc bancal que tu pourrais faire avec vs+nuget, oui ça vaut le cout d’avoir node sous la main ;-)

* * *
Rui Carvalho
--

Florian Nouri

unread,
Mar 12, 2014, 5:16:55 AM3/12/14
to paris...@googlegroups.com, Nieve
Bonjour à tous !
 
juste une chose, est-ce qu'on a des dates à proposer ?
 
A bientôt j'espère,
 
Florian

Vincent Bourdon

unread,
Mar 12, 2014, 5:59:05 AM3/12/14
to paris...@googlegroups.com
Hello,

Je crois que tu ouvres encore plus le sujet ;)
Faut il encore faire du .net pour le web ? Je vais pas mentir c'est une question qui me trotte en tête ... surtout quand on regarde ça : http://www.techempower.com/benchmarks/
Je reste un grand Fan de C#, je pense qu'il y a encore pas mal de taf a faire autour de la techno et que MS ne doit pas relâcher les efforts ! 
Effectivement j'aimerais avoir un vrai équivalent de npm/bower dans les solutions VS. Je pense que c'est juste un problemes d'outil pour le coup. On peut déjà faire des NPM depuis VS sur les projets nodes, il faut une vrai integration comme nuget. De meme pour grunt y a un plugin pour VS2012, mais du coup on a deux moteur de build la ! MSBuild + Grunt  et 2 technos : node+.net ce qui peut être un peu lourd.

Je comprend pas bien ce que tu dis sur le bundling ...

++ Vincent


--

---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "altnetfr".
Pour vous désabonner de ce groupe et ne plus en recevoir les messages, envoyez un e-mail à l'adresse parisaltnet...@googlegroups.com.

Stéphane JUTIN

unread,
Mar 12, 2014, 6:01:00 AM3/12/14
to paris...@googlegroups.com
Bonjour,

Je me suis au web depuis 2006, d'abord avec ASP.NET classique jusqu'en 2012, comme je venais de monde winform et que j'étais sensibilisé aux approches MVC, j'utilisais une sorte de pattern MVP, où le code-behind de la page ne faisait rien à part déléguer au contrôleur.

Depuis 2012, j'ai basculé sur ASP.NET MVC 3 Razor, qui me semble beaucoup mieux car il a l'avantage de gérer ce pattern MVC de façon native. Sur ce projet, nous utilisions NHibernate, et il y a des choses que je n'aimais pas, comme le fait d'utiliser directement les entités comme view model, ce qui amenait parfois des problèmes de performances (des actions JsonResult pour des callbacks AJAX qui se retrouvait à sérialiser toute la BD à cause d'une entité client qui est reliée à tout le monde, ou le fait que la vue Razor déclenchait beaucoup d'accès BD via le lazy loading, d'où un côté trompeur d'une action contrôleur qui répond rapidement alors qu'en fait il y a problème de perf cachée dans la vue razor associéé). 
Je préférerais donc une architecture où les view models sont de simples "DTO"s, qui sont mappés depuis les entités via AutoMapper (ou un outil concurrent type Value Injector, qui a l'avantage d'être plus personnalisable).

Depuis Octobre, je dois bosser sur une nouvelle appli, mais comme mon projet prend du retard à démarrer, j'ai du temps pour réfléchir sur une nouvelle archi... suite à ALT.NET j'ai pas mal entendu parler de CQRS, et le blog Los Techies de Jeremy Bogard, l'auteur de AutoMapper en parle aussi, dans un de ses posts il décrit une architecture avec des contrôleurs "anémiques" qui se contentent de déléguer leur travail à des Query ou des Commandes (par contre contrairement aux archi CQRQ classiques, on ne met pas en place de choses compliquées comme l'event sourcing ou l'asynchronisme). J'avais commence à mettre une place une telle architecture sur mon POC, avec un bus en mémoire (plus simple que Rabbit MQ ou NServiceBus), qui me semblait d'ailleurs assez proche de ce qu'a présenté Thomas Jaskula à la dernière conf DDD avec Vaugh Vernon. En même temps, je réfléchissais au mapping avec AutoMapper, j'ai voulu mette en place un système efficace pour les recherches où il y a souvent des tris (ORDER BY) des filtres (WHERE critere = ) et des projections (SELECT x,y,z), et avoir un système pour que la couche données puisse tout faire en SQL, tout en gardant une couche présentation propre qui ne travaille qu'avec les DTOs et ne connait même pas l'existence des entités sous-jascentes (ainsi on est pas dépendant de NHibernate, que l'on pourrait remplacer par Entity Framework voir MongoDb, RavenDB de l'event sourcing avec des vues dénormalisées...).

J'ai un code prototype qui fait cela, avec un pattern Specification (pattern du bouquin DDD) et un visiteur qui traduit les Specification<Dto> en Specification<Entité> en se basant sur les correspondances enregistrées dans AutoMapper (qui lui-même s'auto-configure d'après des conventions de nommages). J'ai pas eu le temps de le finir, mais le but était de la brancher sur la grille Kendo, afin d'avoir une grille qui n'est bindée que sur des DTOs mais qui travaille de façon efficace puisque toute les opérations (tri, filtrage...) seraient réalisée en SQL et non en mémoire via Linq-To-Object.

Dans le même temps, j'avais pas mal entendu parler des frameworks javascript, KnockOut d'abord, mais on m'a aussi dit le plus grand bien de Angular JS, plus adapté au SPA. J'ai commencé à creuser cette piste, et j'ai alors découvert qu'une grande partie de ce que fait MVC ne sert plus à rien aujourd'hui : Razor traduit des ViewModel en HTML, mais ça de nos jour Javascript sait faire aussi. Avec Angular, on a aussi du routage comme dans Razor (avec NG-Route) voir potentiellement mieux avec UI-Router. Enfin, le bundling d'ASP.NET est sympa (notamment avec les modules nuget qui permettent de gérer les transformations LESS, SASS, Coffeescript...) mais avec des tâches GRUNT, on pourrait sans doutes faire cela aussi, à la compilation en plus.

Bref, je m'oriente vers une solution où la couche présentation est entièrement déportée sur le client via une SPA, le contenu web deviendrait purement statique (on pourrait le distribuer via un CDN), avec éventuellement des tâches de bundling, de minification, réalisée à la compilation (Grunt et Node.JS ?). Il y a quand même une limite : javascript est non typé, et je viens du C# donc je n'aime pas. C'est un langage assez pourri d'ailleurs (lire Javascript The Good Part de Douglas Crawford, pour voir tout les pièges de ce langage, et notamment le fait que c'est le seul langage ou indenter à la Kernigan et Ritchie, plutôt qu'en ANSI peut faire planter l'application). Donc j'ai cherché à améliorer cela, j'ai vu que pas mal de gens compensait le côté non sûr du langage par une rigueur lors du dévleoppmeent avec du TDD, des outils tels que Karma (le NCrunch du Javascript), j'ai regardé du côté de DART, et puis finalement opté pour TypeScript, parce que je suis Microsoft d'une part et qu'il me semble avoir une meilleur interopabilité avec le code Javascript existant

Depuis 2 semaines que développent en TypeScript avec Angular, je me rend compte petit à petit de ce que disait Rui, pouvoir avoir un feedback rapide parce qu'il n y a pas de compilation c'est important, et finalement Visual Studio n'est peut-être pas l'outil le plus adapté. A terme, quand j'aurais le temps, j'essairais de dégager VS et de le remplacer par WebStorm de JetBrain (je suis fan de Resharper donc j'ai un à priori positif), peut -être aussi dégager mes scripts de build MSBUILD en XML (qui ont toujours été l'horreur à débugger), et les remplacer par des tâches GRUNT pour pouvoir utiliser tout les outils de Node.JS (j'utilise Require.JS donc il me faudrait un bundler, concateneur de fichiers).

Pour la couche serveur, il s'agirait d'une simple API Rest, je pense utiliser la WebAPI. Je ne vois pas trop l'intérêt d'utiliser les outils alternatifs que préconise Rui (c'est à peu près le seul truc où je ne suis pas d'accord avec lui :) ), comme ServiceStack ou Nancy. Autant WCF était une usine à gaz, plutôt destinée à SOAP et mal adapté au REST, et là ces outils se justifiaient, autant depuis la WebAPI je ne suis pas sûr qu'ils apportent quelque chose de suffisant pour justifier l'usage d'une techno "exotique"  et donc moins connue, moins supportée. 

Pour ma couche Rest, je pense utiliser une approche à la CQRS, avec une API sous forme de commandes et de requête. C'est là que mes lectures sur CQRS peuvent m'être utile, car certains nomment cette architecture à base de web service REST, WOA (Web Oriented Architecture) pour dire que c'est la suite de SOA. Et un des inconvénient, c'est que REST contrairement à SOAP ne gère pas les transactions atomiques. Donc si l'on expose son API sous forme CRUD, on risque les problèmes classiques (du type je débite un compte, mon appli plante et l'autre compte n'a pas encore été crédité, de l'argent à disparu dans la nature). C'est la raison pour laquelle je pense que les outils type WCF Data Services, qui exposent automatiquement une BD via entity framework en web services, me semblent buggé. Avec une approche CQRS, chaque commande représente une transaction métier (ex : Commande = Transfert d'argent du compte A vers B), donc pas de problème "d' acidité".

Bon enfin, en bref, j'ai beaucoup d'idée mais ça en reste en stade du POC (voir dans ma tête pour l'instant).. 


Stéphane JUTIN


Le mercredi 5 mars 2014 22:17:55 UTC+1, Vincent Bourdon a écrit :
Salut tout le monde,

Je vois que le forum dort un peu.
Je vous propose de lancer un Sujet autour de vos expériences (bonnes ou mauvaises) avec ASP.net de façon assez large :  WebForm, MVC , ServiceStack, signalR ... et tout ce que vous utlisez ou avez utilisez.
Je me lance du coup.


Je fais principalement du MVC depuis la sortie de la première version, ça représente pour moi le pattern qui colle le mieux avec le Web et l'HTTP en général : une entrée => une sortie.

Je trouve que la v5 est enfin une "vrai" version grace à OWIN et KATANA. Je m'explique, je trouve que chaque version de ASP.net n'a apporté que des évolutions mineur voir faire un agrégat de divers nuget et framework. Razor à été aussi une grosse évolution.
Je lance aussi le sujet pour voir quels outils vous utilisez. 

- Web Essential : Vraiment pas mal, mais un peu couteux en perf pour VS je trouve, je l'ai désactivé pour l'instant
- R# : Pas seulement pour ASP.net mais aussi pour coder plus vite et mieux ... c'est dingue comment on peut devenir dépendant de cet outil ! peut être un peu trop ...

Coté Frameworks :

- ServiceStack : juste excellent ! Le côte simplicité et performance m'a tout de suite plus. Malheureusement la version payante m'a freiné dans mon élan :(
- Bootstrap 3 : je suis pas designer, et ça fait le taf.  Utilisez vous les packages nuget ? Je trouve que finallement pour tout ce qui est js et css ce n'est pas très utile car ils ne vont jamais là ou l'on voudrait les placer et les mise à jour ne sont pas toujours régulières. 
- Bundle Transformer : J'utilise en ce moment les bundle transformer pour Less, YUI, Typescript. Tout ce fait bien comme il faut avec au final (sur la page standard) un seul js et un css. Problème, comme la précompilation se fait que à la compilation, je suis obligé de relancer sans cesse le debug ...finalement ce n'est pas très efficace pendant le dev des styles et des js. De plus comme je n'ai aucun fichier physique je n'ai aucune autocompletion dans VS. Je vais peut être revenir à Web Essential.
- AngualrJS : Pour moi le meilleur framework js pour faire du SPA à l'heure actuel. Après il faut voir exactement comment le marrié avec le côté serveur d'asp.net. Plus de Directive ou plus de génération côté serveur ???
- signalR : pas encore mis en place, mais c'est en cours, je pre
...

Jérôme Avoustin

unread,
Mar 12, 2014, 6:01:47 AM3/12/14
to paris...@googlegroups.com
T'as une version tl;dr ? :)


--

---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "altnetfr".
Pour vous désabonner de ce groupe et ne plus en recevoir les messages, envoyez un e-mail à l'adresse parisaltnet...@googlegroups.com.

Stéphane JUTIN

unread,
Mar 12, 2014, 6:06:11 AM3/12/14