37
.net .net et et Applications mobiles Applications mobiles Soutenu par : - Mr S.EZZIZI - Mr A.CHETOUANE Encadré par : - Mr M.ELEULDJ

New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.net .net et et

Applications mobilesApplications mobiles

Soutenu par :

- Mr S.EZZIZI- Mr A.CHETOUANE

Encadré par :

- Mr M.ELEULDJ

Page 2: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

IntroductionIntroduction

* Plate* Plate--forme complète pour développer,forme complète pour développer,déployer et exécuter des applications web,déployer et exécuter des applications web,Windows, mobiles et serveur.Windows, mobiles et serveur.

* Repose sur le Framework.net* Repose sur le Framework.net

* Est apparue en 2002.* Est apparue en 2002.

Page 3: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Visual Studio.NET,.NET Framework

.NET Services .NET Devices

.NET Enterprise Servers

Page 4: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.NET Clients.NET ClientsNouvelle Nouvelle générationgénérationde de périphériquespériphériques

WindowsWindows--poweredpoweredSupporteSupporte XML et les XML et les services Webservices WebFonctionneFonctionne en en autonomeautonome ouou en en mode mode connectéconnecté

Page 5: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.NET Framework.NET Framework

Power & Power & SimplicitySimplicity

Standard Standard ProtocolsProtocols

Web Web ServicesServices

ComponentsSecurity

TransactionsXML

Abilities

Rich Rich ClientsClients

Web Web BrowsersBrowsers

Mobile Mobile DevicesDevices

XMLXML

Relational Access Relational Access

AnyAnyDatabaseDatabase

Page 6: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

VisualVisual Studio .N

ETStudio .N

ET

Fondé sur des standardsFondé sur des standards

CLICLICLRCLR

FrameworkFramework Class Class LibraryLibrary

Données et XMLDonnées et XML

XML WebXML Webservicesservices Windows Windows FormsForms

Web Web FormsForms

CommonCommon LanguageLanguage SpecificationSpecification

VBVB C++C++ C#C# ……

Soumis à Soumis à l’ ECMAl’ ECMA

Soumis à Soumis à l’l’ECMAECMA

SpécificationSpécificationouvertesouvertes

Accès aux Accès aux données basé XMLdonnées basé XML

JScriptJScript

Basé XML, Basé XML, SOAPSOAP

Page 7: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Visual Studio .NETVisual Studio .NET

Environnement de développement pour la construction Environnement de développement pour la construction d’applications classique et Web d’entreprises.d’applications classique et Web d’entreprises.

Prise en charge complète du Prise en charge complète du FrameworkFramework

IDE unique pour tous les langagesIDE unique pour tous les langages

Ouvert et extensibleOuvert et extensible

Permet de suivre toutes les étapes du cycle de Permet de suivre toutes les étapes du cycle de développement d’une applicationdéveloppement d’une application

Page 8: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Les objectifs du Les objectifs du FrameworkFramework

Unifier les modèles de programmationUnifier les modèles de programmation

Simplifier fortement le développement Simplifier fortement le développement d’applicationsd’applications

Fournir un environnement d’exécution Fournir un environnement d’exécution robuste et rapiderobuste et rapide

Intégrer les services Web XML en natifIntégrer les services Web XML en natif

Page 9: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Les classes de basesLes classes de bases

ThreadingThreadingResourcesResourcesGlobalizationGlobalization

System System

System.Data (ADO .NET)System.Data (ADO .NET) System.XMLSystem.XML

System.Web (ASP .NET)System.Web (ASP .NET)

DiagnosticsDiagnostics

ConfigurationConfiguration

CollectionsCollections

NetNet

IOIO

TextText

SecuritySecurity

CommonCommon

OLEDBOLEDB

SQLTypesSQLTypes

SQLClientSQLClient

XPathXPath

XSLXSL

RuntimeRuntimeInteropServicesInteropServices

RemotingRemoting

SerializationSerialization

SerializationSerialization

ConfigurationConfiguration SessionStateSessionState

CachingCaching SecuritySecurity

ServicesServicesDescriptionDescription

DiscoveryDiscovery

ProtocolsProtocols

UIUIHTMLControlsHTMLControls

WebControlsWebControlsSystem.DrawingSystem.Drawing

ImagingImaging

Drawing2DDrawing2D

TextText

PrintingPrinting

System.Windows.FormsSystem.Windows.Forms

DesignDesign ComponentModelComponentModel

SchemaSchema

ReflectionReflection

ServiceProcessServiceProcess

Page 10: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact FrameworkCompact Framework

Page 11: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.NET .NET AndAnd DevicesDevices

