SlideShare une entreprise Scribd logo
.Net et l'Open Source Retour d’expérience Page  
Qui sommes-nous ? Florent Dugué Architecte .NET chez SFEIR Passionné d’OpenSource Empêcheur de tourner en rond ! Didier Girard Directeur Technique de SFEIR Architecte IT Défricheur technologique ! http://www.insideIT.fr
Introduction Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Open Source ? Page  
C’est aussi ça !
L’Open Source Way of Life Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Opensource et développement Opensource ?
Stack de développement
Quatre niveaux Page  
Opensource et développement OS ? Page  
Opensource et développement IDE Page  
Opensource et développement Plateforme : .NET Page  
Opensource et développement Page  
Opensource et développement Frameworks Page  
Opensource et développement ASP.NET Ajax ASP.NET MVC ASP.NET, WinForms ? Spring.NET Nhibernate Page  
Opensource et développement Page  
Les projets Open Source Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Les projets existant Quelques projets Open Source en .Net : Persistance :  Framework applicatif :  Logging :  Log4Net IDE :  Page  
Les projets existant Il y en a plein d’autres ! Page  
Les projets existant Il faut aller les chercher ! Page  
Nos meilleurs amis chez Microsoft Sam Ramji http://port25.technet.com/ Marc Gardette http://blogs.technet.com/porte25/ Page  
Les besoins Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Les besoins En quoi puis-je vous aider ? Page  
Les besoins Les projets informatiques se ressemblent Page  
Les besoins Les personnes sont différentes Page  
Les besoins Des outils utilisables par tous Page  
Les besoins Ne pas avoir à se poser de questions. Page  
Les besoins Gérer ces aspects manuellement est Rébarbatif Facile à oublier Source d’erreur Page  
Un cas concret Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Cas réel Maintenant, faut y aller ! Page  
Cas réel Environnement client : Projet critique Equipe de 5 personnes 200 utilisateurs Sites locaux et distants Pic de charge mensuel Pic de charge annuel  Page  
Cas réel 6 mois pour y arriver Page  
Cas réel Comment vendre au client ? Page  
Cas réel Avant : C++ / Versant VBScript, JScript Corba Après : C# / Oracle C++ / Versant VBScript, JScript Corba Page     400 000 €
Cas réel Environnement technique : poste client XP poste client distant : Citrix Middleware sous Windows 2000 et 2003 OS 32 et 64 bits Base de données Oracle 10g Client lourd Web Batch Page  
Cas réel Une solution construite autour d’outils Open Source Page     Common.Logging  V 1.2 V 1.1 V 1.2.0
Cas réel C’est quoi ? Page  
Cas réel Différents modules : Core : Inversion de Contrôle,  Threading, Validation, … AOP : Transactions, Cache, … Data : ADO.Net Data.NHibernate Web Services Testing.NUnit Page  
Cas réel Début du projet : avril 2004 7 décembre 2007 : Version 1.1 19 contributeurs (8 actifs cette année) Forum : plus de 8000 membres Ex : Mercado Eletrônico ( leader B2B en Amérique latine) Siemens Corporate Technology Siemens VDO Page  
Spring Java  Spring : incontournable dans le monde java 90000 download par mois Page  
Cas réel SPRING.NET 10000 download par mois Page  
Page     [Transaction] [Security(Action.CreateBook)] public class  BookService  : IBookService   { public  Book CreateBook ( string name ) { // code de création } } interface  IBookService  { Book C reateBook(string name); } Interface Implémentation
Cas réel Fichier XML de configuration : <objects xmlns=&quot;http://www.springframework.net&quot;> <object name=&quot;MyMovieLister&quot; type=&quot;Spring.Examples.MovieFinder.MovieLister, Spring.Examples.MovieFinder&quot;> <!-- using setter injection... --> <property name=&quot;movieFinder&quot; ref=&quot;MyMovieFinder&quot;/> </object> <object name=&quot;MyMovieFinder&quot; type=&quot;Spring.Examples.MovieFinder.SimpleMovieFinder, Spring.Examples.MovieFinder&quot;/> </object> </objects> Page  
Cas réel Utilisation : public static void Main () { IApplicationContext ctx = ContextRegistry.GetContext(); MovieLister lister = (MovieLister) ctx.GetObject (&quot;MyMovieLister&quot;); Movie[] movies = lister.MoviesDirectedBy(&quot;Roberto Benigni&quot;); Console.WriteLine (&quot;\nSearching for movie...\n&quot;); foreach (Movie movie in movies) { Console.WriteLine ( string.Format (&quot;Movie Title = '{0}', Director = '{1}'.&quot;, movie.Title, movie.Director)); } Console.WriteLine (&quot;\nMovieApp Done.\n\n&quot;); } Page  
C’est quoi ? Outil de Mapping Relationnel (ORM) Page     Object ORM Base de donnée
Cas réel Début du projet : février 2003 26 novembre 2007 : Version 1.2.1 18 contributeurs (6 actifs début 2008) Ex : Cuyahoga (CMS) AlachiSoft NCache (Cache niveau 2 distribué) Page  
Hibernate : incontournable dans le monde java 80000 téléchargement par mois Page  
NHibernate : 20000 téléchargement par mois Page  
Cas réel Mapping : <hibernate-mapping xmlns=&quot;urn:nhibernate-mapping-2.2&quot; assembly=&quot;Eg” namespace=&quot;Eg&quot;> <class name=&quot;Cat&quot; table=&quot;CATS&quot;> <id name=&quot;Id&quot; column=&quot;uid&quot; type=&quot;Int64&quot;> <generator class=&quot;hilo&quot;/> </id> <property name=&quot;BirthDate&quot; type=&quot;Date&quot;/> <property name=&quot;Color&quot; not-null=&quot;true&quot;/> <many-to-one name=&quot;Mate&quot;/> <set name=&quot;Kittens&quot;> <key column=&quot;MOTHER&quot;/> <one-to-many class=&quot;Cat&quot;/> </set> </class> </hibernate-mapping> Page  
Cas réel Page     [Transaction] [Security(Action.CreateBook)] public class  BookService  : IBookService   { public  Book CreateBook ( string name ) { Book book = new Book(); Book.Name = name; bookDao.Save(book); return book; } }
Cas réel Temps de prise en mains ? Page     2 mois
Cas réel La seule solution ? Page     Enterprise Library
Cas réel Résultat Page  
Cas réel Une livraison dans les temps Page  
Cas réel Un client satisfait Page  
Cas réel Une équipe heureuse valorisée fière Page  
Conclusion Page     Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
Conclusion Les projets Open Source sont une des réponses aux problèmes rencontrés dans les projets Ce n’est pas la seule, mais celle que j’ai apportée Page  
www.sfeir.com SFEIR en quelques tags .NET, Java, OpenSource, Innovation, Technologie, Croissance, Solidité, Managers, Vision Intervention dans les plus grands événements IT : Google Developer Day 2007 Rencontres GWT 2007 Rencontres Agiles 2007 JavaPolis 2007 Microsoft TechDays 2008 QCon 2008 Page  

Contenu connexe

ODP
Séminaire Ruby on Rails (novembre 2010)
PDF
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 2/3 - HTML5, CSS3, Twitte...
PDF
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
PDF
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
PDF
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
PPS
Esees Dios
PPT
TEST for MSMITH
PPT
Working 2.0
Séminaire Ruby on Rails (novembre 2010)
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 2/3 - HTML5, CSS3, Twitte...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 2/3 - HTML5 / CSS3 / Twitter...
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
Esees Dios
TEST for MSMITH
Working 2.0

En vedette (9)

PDF
Plantas Electricas a Diesel
PPS
Nostradamus Y Chavez
PPS
Probl Me 1 ..
PPT
UC Nursing CESDEV Training 1
PPT
jel madden
PDF
Séminaire Linagora sécurite et identité en Open Source, novembre 2009
PDF
Brochure Cotorra P R2
PDF
CMSday 2013 - Les atouts du modèle open source
PDF
Business Models for Open Source Hardware
Plantas Electricas a Diesel
Nostradamus Y Chavez
Probl Me 1 ..
UC Nursing CESDEV Training 1
jel madden
Séminaire Linagora sécurite et identité en Open Source, novembre 2009
Brochure Cotorra P R2
CMSday 2013 - Les atouts du modèle open source
Business Models for Open Source Hardware
Publicité

Similaire à Symposium2008 Open Source 08 02 2008 (20)

PPT
Ged Open Source - Documation 2010
PDF
Scub Foundation, usine logicielle Java libre
PPT
GtugDakar AppEngine, Gwt
PPTX
20140130 mug lyon - post-mortem d'une application métier
PDF
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
PDF
Saas Libre
PDF
Presentation du socle technique Java open source Scub Foundation
PDF
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
PDF
Support de cours Spring M.youssfi
PPTX
Architectures n-tiers
PDF
Cv Ouaz Ines
PPT
Présentation OSGI
PDF
Core Techs Livre Blanc De 12 Solutions De Gestion De La Connaissance 121 8914
PDF
Cv ines ouaz
PDF
Dotnet j2 ee
PPTX
Javavs net
PPT
Environnements & Développements
PPT
Présentation Sollan I-Expo 2008
PPTX
Axis2 services fr
PDF
Solutions Linux 2010
Ged Open Source - Documation 2010
Scub Foundation, usine logicielle Java libre
GtugDakar AppEngine, Gwt
20140130 mug lyon - post-mortem d'une application métier
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Saas Libre
Presentation du socle technique Java open source Scub Foundation
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Support de cours Spring M.youssfi
Architectures n-tiers
Cv Ouaz Ines
Présentation OSGI
Core Techs Livre Blanc De 12 Solutions De Gestion De La Connaissance 121 8914
Cv ines ouaz
Dotnet j2 ee
Javavs net
Environnements & Développements
Présentation Sollan I-Expo 2008
Axis2 services fr
Solutions Linux 2010
Publicité

Symposium2008 Open Source 08 02 2008

  • 1. .Net et l'Open Source Retour d’expérience Page 
  • 2. Qui sommes-nous ? Florent Dugué Architecte .NET chez SFEIR Passionné d’OpenSource Empêcheur de tourner en rond ! Didier Girard Directeur Technique de SFEIR Architecte IT Défricheur technologique ! http://www.insideIT.fr
  • 3. Introduction Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 4. Open Source ? Page 
  • 6. L’Open Source Way of Life Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 12. Opensource et développement Plateforme : .NET Page 
  • 14. Opensource et développement Frameworks Page 
  • 15. Opensource et développement ASP.NET Ajax ASP.NET MVC ASP.NET, WinForms ? Spring.NET Nhibernate Page 
  • 17. Les projets Open Source Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 18. Les projets existant Quelques projets Open Source en .Net : Persistance : Framework applicatif : Logging : Log4Net IDE : Page 
  • 19. Les projets existant Il y en a plein d’autres ! Page 
  • 20. Les projets existant Il faut aller les chercher ! Page 
  • 21. Nos meilleurs amis chez Microsoft Sam Ramji http://port25.technet.com/ Marc Gardette http://blogs.technet.com/porte25/ Page 
  • 22. Les besoins Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 23. Les besoins En quoi puis-je vous aider ? Page 
  • 24. Les besoins Les projets informatiques se ressemblent Page 
  • 25. Les besoins Les personnes sont différentes Page 
  • 26. Les besoins Des outils utilisables par tous Page 
  • 27. Les besoins Ne pas avoir à se poser de questions. Page 
  • 28. Les besoins Gérer ces aspects manuellement est Rébarbatif Facile à oublier Source d’erreur Page 
  • 29. Un cas concret Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 30. Cas réel Maintenant, faut y aller ! Page 
  • 31. Cas réel Environnement client : Projet critique Equipe de 5 personnes 200 utilisateurs Sites locaux et distants Pic de charge mensuel Pic de charge annuel Page 
  • 32. Cas réel 6 mois pour y arriver Page 
  • 33. Cas réel Comment vendre au client ? Page 
  • 34. Cas réel Avant : C++ / Versant VBScript, JScript Corba Après : C# / Oracle C++ / Versant VBScript, JScript Corba Page  400 000 €
  • 35. Cas réel Environnement technique : poste client XP poste client distant : Citrix Middleware sous Windows 2000 et 2003 OS 32 et 64 bits Base de données Oracle 10g Client lourd Web Batch Page 
  • 36. Cas réel Une solution construite autour d’outils Open Source Page  Common.Logging V 1.2 V 1.1 V 1.2.0
  • 37. Cas réel C’est quoi ? Page 
  • 38. Cas réel Différents modules : Core : Inversion de Contrôle, Threading, Validation, … AOP : Transactions, Cache, … Data : ADO.Net Data.NHibernate Web Services Testing.NUnit Page 
  • 39. Cas réel Début du projet : avril 2004 7 décembre 2007 : Version 1.1 19 contributeurs (8 actifs cette année) Forum : plus de 8000 membres Ex : Mercado Eletrônico ( leader B2B en Amérique latine) Siemens Corporate Technology Siemens VDO Page 
  • 40. Spring Java Spring : incontournable dans le monde java 90000 download par mois Page 
  • 41. Cas réel SPRING.NET 10000 download par mois Page 
  • 42. Page  [Transaction] [Security(Action.CreateBook)] public class BookService : IBookService { public Book CreateBook ( string name ) { // code de création } } interface IBookService { Book C reateBook(string name); } Interface Implémentation
  • 43. Cas réel Fichier XML de configuration : <objects xmlns=&quot;http://www.springframework.net&quot;> <object name=&quot;MyMovieLister&quot; type=&quot;Spring.Examples.MovieFinder.MovieLister, Spring.Examples.MovieFinder&quot;> <!-- using setter injection... --> <property name=&quot;movieFinder&quot; ref=&quot;MyMovieFinder&quot;/> </object> <object name=&quot;MyMovieFinder&quot; type=&quot;Spring.Examples.MovieFinder.SimpleMovieFinder, Spring.Examples.MovieFinder&quot;/> </object> </objects> Page 
  • 44. Cas réel Utilisation : public static void Main () { IApplicationContext ctx = ContextRegistry.GetContext(); MovieLister lister = (MovieLister) ctx.GetObject (&quot;MyMovieLister&quot;); Movie[] movies = lister.MoviesDirectedBy(&quot;Roberto Benigni&quot;); Console.WriteLine (&quot;\nSearching for movie...\n&quot;); foreach (Movie movie in movies) { Console.WriteLine ( string.Format (&quot;Movie Title = '{0}', Director = '{1}'.&quot;, movie.Title, movie.Director)); } Console.WriteLine (&quot;\nMovieApp Done.\n\n&quot;); } Page 
  • 45. C’est quoi ? Outil de Mapping Relationnel (ORM) Page  Object ORM Base de donnée
  • 46. Cas réel Début du projet : février 2003 26 novembre 2007 : Version 1.2.1 18 contributeurs (6 actifs début 2008) Ex : Cuyahoga (CMS) AlachiSoft NCache (Cache niveau 2 distribué) Page 
  • 47. Hibernate : incontournable dans le monde java 80000 téléchargement par mois Page 
  • 48. NHibernate : 20000 téléchargement par mois Page 
  • 49. Cas réel Mapping : <hibernate-mapping xmlns=&quot;urn:nhibernate-mapping-2.2&quot; assembly=&quot;Eg” namespace=&quot;Eg&quot;> <class name=&quot;Cat&quot; table=&quot;CATS&quot;> <id name=&quot;Id&quot; column=&quot;uid&quot; type=&quot;Int64&quot;> <generator class=&quot;hilo&quot;/> </id> <property name=&quot;BirthDate&quot; type=&quot;Date&quot;/> <property name=&quot;Color&quot; not-null=&quot;true&quot;/> <many-to-one name=&quot;Mate&quot;/> <set name=&quot;Kittens&quot;> <key column=&quot;MOTHER&quot;/> <one-to-many class=&quot;Cat&quot;/> </set> </class> </hibernate-mapping> Page 
  • 50. Cas réel Page  [Transaction] [Security(Action.CreateBook)] public class BookService : IBookService { public Book CreateBook ( string name ) { Book book = new Book(); Book.Name = name; bookDao.Save(book); return book; } }
  • 51. Cas réel Temps de prise en mains ? Page  2 mois
  • 52. Cas réel La seule solution ? Page  Enterprise Library
  • 54. Cas réel Une livraison dans les temps Page 
  • 55. Cas réel Un client satisfait Page 
  • 56. Cas réel Une équipe heureuse valorisée fière Page 
  • 57. Conclusion Page  Introduction L’Open Source Way of Life Les projets Open Source Les besoins Un Cas Concret Conclusion
  • 58. Conclusion Les projets Open Source sont une des réponses aux problèmes rencontrés dans les projets Ce n’est pas la seule, mais celle que j’ai apportée Page 
  • 59. www.sfeir.com SFEIR en quelques tags .NET, Java, OpenSource, Innovation, Technologie, Croissance, Solidité, Managers, Vision Intervention dans les plus grands événements IT : Google Developer Day 2007 Rencontres GWT 2007 Rencontres Agiles 2007 JavaPolis 2007 Microsoft TechDays 2008 QCon 2008 Page 

Notes de l'éditeur

  • #2: Entreprise JavaBeans 3.0