.Net pour le développeur Java - une source d'inspiration?
-
Upload
rui-carvalho -
Category
Documents
-
view
561 -
download
1
description
Transcript of .Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java : une source d'inspiration ?
Cyrille Martraire @cyriuxRui Carvalho @rhwy
C’est vendredi soirhttp://www.futura-sciences.com/fr/doc/t/medecine-1/d/et-bailler-de-plaisir_571/c3/221/p3/
Au menu
• Le point sur .Net
•Ce qui manque à Java
• Du fun !
http://blog.gaborit-d.com/17-parodies-fun-de-la-situation-room/
Au menu
Ce qui manque à Java
Le point sur .Net
http://blog.gaborit-d.com/17-parodies-fun-de-la-situation-room/
Au menu
Ce qui manque à Java
Le point sur .Net
Rui - @rhwy• Développeur, architecte, blogueur, prof
• indépendant chez ArtOfNet
• Dans le web et technos microsoft depuis près de 15 ans
• Spécialiste Asp.Net Mvc, Sql Server et Speaker au Techdays
• Animateur dans la communauté .Net ALT.NET Paris
• Passionné de dev, OSS, web, agilité, architectures
• Veut devenir maitre artisan du logiciel quand il sera grand
Cyrille - @cyriux
• Ingénieur généraliste ENSTA à Brest
• Développeur depuis les startups en 2000, et en finance depuis
• Fondateur de la communauté Software Craftsmanship Paris
• Co-fondateur et directeur technique d’Arolla
• Passionné de développement, DDD, TDD, BDD, specs agiles…
• Veut devenir maitre artisan du logiciel quand il sera grand
.Net pour moi au départ…
http://www.freeimageslive.co.uk/free_stock_image/bsodbluescreen6927jpg
"La Guerre des Voisins"
Onceupon
a Time
...
1996 - Java Applets (cool)
1996 – Active X (cool?)
(sub{s,^(.*)$,$1+//,e for@_})->($A)
CGI Perl
1995 – ASP / IIS
~ 1999 JSP-J2EE
Reprenons le fil de l'histoire- next -
1996 JDK 1.0
1997 JDK 1.1
1998 JDK 1.2
2000 JDK 1.3
2002 JDK 1.4
2002 .Net 1.0
2004 JDK 5.0
2002 JDK 1.4
2002 .Net 1.0
2003 .Net 1.1
2006 JDK 6.0
2005 .Net 2.0
2011 JDK 7.0
2005 .Net 3.0
2007 .Net 3.5
2010 .Net 4.0
2012 .Net 4.5
2013? JDK 8.0
Oui mais concrètement?
.Net : une réplique de Java ?
• 'instanceof' is called 'is'• {}• Majuscules !
Naturellement polyglotte !
Séduire les fans de C++
Séduire les fans de C++
• exe .dll autour du bytecode
• arithmétique de pointeurs
• unsafe, fixed : mémoire à la main
• conditional compilation
Fonctionnalités
Java Vs. C#/.Net
Jaloux de C#
Mieux en Java
LINQRazor
Lambdas
Extension methods
F#
Dynamics Expression trees
Reified generics
Operator overloading
Lifted “?” syntax delegateJava enum as class
Array ≈ Collection
Partial class
Conditional CompilationGenerator (yield)
3rd-party Java libs & APIsPure Java → Portable Open-Source
Votre. feature Net préférée ?
Votre feature Net préférée ?•Syntax Sugars
•Extension Methods
• Lambdas
• Linq
• (Razor)
Prenons un exemple
Voyage dans les bonnes choses de C#
Old School to LINQ
Itérators
varLinq
Extension MethodsAnonymous
objects
Dynamics
lambdas AutoProperties
SOLID? DRY?refactor
Ce qui nous amène à LINQ
Derniers Points
Dynamics
!= variant
= Type spécial extensible
!= dynamic proxy
= proxy contrat infini + méthodes d'accès
Mais aussi
Razor - syntaxe hybride HTML/C#
@foreach(var item in Model) {
int next = item.Count+1;
<h2>@item.Title</h2><a href="#@next">Next</a>
}
<h1>Ma collection</h1>
Ca poutre !
Play 2 - copiteur en Scala
@(customer: Customer, orders: List[Order]) <h1>Welcome @customer.name!</h1><ul> @for(order <- orders) { <li>@order.getTitle()</li>} </ul>
Communautés
Plus c’est social mieux c’est
http://monodevelop.com/Screenshots
http://monodevelop.com/Screenshots
http://blog.zap2it.com/pop2it/2012/02/sacha-baron-cohen-aka-the-dictator-will-attend-the-oscars.htmlhttp://bourse-planete.com/leffet-moutonnier/
http://blog.zap2it.com/pop2it/2012/02/sacha-baron-cohen-aka-the-dictator-will-attend-the-oscars.htmlhttp://bourse-planete.com/leffet-moutonnier/
Pour FinirQuelques Messages
JVM != JAVA
Enterprise Wars
...
http://www.designsontalent.com/blog/bid/50260/10-Tips-for-Reinventing-Talent-Acquisition
C# : le langage idéal ?
Questions
http://www.actone.net/methodes/poser-des-questions/