codecodeWeb pagesWeb pages

Visual Studio.NETVisual Studio.NET

.NET Framework.NET Framework

Mobile Web Mobile Web BrowserBrowser

.NET Compact.NET CompactFrameworkFramework

Page 12: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact Compact FrameworkFramework .NET.NET

Moteur d’ Exécution .NETMoteur d’ Exécution .NETExécution managée sur type Exécution managée sur type safesafePas de variables non initialisées, de Pas de variables non initialisées, de castcastdangereux, mauvais indexage de tableaux, dangereux, mauvais indexage de tableaux, mauvaise arithmétique de pointeursmauvaise arithmétique de pointeursGarbageGarbage collectioncollectionCommonCommon type type systemsystem

Appel, héritage et Appel, héritage et debugagedebugage de sources entre de sources entre différents langagesdifférents langages

PlatformPlatform Invocation disponibleInvocation disponible

Page 13: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact Compact FrameworkFramework

ButtonButtonCheckBoxCheckBoxComboBoxComboBoxContextMenuContextMenuDataGridDataGridDomainUpDownDomainUpDownFileOpenDialogFileOpenDialog

ContrôlesContrôles supportéssupportés

FileSaveDialogFileSaveDialogHScrollBarHScrollBarImageListImageListInput PanelInput PanelLabelLabelListBoxListBoxListViewListView

MainMenuMainMenuNumericUpDownNumericUpDownPanelPanelPictureBoxPictureBoxProgressBarProgressBarRadioButtonRadioButtonStatusBarStatusBar

TabControlTabControlTextBoxTextBoxTimerTimerToolBarToolBarTrack BarTrack BarTreeViewTreeViewVScrollBarVScrollBar

ContrôlesContrôles non non supportéssupportés

CheckedListBoxCheckedListBoxColorDialogColorDialogErrorProviderErrorProvider

HelpProviderHelpProviderLinkLabelLinkLabelNotifyIconNotifyIcon

ToolTipToolTipSplitterSplitterFontDialogFontDialog

Page 14: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact Compact FrameworkFrameworkSupport des Web ServicesSupport des Web Services

Appel possible de Web servicesAppel possible de Web services«« AllAll encodingencoding typestypes »»

Invocation synchrone et asynchroneInvocation synchrone et asynchroneBasic Basic andand Digest Digest authenticationauthenticationSupport du Support du SecureSecure SocketsSockets Layer pour le Layer pour le cryptage (SSL)cryptage (SSL)Custom SOAP headersCustom SOAP headersSOAP Extension SOAP Extension FrameworkFramework

Page 15: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact Compact FrameworkFramework

Support ADO.NETSupport ADO.NETGestion de données Gestion de données OffLineOffLine avec les avec les DataSetDataSet

Communication des Communication des DataSetDataSet via XMLvia XMLModèle de données Commun sur le PC et les Modèle de données Commun sur le PC et les devicesdevicesModèle extensible de provider ADO.NETModèle extensible de provider ADO.NETData providers inclusData providers inclus

SQL Server (SQL Server (System.Data.SqlClientSystem.Data.SqlClient))SQL Server CE (SQL Server CE (System.Data.SqlServerCeSystem.Data.SqlServerCe))

Page 16: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.NET .NET FrameworkFramework

SystemSystem

System.DataSystem.Data (ADO .NET)(ADO .NET) System.XMLSystem.XML

System.Web (ASP .NET)System.Web (ASP .NET)

DiagnosticsDiagnosticsConfigurationConfigurationCollectionsCollections

NetNetIOIO

ThreadingThreadingTextText

SecuritySecurity

CommonCommonOLEDBOLEDB

SQLTypesSQLTypesSQLClientSQLClient

XPathXPathXSLXSL

RuntimeRuntimeInteropServicesInteropServices

RemotingRemoting

SerializationSerialization

SerializationSerialization

ConfigurationConfiguration SessionStateSessionStateCachingCaching SecuritySecurity

ServicesServicesDescriptionDescription

DiscoveryDiscovery

ProtocolsProtocols

UIUIHTMLControlsHTMLControls

WebControlsWebControlsSystem.DrawingSystem.Drawing

ImagingImaging

Drawing2D/3DDrawing2D/3D

TextText

PrintingPrinting

System.Windows.FormsSystem.Windows.Forms

DesignDesign ComponentModelComponentModel

SchemaSchema

ReflectionReflection

ResourcesResourcesGlobalizationGlobalization

ServiceProcessServiceProcess

Page 17: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Compact Compact FrameworkFramework .NET pour .NET pour PocketPocket PCPC

SystemSystem

