Auditeur: Léonardo AMODIO Cours: NFE107 J2EE vs .NET Auditeur: Léonardo AMODIO Cours: NFE107 12/11/2018 J2EE vs .NET
Objectifs Présenter les paradigme Orienté Objet Définir le domaine d’application Présenter les technologies J2EE et .NET Lister les différences 12/11/2018 J2EE vs .NET
Le paradigme OO Né dans les années 60 … Simula (1967) Smalltalk (1970) …a connu un forte succès dans le temps C++, Objective C, Object Pascal, … (années 80) Java (1995) et J2EE (1999) C#, Visual Basic .NET de .NET (2002) 12/11/2018 J2EE vs .NET
Les langages OO Introduit nouveaux concepts Classe: entité (attribut et méthodes) Objet: instance de la classe Caractéristiques principales Héritage Capsulage Masquage Outil de facto pour application distribuées 12/11/2018 J2EE vs .NET
Architectures distribuées Application de grandes dimensions Programmes sur différents supports hardware Différents niveaux de distribution 1-tier (bdd et appl sur même hardware) 2-tier (client / serveur) 3-tier (application intermédiaire qui isole la bdd) N-tier 12/11/2018 J2EE vs .NET
4-tier 12/11/2018 J2EE vs .NET
4-tier Couche présentation Couche de service Couche d’objets métier Client léger et lourd Couche de service Règles métiers (traitements) Couche d’objets métier Entité de l’application Couche d’accès à la bdd Usine d’objet métiers dans la base 12/11/2018 J2EE vs .NET
J2EE Spécification pour le langage Java Ensemble de librairies pour le J2SE Indépendante de la plate-forme JVM pour plusieurs OS Bytecode intermédiaire Garbage collector 12/11/2018 J2EE vs .NET
J2EE Technologie web application Servlet Container (JSP, Servlet) Technologie enterprise application EJB Container (EJB), JTA Technologie web service JCA (connectors),… API SOAP (service oriented architecture), UDDI, WSDL, ebXML Technologie Management and security JAAS 12/11/2018 J2EE vs .NET
J2EE 12/11/2018 J2EE vs .NET
J2EE : outils J2SE et J2EE IDE Jbuilder, Eclipse,… Serveurs d’application (EJB et Servlet container) Websphere, Jonas, Sun Application Server,… Plusieurs framework adjonctifs Struts,Hibernate,… 12/11/2018 J2EE vs .NET
.NET Framework Microsoft (standard ECMA) Environ 25 langages supportés Visual Basic .NET, C#, C++, Delphi Dépendance des plate formes Microsoft Projet Mono pour portage sur autres plate formes CLR (Common Language Runtime) CIL (Common Intermediate Language) Système de nettoyage automatique 12/11/2018 J2EE vs .NET
.NET Technologie web application Technologie enterprise ASP.NET, WinForm Technologie enterprise COM, COM+ (conteneur de Serviced Components) Technologie web service Host Integration Server 2000 (equiv Connector J2EE) SOAP, UDDI, WSDL Sécurité CAS (Code Access Security) - système de preuves appdomains (domaine d'application) - isoler un processus 12/11/2018 J2EE vs .NET
.NET 12/11/2018 J2EE vs .NET
J2EE, .NET, 4-tier Couche présentation J2EE: JSP, Servlet (client léger), AWT, Swing (client lourd) .NET: ASP (client léger), WinForm (client lourd) Couche service J2EE: EJB session .NET: Serviced/Managed Component Couche objets métier J2EE: EJB entity bean .NET: pas de spécification (objets C# ou VB) Couche d’acces aux données J2EE: JDBC .NET: ADO.NET 12/11/2018 J2EE vs .NET
J2EE, .NET, 4-tier 12/11/2018 J2EE vs .NET
Conclusions J2EE disponible gratuitement pour toutes les plate formes majeures .NET pour l’instant au 100% sur Microsoft et payant .NET code interprété à la volée (- sécurité) .NET avantage de coûts sur le court terme (framework déjà packagé) J2EE plus de contraintes au début mais avantage sur long termes J2EE réponse à tout type de situation (plate forme plus mature) .NET réutilisation des compétences des anciens développeurs (25 langages disponibles) .NET offre prestation meilleures en exécution 12/11/2018 J2EE vs .NET
Conclusions 12/11/2018 J2EE vs .NET