& Langage Intermédiaire du Web (C#)

Slides:



Advertisements
Présentations similaires
Pierre Lagarde Relation technique développeur Grégory Renard [Rédo] Responsable Développement Wygwam.
Advertisements

Développement dapplications sur mobiles.NET et J2ME, C++ et Symbian WIPLIER Thomas – M2IRT2009 – 15/02/2007.
« Les Mercredis du développement » Les Starter Kits Level 100 Présenté par Pierre Lagarde Relation technique développeur
De Windows Forms à Windows Presentation Foundation
Windows Sharepoint Services v3 (3/6) Les nouveautés Stéphane Crozatier Relation Technique Editeurs de Logiciels DPE - Microsoft France
La plateforme.NET 2.0 vue par le développeur Pascal Belaud Microsoft France SAGA.NET
La plateforme.NET 2.0 vue par le développeur Pascal Belaud Microsoft France SAGA.NET
1 HPC et Windows 2003 CCS pour les développeurs Visual Studio 2005.
ASP.NET v2 + Ajax = Atlas Pierre Lagarde DevDays 2006 Equipé aujourdhui, prêt pour demain !
Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.
HPC et Windows 2003 CCS pour les développeurs
Conclusion Rencontres ASP.NET : Développement Rapide dApplications Web.
Tout commence par un modeste éditeur de texte issue dune PME à Redmond, WA-USA.
Rencontres Windows Forms
Windows Sharepoint Services v3 (5/6) Les nouveautés Stéphane Crozatier Relation Technique Editeurs de Logiciels DPE - Microsoft France
Data Management for Large-Scale Scientific Computations in High Performance Distributed Systems A. Choudhary, M. Kandemir, J. NoG. Memik, X. Shen, W. Liao,
PhotoManager eXtreme Présentation IceCream team Besoins Étude existant Technologies Découpage des tâches Conclusion.
Exposé système et nouvelles technologies réseaux Windows Management Intrumentation José-Manuel DUARTE – IR3.
L’architecture .net et ASP.net
Cours 2 : Les Web Services Concepts Généraux
INTRODUCTION A JAVA Chapitre 1 : Introduction
Toolkit Web Framework Java pour les IHMs Cédric Dumas mars 2008 contrat Creative Commons Paternité-Pas d'Utilisation Commerciale- Partage.
Les AGL Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à.
Enesys RS Data Extension
Injection de dépendances
COI Solutions TI Formation Fabuleux, tout ce que lon peut faire avec SAS! SAS Integration Technologies / IOM Conférencier Daniel Villeneuve.
Introduction. Windows Azure « Windows » + « Azure » Windows = un OS ? Azure = Késako ? OS : Système d'exploitation Abstraction du matériel Exécution de.
Introduction aux services WEB
Architecture Les Couches Présentation Services Métier
TM.
Trucs et Astuces { Visual Studio 2008 – VB 9 (C#3)} Grégory Renard CTO – R&I Manager Wygwam Microsoft Regional Director / Microsoft MVP
Actualités Services Providers & SPLA
« Les Mercredis du développement » Retour dexpérience / Framework de dév. Présenté par Grégory Renard [Rédo] Responsable Développement.
ASP.NET un peu plus loin… Développement Rapide dApplications Web avec.NET.
Programme et Langage C++
Architecture Logicielle Les supports d’applications
Pierre Lagarde Christophe Lauer
C#. Sommaire I. Descriptions du langage 1. Son origine 2. Plate-forme d'exécution II. Capacités du langage 1. Différences avec le C / C++ 2. Java Vs C#
Microsoft dot Net Extrait du cours. La programmation fenêtrée facile. Une approche objet. Philippe Garraud: Formateur indépendant.
ADOBE FLEX 4. © Logica All rights reservedNo. 2 Introduction Flex en action Autour de Flex Logica Le programme.
L’initiative .NET: Comparaison avec la plate-forme Java
Programmation Orienté Objet Application Au Langage JAVA Licence professionnelle ATC ~ 07/08 Bessem BOURAOUI
CERN IT Department CH-1211 Genève 23 Switzerland t Get the most of Office 2007! Bruno Lenski, IT/OIS.
Microsoft .NET.
ATER à l’Université Paris 12
I.S.I.S. Information System Initial Specification Rétro-conception de Bases de données Cyr Gabin Bassolet TIMC – équipe OSIRIS 21 décembre 2004.
OpenCV: Introduction au Traitement d’Images et Vidéo
Les Serveurs WEB.
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI) Plate-forme.NET.
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
Masters IIGLI et IGLII – Programmation générique et conception objet – – Claude Montacié 1 Cours n° 9 Interopérabilité logicielle I Entre C++
Windows Sharepoint Services “v3“ (1/6) Les nouveautés Stéphane Crozatier Relation Technique Editeurs de Logiciels DPE - Microsoft France
Première CTP le 4 décembre Nouvelle CTP depuis le 1 er février RTM milieu de cette année.
Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification.
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Technologies Web Microsoft
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Séminaire Doc Mining Paris 13/11/2002 PSI Librairie Adam Sébastien Delalandre Mathieu Héroux Pierre.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
.NET Plateforme, framework, produits Bernard Fedotoff (Pdg) Stéphane Vancauwenberghe (Consultant)
Introduction à la plateforme .NET
Les plateformes de développent des web services
Dyalog.Net Peter Donnelly Managing Director Dyadic Systems Toronto 30/10/2002.
Projet débuté en décembre 1989 Première version publique en février 1991 Lancement du site python.org en 1997 Python Software Foundation en 2001 Version.
1 Visual Studio 2005 Tools For Office: Présentation et Démonstrations.
Une brève présentation de C# Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Richard KRITTER Flavien LAURENT Université de Paris-Est Marne La Vallée (UPEMLV), Ingénieur.
La plateforme.NET 2.0 vue par le développeur Pascal Belaud Microsoft France SAGA.NET
Auditeur: Léonardo AMODIO Cours: NFE107
Transcription de la présentation:

& Langage Intermédiaire du Web (C#) Microsoft .NET & Langage Intermédiaire du Web (C#) Nguyen Tuan Loc 10/04 ™

Contenu 1) Microsoft.NET 2) C# et C++ 3) Perspective & conclusion .NET et Framework.NET .NET et les langages supportés Mécanisme de fonctionnement de .NET Installation .NET 2) C# et C++ Présentation C# Comment ça marche C# ? Pourquoi choisir C# ? Comparaison entre C# et C++ Avantages Similaire Inconvénients 3) Perspective & conclusion

Présentation .NET & .NET Framework Microsoft propose 4 langages C#, C++,VB.NET,ASP.NET dont C# est le premier recommandé par Microsoft Autres langages supportés Perl, Cobol, Eiffel, J#, Oberon,Component Pascal, Python, Smalltalk

.NET & CLR Common Language Runtime

Architectures intelligentes Microsoft Framework.NET souris MSIL chat .cs chien MSIL chien .pl deployment Windows JIT Linux (?) .vb Exemple : CLR Intelligence : -Intégration, -Réutilisation, -Interopérabilité. 1,5’(12) Surcouche de l’OS Windows, J2EE de Sun -le code .NET est compilé en deux étapes : il est d’abord converti en langage intermédiaire, MSIL, puis le compilateur JIT (Just-In-Time) utilise ces instructions MSIL pour le convertir en langage natif qui est ensuite exécuté par le CLR. On peut très bien mélanger et faire des classes en différents langages supportés par .NET et faire exécuter ensemble dans le même projet. -logique de services et traitement de services. Cette séparation permet le développement de nouveaux services sans être obligé de modifier et de mettre à jour les codes dans ces systèmes de plus en plus complexes. -CLR un moteur d’exécution pour assembler les codes en MSIL et les codes natifs du système pour les convertir en code exécutable selon le type de l’OS, ce travail est fait via un compilateur JIT. 7/32 MSIL : Langage Intermédiaire de Microsoft CLR : Common Runtime Language JIT : Machine virtuelle de Microsoft

Mécanisme de fonctionnement de MS.NET CLR : Common Language Runtime JIT : Just in Time (2eme compilateur) Mécanisme de fonctionnement de MS.NET chien .vb souris .pl chat .cs chien MSIL chat MSIL souris MSIL CLR : moteur exécution en langage commun déploiement Windows JIT Linux (?) JIT

Assemblage de composants J J c C VB Bonne conception ? Nombre de composants Prix de composants Prix d’interfaces Prix Prix minimum 1,5’(10,5) 1.fonctionnelle,monolithique,pas d’interfaces 2.OO:WRAP monolithique, interface 3.COO: orienté composant, interfaces Réutilisation : éviter la re-invention de la roue, flexibilité, adaptabilité. Indépendance avec l’évolution de l’application, Assemblage de composant: plug-and-play. Complexité du système d’information, comment trouver un prix minimum pour le concept d’assemblage de composant. Plus on décompose un système en plusieurs composants, plus on a le coût des interfaces à résoudre. Il faut donc trouver un bon design pour le système d’information pour que le prix soit minimum. C’est un des objectifs que nous essayons de proposer dans le chapitre de contribution.

Résumé Architectures intelligentes de .NET : Rapidité, qualité : l’intelligence se trouve dans la logique de services, pas dans le traitement de services. Ouvertes dans un monde « fermé » : l’implémentation propriétaire (.Net sur Linux?).

Installation Microsoft.NET Que faut-il avoir pour une application .NET tourne ? Windows OS (XP n’a pas besoin) Windows 2000 recommandé ou Microsoft .NET SDK (30 mb) http://msdn.microsoft.com/netframework Editeur de texte (notepad) ou Visual Studio.NET (option) (10 licences déjà dans l’équipe TDD, 3 utilisées) La production avec Perl : Visual Perl de ActiveState (partenaire .Net de Microsoft) (495 $) (option)

Qu’est-ce c’est C# ? Langage proposé par Microsoft, standardisé par ECMA, ressemble la syntaxe de Java Langage orienté objet Une partie évolue vers langage orienté et langage de programmation de component Dérivé de C++ MFC est remplacée par librairie .NET Framework Combinaison entre la force de C++ et la simplicité de Visual Basic Cross Plate-forme Cross Langage

C# : comment ça marche ? C# ‘.exe’ Code .cs ‘.dll’ natif (selon OS) Just in Time Compiler .cs ‘.exe’ ‘.dll’ Code natif (selon OS) JIT Code source Microsoft Intermediate Language (MSIL) CLS ‘Règle de tranformation en .NET’ CLR Common Runtime Language

C# versus C++ Pourquoi choisir C# ? Avantages C# Plus ouvert Interopérabilité dans le futur avec Framework .Net (Windows, »Linux,Unix ») Supporter XML (standard de l’Internet W3c) Composant.Net (complexité, time to market, plug and play) Inconvénients C# Apprendre nouveau concept de base (.Net) Apprendre nouveau langage (temps d’estimation environ 4 semaine)

Avantages C# Peu de pointeur Conversion automatique (boxing) list.Add(1); list.Add(13.12); Versioning C# demande le développer de clarifier la création de la version librairie créée. Utilise le keyword ‘new’ et ‘override Utiliser la librairie de framework .NET Threading, Collection, XML, ADO+, ASP+, GDI+ & WinForms libraries

Avantages C# C# élimine header .h C# non pointeur (très limité). C# est un langage objet orienté pur avec tous les objets et types dérivés de la classe Object. Codé géré (pas besoin de ‘’free’’ et ‘’delete’’) -> plus de paniques MFC(CString, string) en COM,VB(_bstr, BSTR) !-> classe Systeme CLR remplacée. Plus détails : http://msdn.microsoft.com/library/default.asp?url=/library/enus/cscon/html/vclrfcomparisonbetweenccsharp.asp

Similaire C++ et C# Keywords similaires (dérive de C++) Classe hiérarchie par arbre avec un Root Machine virtuelle & IL/CLR Garbage Collection Pas de méthode globale Pas d’inhérence Multiple

Inconvénients de C# Technologie Windows 100%, porter Framework sur Linux “à voir” (projet Mono) .NET et C# sont des "standards ouverts" ne signifie pas nécessairement des "environnements ouverts". (IBM-ZDNet) La première fois est lente (à cause de compilateur 2-time) Les tests du produit non extensifs (large utilisé par communauté des utilisateurs) Trop nouveau, vient d’être soumis et accepté par ECMA

.NET et perspective Et Pourquoi ? Orienté vers l’évolution de l’Internet et les Web Services Perspective : .NET est une architecture ouverte Et Pourquoi ?

XML, C# et .NET : Source Microsoft DevDay 2003

Evolution Web Services Win.NET, 200x Internet 1997 Windows 1990 .NET,C# Web Services Win.NET, 200x Evolution Visual Studio 6 Internet 1997 Windows 1990 Visual Tools PC 1981 Quick Languages Basic Interpreter Micro computer 1975

C# et .NET: orientation to the Internet evolution Person to person (C2C) Data echange PC Architecture 1-tiers Evolution de l’architecture Application to person (B2C) Web server Web browser HTTP/HTML Architecture 2-tiers Architecture 2-tiers Web browser Application to person (B2C) HTTP/HTML Web server Databases Application to application (B2B) Web services XML/SOAP Architecture “n-tiers”

.NET et perspective Boîte blanche Boîte noire Utiliser le code monolithique dans programme Boîte noire Assembler les codes compilés dans un programme Boîte grise (.NET et autres langages) Entre boîte noir et boîte noir plus interface de wrapping

.NET conclusion Solution pour résoudre 3 problèmes de base: Intégration Réutilisation Interopérabilité Supporter SOAP, XML -> Nouveau standard de l’industrie

C# conclusion C# = Power C++ + Simplicity Visual Basic + Interoperability Java C# = Langage ouvert et du futur

Références NET Framework SDK (includes C# compiler) http://msdn.microsoft.com/netframework http://www.gotdotnet.com ECMA C# Standard http://www.ecma.ch/ecma1/stand/ecma-334.htm Microsoft Visual C# .NET http://msdn.microsoft.com/vcsharp http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cscon/html/vcoricstartpage.asp http://www.csharphelp.com/ http://msdn.microsoft.com/msdnmag/issues/01/07/ctocsharp/ctocsharp.asp http://windows.oreilly.com/news/hejlsberg_0800.html http://msdn.microsoft.com/msdnmag/issues/0900/csharp/default.aspx Microsost.NET, C#, groupes françaises : http://www.dotnet-fr.org http://www.c2i.fr