System.DataSystem.Data (ADO .NET)(ADO .NET) System.XMLSystem.XML

System.Web (ASP .NET)System.Web (ASP .NET)

DiagnosticsDiagnosticsConfigurationConfigurationCollectionsCollections

NetNetIOIO

ThreadingThreadingTextText

SecuritySecurity

CommonCommonOLEDBOLEDB

SQLServerCeSQLServerCeSQLClientSQLClient

XSlt./XPathXSlt./XPathXSLXSL

RuntimeRuntimeInteropServicesInteropServices

RemotingRemoting

SerializationSerialization

SerializationSerialization

ConfigurationConfiguration SessionStateSessionStateCachingCaching SecuritySecurity

ServicesServicesDescriptionDescription

DiscoveryDiscovery

ProtocolsProtocols

UIUIHTMLControlsHTMLControls

WebControlsWebControlsSystem.DrawingSystem.Drawing

ImagingImaging

Drawing2D/3DDrawing2D/3D

TextText

PrintingPrinting

System.Windows.FormsSystem.Windows.Forms

DesignDesign ComponentModelComponentModel

SchemaSchema

ReflectionReflection

ResourcesResourcesGlobalizationGlobalization

ServiceProcessServiceProcess

Page 18: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Accès aux donnéesAccès aux donnéesDifférentes technologies fournis par Différentes technologies fournis par

WindowsWindowsSQL Client et ADO.NETSQL Client et ADO.NETSQL Ce Client et SQL Ce Client et MergeMerge ReplicationReplicationRemoteRemote Data Access (RDA) Pull et Data Access (RDA) Pull et PushPushServices WebServices WebStockage de fichiers XMLStockage de fichiers XML

Page 19: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

j2EE vs .netj2EE vs .net

Page 20: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

.NET Enterprise Solution.NET Enterprise Solution

SQLServer

IIS on W2k Server

.NET managed

componentASP.NET

WindowsClient

Browser

Page 21: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

J2EE Enterprise SolutionJ2EE Enterprise Solution

DB Server

Java App Server

EJBServletJSP

Java Client

Browser

Page 22: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

75007500

90009000

50005000

25002500

Java Java

User User InterfaceInterface

4,410

Data TierData TierMiddle TierMiddle Tier

2,865

.NET .NET

14,273

5,891

Total Lines Total Lines of Codeof Code

710

5,404

761 412 74

2,566

Lignes de Codes nécessairesLignes de Codes nécessaires

1150011500

1400014000

1500015000

Page 23: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Microsoft et la Microsoft et la mobilitémobilité

Page 24: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Mobilité: Les enjeuxMobilité: Les enjeux

Responsables fonctionnelsResponsables fonctionnelsRendre les employés plus productifsRendre les employés plus productifsRéduction des cycles Réduction des cycles –– Rapidité de prise de Rapidité de prise de décisiondécisionRéponse client plus rapide Réponse client plus rapide –– Fidélisation Fidélisation accrueaccrue

Responsables ITResponsables ITAccès données et réseaux sécurisésAccès données et réseaux sécurisésInfrastructure flexible et évolutiveInfrastructure flexible et évolutivePrise en compte de l’existantPrise en compte de l’existant

Page 25: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Périphériques mobiles,Périphériques mobiles,pourquoi en avoir créé plusieurs ?pourquoi en avoir créé plusieurs ?

Le périphérique “idéal” n’existe pas !Le périphérique “idéal” n’existe pas !L’expérience utilisateur est optimisé pour chaque usageL’expérience utilisateur est optimisé pour chaque usageLes standards de l’Internet sont clés pour l’acceptationLes standards de l’Internet sont clés pour l’acceptationAccès aux eAccès aux e--mails de l’entreprise est très importantmails de l’entreprise est très importantFocusFocus sur les solutions, pas sur la technologiesur les solutions, pas sur la technologieSmartphoneSmartphone et et PocketPocket PC Phone PC Phone EditionEdition orientés donnés !orientés donnés !

PDA orienté PDA orienté donné qui donné qui

fait téléphonefait téléphone

Premier téléphone Premier téléphone orienté donnéorienté donné

2 périphériques 2 périphériques avec Bluetoothavec Bluetooth

Page 26: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

PocketPocket Pc / Pc / SmartphoneSmartphone

Pocket PC :Pocket PC :Orienté données : usage N° = Orienté données : usage N° = traitement de donnéestraitement de donnéesGrand écranGrand écranNavigation styletNavigation styletCapacité de communication au Capacité de communication au service de la donnéeservice de la donnée

Émulateur Pocket PC 2003

Page 27: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

