alt.net spring.net

Post on 30-Jun-2015

1.786 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

http://www.eventbrite.com/event/727568176

TRANSCRIPT

ALT.Net présente:Spring.NetPar Mathias Kluba & Florent Dugué & David Coppet

Présentation

Mark Pollack: MVP & founder of Spring.NET

Mathias Kluba: consultant .net chez FastconnectBlog: http://grozeille.comTwitter: mathiaskluba

Plan

Introduction sur Spring.Net et Spring Java

L'injection de dépendance

Spring.Net: Framework d'entreprise

Spring.Net et l'AOP

Spring.Net et la gestion de configuration

Spring.Net et le Web

DEMODEMO

DEMODEMO

DEMODEMO

DEMODEMO

Un peu d’histoire sur Spring Java Framework OpenSource née à l’époque de J2EE EJB en 2003:

propose une alternative orienté POJO plus simple d’utilisation Naissance de « Interface21 » en 2004 pour offrir un support

commercial et des formations SpringDM Server en 2008: alternative aux serveurs JEE classiques

(basé sur le modèle OSGI) Acquisition de:

Hyperic HQ: outil de monitoring Rabit MQ: messaging

Support commercial de: Groovy et Grails (Groovy On Rails) Apache Tomcat / Apache HTTPD Apache MQ

SpringSource : a division of VMWARE.Un avenir vers le Cloud avec une offre IaS & PaS : VMforce

Spring.Net

Une version .Net très .Net qui s’intègre avec: WCF ASP.Net NHibernate DB4O Resharper Etc.

Bonne documentation, projet vivant:Version 1.3 le 15 Décembre 2009Version 2.0 en développement.

Dependency Injection

Spring.net c’est d’abord l’injection de dépendance (ou Inversion of Control container) orienté PONO

ALTernative à Unity de Microsoft… Mais pas la seule:

Windsor Castle Ninject AutoFac Etc.

Devenu un standard en Java:java injection (jsr-299) @Inject/@Depend/etc.

Démo

L’injection de dépendance par la pratique

L’injection de dépendance par la pratique

Orienté PONO: le Domain fournit des briques de Lego, et Spring.Net assemble l’application avec son plan de construction (XML).

Modèle non intrusif: on entoure le métier par du technique

Dépendance explicite par référenceou Dépendance automatique avec « autowiring »

Un schéma XSD qui offre la complétion et un template Resharper offre la complétion/vérification des types

Spring.Fluent! Configuration « par code » dans le future Spring.Net 2.0 (avec Convention over Configuration)

Spring.Net: Enterprise Framework

Spring.Net: Enterprise Framework Spring.Core

IOC Injection de méthode, Injection d’événement, etc. Dépendance explicite entre les objets, Alias de types,

Alias d’ID Singleton/Auto-Wiring/Lazy-init, etc. Gestion de contexte (composition/héritage) Injection de configuration (key/value) Conversion de type transparente

« ObjectFactory » et cycle de vie de la Factory Framework de validation Gestion transparente des ressources Gestion d’événements « loosely coupled »

Spring.Net: Enterprise Framework Spring.Data

Couche d’abstraction à ADO.Net (Oracle, SQLServer, etc.)

Couche d’abstraction des Exceptions ADO.Net « AdoDaoSupport » : écrire vos DAO plus rapidement Gestion des Transaction

Déclarative par AOP Ou explicite par code

Spring.Data.Nhibernate Transation Nhibernate DAO Nhibernate Gestion de session

Spring.Net: Enterprise Framework Spring.Services

Exposer des Pono avec DCOM .Net Remoting WebService (.Net 2.0) WCF

Consommer des services avec création de proxy dynamique Spring.Messaging

Couche d’abstraction de messaging avec Apache ActiveMQ TIBCO EMS MSMQ

Gestion de transaction

Spring.Net: Enterprise Framework Spring.Web

IOC avec ASP.Net (scope request/session/application) IOC possible avec les MembershipProvider,

RoleProvider, SiteMapProvider, HttpHandler, Page ASPX, WebService ASMX, etc.

DataBinding Bidirectionnel dans les pages ASPX « Result-Mapping » : pseudo MVC Gestion de la culture, injection des traductions, gestion

des ressources Validation (intégré avec le framework de Validation de

Spring.Core) AJAX: ancètre de AjaxExtension

Spring.Net: Enterprise Framework Spring.Aop

Aspect oriented programming De nombreux aspects « de base »

Spring.Testing IOC intégré avec NUnit et MSTest

Spring.Scheduling.Quartz Configuration de Quartz par fichier XML Intégration de PONO dans Quartz

Spring.Template.Velocity Utilisation de template NVelocity

Démo

La configuration avec Spring.Net

Configuration avec Spring.Net Injection d’expression

Conversion automatique avec TypeConverterDéjà 139 Converters existants dans le Framework .Net, et 13 de plus dans le Framework Spring.net!

Injection de variables

Configuration avec Spring.Net Sources de variables pré-existantes:

ConfigSectionVariableSource PropertyFileVariableSource EnvironmentVariableSource CommandLineArgsVariableSource RegistryVariableSource SpecialFolderVariableSource ConnectionStringsVariableSource

Schéma XSD additionnels

Démo

Spring.Net AOP par la pratique

Spring.Net AOP

Tissage (weaving) par proxy: non intrusif

Pure XML ou par attributs

Spring.Net AOP

Plusieurs Aspect de base Caching Exception Handling Logging Retry Transaction Parameter Validation

Démo

Spring.Net avec ASP.Net

Spring.Net avec ASP.Net

Scope Application/Session/Request Injection dans les pages i18n en mode « push » avec 4 « CultureResolver »:

DefaultWebCultureResolver RequestCultureResolver SessionCultureResolver CookiCultureResolver

Globalization avec les « Well-known directories » Databinding Bidirectionel « Result Mapping » Exposer/Consommer des webservices à partir de

PONO (pour du .Net 2.0) WCF est aussi supporté (.net 3.0) Support de NVelocity

Spring.Net ailleurs

NHibernate.ByteCode.Spring utilisation de Spring.Aop pour la création

dynamique de proxy dans Nhibernate

MVCContrib intégrer Spring.Net dans ASP.Net MVC

Liens/Ressources

http://springframework.net

The Definitive Guide to Spring for .NET

http://www.dotnetguru2.org/bbaia/ Bruno Baia

http://lmgtfy.com/?q=spring.net

top related