.Net pour le développeur Java - une source d'inspiration?

Post on 10-May-2015

558 views 1 download

description

Pour se remettre dans le contexte, nous parlons ici de .Net présenté à une conférence Java. Nous allons revoir un peu d'historique des débuts pré-.Net et des inspirations mutuelles des deux environnements. Puis nous parlerons fonctionnalités à travers un exemple illustrant notamment les points essentiels de C# aujourd'hui avec les lambdas qui arriveront avec Java 8. Nous finirons enfin avec une partie communautaire.

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/