SmartphoneSmartphone ::Un bon téléphone avant tout (compacité, Un bon téléphone avant tout (compacité, poids, autonomie en veille & poids, autonomie en veille & communication)communication)

Usage premier : communication vocaleUsage premier : communication vocaleLes données au service d’un usage plus Les données au service d’un usage plus aisée de la communication vocale Ex: aisée de la communication vocale Ex: carnet de contactcarnet de contact

L’intégration transparente de services L’intégration transparente de services mobiles complémentaires : Ex: Portail mobiles complémentaires : Ex: Portail internetinternet

Le «Le « tout en untout en un » parfait pour un usage » parfait pour un usage modérée de la modérée de la donnéedonnée

PocketPocket Pc / Pc / SmartphoneSmartphone

Émulateur Smartphone 2003

Page 28: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

MIT vs .Net CFMIT vs .Net CF

Page 29: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

MIT vs .Net CFMIT vs .Net CF

Problèmes de Problèmes de déploiement déploiement

Riche en Riche en fonctionnalité fonctionnalité

Mode connecté et Mode connecté et non connecté non connecté

.net Compact .net Compact frameworkframework

Fonctionne sous un Fonctionne sous un navigateurnavigateur

Uniquement en mode Uniquement en mode connectéconnecté

Pas de problème de Pas de problème de déploiementdéploiement

BcpBcp d’appareilles d’appareilles mobiles mobiles

Mobile Mobile internetinternettoolkittoolkit

InconvenientsInconvenientsAvantagesAvantages

Page 30: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Processus de rendu d’une page web Processus de rendu d’une page web mobilemobile

Page 31: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Processus de rendu au niveau du serveurProcessus de rendu au niveau du serveur

Détection des capacités du periph

Détection des capacités du periph

Récupération des info Récupération au user agent et machine.conf du serveur

Execution de la pageASP.net (*.aspx)

Execution de la pageASP.net (*.aspx)

Si c la première exécution compilation justin time sinon exécution directe

Les pages compilées ne sont pas recompilées pour chaque périphérique

Rendu de la page Rendu de la page La page demandée est rendu dans le langage compatible avec le périphérique (cHtml ,html ,wml )

Page 32: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Résultat d’une simple application Résultat d’une simple application hellohello

Page 33: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Wireless Markup Language (WML)

Langage pas très complexeLangage pas très complexeBasé sur l’Basé sur l’HTMLHTMLSimilarité uniquement dans la structureSimilarité uniquement dans la structureExemple:Exemple:

<?xml version=”1.0”?><!DOCTYPE wml PUBLIC “-//WAPFORUM//DTD WML 1.1//EN” “http://www.wapforum.org/DTD/wml_1.1.xml”>

<wml><card id=”main” title=”Hello Mobile Device World Example”>

<p>Hello Mobile Device User</p>

</card></wml>

Page 34: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Création d’une application mobile en Création d’une application mobile en ASP.netASP.net

ASP.netASP.net mobile contrôles sont définis de la même mobile contrôles sont définis de la même manière qu’en manière qu’en ASP.netASP.netIl faut ajouter en tête de page :Il faut ajouter en tête de page :

<%@ Page Inherits=”System.Web.UI.MobileControls.MobilePage” Language=”vb” %>

<%@ Register TagPrefix=”mobile” Namespace=”System.Web.UI.MobileControls” Assembly=”System.Web.Mobile” %>

Page 35: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Exemple simple d’application mobile

<%@ Page Inherits=”System.Web.UI.MobileControls.MobilePage” Language=”vb”%><%@ Register TagPrefix=”mobile” Namespace=”System.Web.UI.MobileControls”

Assembly=”System.Web.Mobile” %><script language=”vb” runat=server>

sub One_OnActivate (Source as Object, E as EventArgs)ActiveForm = TwoEnd Sub

</script><Mobile:Form id=”One” runat=server OnActivate=”One_OnActivate”>

<Mobile:Label runat=server>Form One</Mobile:Label></Mobile:Form><Mobile:Form id=”Two” runat=server>

<Mobile:Label runat=server>Form Two</Mobile:Label></Mobile:Form>

Page 36: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

ConclusionConclusionLa présentation des applications mobiles sur .net requiert plus qu’un rapport ou exposé.

Ce n’est nullement la documentation qui manque sur Internet.

Nous avons essayé durant cette présentation de survoler un peu toutes les technologies utilisées ainsi qu’introduire en quelque sorte le travail de nos collègues.

Page 37: New .net et Applications mobiles · 2007. 2. 26. · Remoting Serialization Serialization Configuration SessionState Caching Security Services Description ... ASP.net mobile contrôles

Merci pour votre attention