See Sharp
Is it really just a matter of point of view ?

TechDays '08 - Genève

March 17, 2008 13:55 by salfab

Un PocketPC en main, Un Portable dans le sac ( et qui y est resté tout au long des deux jours ), un bloc note et un stylo, c'est vers les TechDays'08 que je me dirigeais pour le compte de mon entreprise.

Petit compte rendu avec une partie du rapport que j'ai du rédiger pour le feedback de ces deux jours à mon retour au Labo R&D.

1.                Introduction

Les TechDays '08 se sont déroulés du 12 au 13 mars 2008. A cette occasion, trois Tracks étaient disponible, trois présentations étaient alors données simultanément, chacune sur un thème différent, en mettant en avant un des trois produits lancés simultanément par Microsoft en ce début d'année. Les thèmes des trois Tracks étaient :
  1. Développement (Visual Studio 2008)
  2. IT (Windows Server 2008)
  3. Bases de données (SQL Server 2008)

Un choix a donc dû être fait quant aux sessions auxquelles assister. Mon choix s'est porté, en accord avec les besoins de Swiss Timing et mes intérêts personnels sur les thèmes de développement et de bases de données.Les sujets suivis étaient les suivants :    

Mercredi, 12.03.2008

09:00-10:00 Session code: K100

L’édition 2008 des TechDays est une édition spéciale lancement. Pas n’importe quel lancement : peut-être le lancement le plus important de toute l’histoire de Microsoft, puisqu’il s’agit des trois composants fondamentaux de tout système informatique : Windows Server 2008, SQL Server 2008, et Visual Studio 2008. Une plateforme et des outils qui vous permettent de vous surpasser, d’où le thème « Heroes Happen {Here} ». Une infrastructure solide et fortement sécurisée, une base performante pour transformer les données en informations pertinentes, et des outils pour fournir ces informations à vos utilisateurs quand il le faut, et juste ce qu’il faut. Un grand pas vers la réalisation de notre vision : l’informatique dynamique. Une informatique robuste mais agile, prompte à fournir des solutions aux utilisateurs, et capable de s’adapter à n’importe quelle situation.

Referent:Launch
Level: All
Session plénière : toutes les nouveautés de Windows Server­, SQL Server­ et Visual Studio cuvée 2008 !
10:15-11:15 Session code: D101

Visual Studio 2008 amène des nombreuses nouveautés dans les langages C# and VB.NET, telles que l’inférence de type et les méthodes d'extension. Toutes ces améliorations constituent la fondation de LINQ. Vous verrez toutes les nouveautés du C# 3.0, puis, lors de la deuxième, vous découvrirez de LINQ. On vous montrera comme le « Language Integrated Query » vous permet d’accéder et traiter de manière unifié les différents types de données : objets, documents XML ou tables relationnelles.

Referent:Ken Casada
Level: 300
Visual Studio 2008 : les nouveautés dans les langage­s et LINQ
Session code: B101

Dans cette session nous passerons en revue les principales améliorations de SQL Server 2008 destinées à faciliter l'administration et la gestion de données de l'entreprise. Seront notamment démontrées : l'administration par règles et performance studio.

Referent:Patrick Guimonet
Level: 100
SQL Server­ 2008 : Plateforme de données d’entreprise
Session code: I101

La virtualisation de part les bénéfices économiques et techniques que sa mise en œuvre apporte est certainement la technologie les plus regardées par les exploitants et les responsables de production. Windows Server 2008 apporte en standard les différents services nécessaire à la mise en œuvre d’une infrastructure virtualisée. Cette session sera l’occasion de présenter les principales évolutions au niveau de la virtualisation de serveurs (architecture de type hyperviseur, machines virtuelles 32 et 64 bits multi-cœurs, services de haute disponibilité) et de la virtualisation de présentation au travers des nombreuses évolutions fonctionnelles concernant Terminal Services (Remote App, TS Gateway, TS Web Access, TS Session Broker et Easy Print). Si vous souhaitez en apprendre un peu plus sur Windows Server 2008 et la virtualisation cette session doit faire partie de votre agenda.

Referent:Fabrice Meillon
Level: 200
Windows Server­ 2008 et les technologies de virtualisation : Hyper-V et Terminal­ Server­
           
11:30-12:30 Session code: D102

Microsoft Silverlight est un plug-in multiplateforme et multi-navigateur orienté multimédia. Il permet la création d’applications Web riches et interactives de la nouvelle génération. Comme le WPF, Silverlight 2.0 propose un modèle de développement flexible à base de XAML et de .NET, et il s’intègre facilement avec les applications Web existantes. Les applications Silverlight fonctionnent avec la plupart des browsers sous Windows ou Mac OS. Apprenez à utiliser Microsoft Visual Studio et Blend pour créer les applications Web de la prochaine génération, à créer des interfaces avec du markup XAML et du code, à utiliser tous les nouveaux contrôles, à accéder aux données à partir d’un service Web, et à manipuler les données avec le LINQ to XML.

Referent:Ronnie Saurenmann
Level: 200
Silver­light 2.0
Session code: B102

Moins de 10% des données et documents utiles sont stockés dans des bases de données. Le reste est stocké sous forme de fichiers. SQL Server 2008 peut exploiter n’importe quel type de données: le XML mais aussi tout type de document (permet de réconciler donnés structurées et déstructurées). Enfin, il sera possible de développer des applications incorporant des fonctionnalités de géo-localisation.

Referent:Christophe Codourey
Level: 200
SQL Server­ 2008 : Au delà du relationnel
Session code: I102

La sécurité est l’un des trois piliers de Windows Server 2008. Et la listes des nouvelle fonctionnalités est longue : intégrité du code, contrôle de l’usage des périphériques, protection de l’accès réseau (NAP), contrôle du compte utilisateur (UAC), BitLocker, Crypto Next Generation, Active Directory Right Management Services, etc…

Referent:Pietro di Gregorio
Level: 200
Windows Server­ 2008 : Securité et conformité
           
13:30-14:30 Session code: D103

This session gives an overview of the Windows Live Services and explores how they can be integrated into your websites or applications to provide a powerful and differentiated experience for your users. In particular, we discuss how Live ID can be used for authentication, Virtual Earth for location-based visualization, the IM control and library for Instant Messenger functionality, the Contacts API to integrate Hotmail/Messenger contacts into your website, the Event API to create and manage your own events, the Windows Live SDK to build Quick Apps,… Windows Live represents a huge opportunity for web developers: Not only do you get access to services with hundreds of millions of active users, but you are also able to take advantage of a swathe of rich services that add instant value and differentiation to your website. Coupled with some of the most generous and clear terms of service in the business, Windows Live has the capability to turbo-charge your web development capability. If you can wait this session to gather information, dev.live.com is the perfect place to start.

Referent:Stefano Mallè
Level: 200
Windows Live Services: How to provide a powerful and differentiated experience for your users (e)
Session code: B103

SQL Server 2008, couplé au framework .NET 3.5 permet la réalisation d'applications de nouvelle génération innovantes. Pour plus de productivité, les développeurs pourront travailler avec la notion d’entité métier (au sens Entité Relation) au lieu d’utiliser celle de tables et colonnes. Ils pourront créer plus facilement des applications partiellement connectées.

Referent:Fabrice Romelard
Level: 200
SQL Server­ 2008 : Le dévelopement dynamique
Session code: I103

A nouvelle version de Windows Server nouveaux outils d’administration et de déploiement - de l’installation à l’exploitation vous découvrirez au sein de cette session les apports de Windows Server 2008.

Referent:Fabrice Meillon
Level: 200
Windows Server­ 2008 : Administration et déploiement
           
14:45-15:45 Session code: D104

Partie intégrante du nouveau Framework 3.5, LINQ to SQL va changer votre façon d'accéder aux données. Cette session a pour bût de vous montrer les bons côtés de cette première version, mais aussi les côtés qui sont moins bons, et les côtés qui sont carrément mauvais. Vous verrez les pièges courants et la façon de les éviter. Vous verrez la manière d’utiliser LINQ to SQL dans des applications ASP .NET au travers de démos, en codant et en utilisant le nouveau contrôle LINQ to SQL. Finalement, vous découvrirez comment intégrer cette technologie dans un environnement multi-tiers avec du WPF, WCP, des Smart Clients et Office.

Referent:Ronnie Saurenmann
Level: 300
Linq to SQL: the good, the bad and the ugly
Session code: B104

Dans cette session nous passerons en revue les principales fonctionnalités de SQL Server 2008 destinées la sécurisation de la plateforme, tant en termes de haute disponibilité (technologies "Always ON") qu'en terme de sécurité d'accès aux données (cryptage ...).

Referent:Patrick Guimonet
Level: 200
SQL Server­ 2008 - Secure, trusted platform
Session code: I104

Internet Information Server 7.0 (IIS 7), le nouveau serveur Web de Windows Server 2008, permet une montée en puissance des infrastructures Web pour internet ou pour les intranets. Il permet aussi de reprendre l’existant – ASP, ASP.NET et PHP – avec un minimum de modifications. Fortement intégré à Windows Server 2008, il tire pleinement parti des fonctions de celui-ci pour la sécurité, l’administration, la haute disponibilité et la montée en charge. Cette session technique est destinée aux IT professionnels, développeurs ou hébergeurs de sites Web à la recherche d’une plateforme de développement de services Web sécurisée, fiable, facile à utiliser et paramétrables pour tous les frameworks même autre que .NET.

Referent:Lionel Cau
Level: 200
Windows Server­ 2008 : La plateforme Web de la prochaine génération
           
16:00-17:00 Session code: D105

Visual Studio 2008 intègre nativement le développement d'application .NET pour Office : Visual Studio Tools for Office 2008. Le support des nouveautés d'Office 2007 et une meilleure intégration à Office 2003 est au menu. Durant cette session Nicolas CLERC mettra en oeuvre ces fonctionnalités et présentera quelques applications.

Referent:Nicolas Clerc
Level: 300
Visual Studio 2008 et le développement Office
Session code: B105

De nos jours la performance est un sujet très sensible autant pour les administrateurs que les end-users. Les compagnies doivent maintenir une performance optimal face à des volumes de données qui ne cessent de s'accroître. Pour ce faire SqlServer 2008 vous offre des nouvelles solutions tel que High Performance Query Processing Engine, Performance Optimization Tools, Resource Governor etc ... et ce pour suivre les activités des bases et serveur, pour l'amélioration des temps réponses, pour répartir et prioriser la charge des workloads et d'autres encore.

Referent:Christophe Codourey
Level: 300
SQL Server­ 2008 : Les performances
Session code: I105

Jusqu’à présent, les « Failover Clusters » offraient une solution de haute disponibilité à un prix…élevé. Avec Windows Server 2008, leur utilisation n'est plus réservée aux seules applications critiques. Venez découvrir toutes les améliorations de la cuvée 2008 : l’assistant de validation, la simplification du déploiement et de la gestion, l’élimination d’un point de défaillance unique avec le nouveau modèle de quorum, des nouveaux scénarios d'usage lorsqu'un cluster est géographiquement dispersé, l’amélioration de la sécurité et de l’évolutivité, etc. Une session à ne pas manquer!

Referent:Sébastien Pittet
Level: 200
Windows Server­ 2008 : RAS (Reliability, Availability, Serviceability)
           
17:15-18:15 Session code: D106

Le développement et l’implémentation de solutions basées sur Windows Workflow Foundation (WF) nécessitent couramment l’extension des librairies livrées afin d’implémenter des spécifications particulières clients. Cette session, qui s’adresses aux éditeurs de logiciels et au développeurs, se propose d’explorer la façon d’implémenter dynamiquement des extensions d’activités personnalisées, pour adapter à l’exécution (et non pas à la compilation) des comportements spécifiques d’une application standard. La puissance du C#3 et des requêtes LINQ est fortement utilisée. Le domaine d’application est la modélisation de processus financiers.

Referent:Christine Dubois & Bernard Fedotoff
Level: 300
Développement d'extender d'activités avec C# 3 et Linq
Session code: B106

Nous passerons en revue toutes les fonctionnalités ETL, depuis le moteur jusqu'aux services d'intégration et d'analyse. Nous verrons les Change Data Capture, Data Profiling, Lookup, Merge (Upsert) Ceci permettra de mettre en avant les nouvelles fonctionnalités et leur utilisation pratique dans des projets d'intégration des données et de datawarehouse.

Referent:Gaétan Hervé
Level: 300
SQL Server­ 2008 : ETL de bout en bout
Session code: I106

This session will describe the new Windows 2008 Active Directory roles: Active Directory Certificate Services (AD CS) Active Directory Domain Services (AD DS) Active Directory Federation Services (AD FS) Active Directory Lightweight Directory Services (AD LDS) Active Directory Rights Management Services (AD RMS) The new Read-Only Domain Controller (RODC) is focused on security and ease of deployment in a branch office scenario. We will describe how to create and administer them, its functionalities and applications. Active Directory works as a dedicated service now. We will show how to perform maintenance tasks in the Active Directory database without having to reboot the server. Now you can deploy granular password policies within your domain. We will show you how to do it. Active Directory auditing got better. Now you will have detailed records of changes in the database.

Referent:José Luis Auricchio
Level: 300
Active Directory Domain Services avec Windows Server­ 2008
           
Jeudi, 13.03.2008
09:00-10:00 Session code: D107

Cette session “break-out” vous présentera les nouvelles fonctions de Visual Studio 2008 pour les développeurs Web. Parmi celles-ci figurent les nouvelles caractéristiques de l’environnement de développement, les améliorations du framework .NET 3.5 pour ASP.NET, l’intégration d’ASP.NET AJAX à Visual Studio 2008, les essais et le débogage d’ASP.NET, les projets AJAX et JavaScript ainsi que le support amélioré des projets Silverlight. La présentation de “Microsoft ASP.NET 3.5 Extensions Preview” esquissera les perspectives futures. Ce discours sera accompagné de nombreuses démonstrations en direct.

Referent:Sascha P. Corti
Level: 200
Visual Studio 2008 for Web Applications
Session code: B107

Avec la venue de SQL-Server 2008, Microsoft apporte une nouvelle plateforme de Business Intelligence encore plus optimale et performante avec pour principaux objectifs: ** de faciliter l'intégration de données toujours plus riches et plus complexes ** de rendre les analyses de donnes et le Reporting encore plus faciles et accessibles à tous. A travers une plus grande intégration avec Microsoft Office, la plateforme SQL-server 2008 offre à tous les secteurs de l'entreprise les outils qu'il faut pour mieux comprendre ses données, et par conséquent mieux développer son business dans l'aide à la décision idoine permettant d'influencer positivement les performances de l'entreprise. L'objectif de cette session sera de présenter un tour d'horizon de l'ensemble des technologies BI de Microsoft centrées dans et autour de SQL-server 2008. Elle donnera aussi une vue d'ensemble des nouveautés de la plateforme Busniess Intelligence de SQL-Server 2008.

Referent:Abdourahmane Faye
Level: 200
SQL Server­ 2008 : La Business Intelligence pour tous
Session code: I107

An introduction to synchronisation and provisioning in ILM 2007 - where it fits into a typical environment, the types of skills you need to get the full benefit from this powerful and extensible product, some obvious and some not-so obvious uses you can put it to. Also a look forward to Microsoft's plans for ILM r2.

Referent:Carol Wapshere
Level: 300
Identity Lifecycle Manage­ment : Au jourd'hui et demain (e)
           
10:15-11:15 Session code: D108

L’objectif de cette session est d’illustrer l’utilisation de Windows Workflow Foundation (WF) et de Windows Communication Foundation (WCF) dans le cadre du développement d’une application de modélisation de processus de calcul et de consolidation dans la domaine de la finance. Comme quoi, WF va bien au-delà du simple processus de gestion documentaire ! C’est une technologie qui sera demain au cœur de la programmation par modélisation des processus.

Referent:Christine Dubois & Bernard Fedotoff
Level: 300
Applications "branchées" avec les Windows Communi­cation Foundation et Workflow Foundation
Session code: B108

Découvrez toutes les nouveautés et les améliorations qu'apporte SQL Server 2008 au data warehousing : jointure en étoile, parallélisme des tables partitionnées, GROUPING SETS, MERGE, la compression des données, etc.

Referent:Francis Incourt
Level: 300
Le Data Warehousing avec SQL Server­ 2008
Session code: I108

Présentation de System Center COnfiguration Manager 2007, la nouvelle version de plateforme de gestion de parc de Micrsoft (ex-SMSv4). La plateforme se voit complétée de nouvelles fonctionnalité et de meilleures intégrations. (OSD)

Referent:Conrad Zimmermann
Level: 300
System Center : Intégra­tion de Configuration Manage­r et Operations Manage­r 2007
           
11:30-12:30 Session code: D109

Cette session “break-out” vous présentera les améliorations que le framework .NET 3.5 compact offre aux développeurs d’applications pour la plate-forme Windows mobile. Vous découvrirez les nouveaux outils et les nouvelles caractéristiques de Visual Studio 2008, la meilleure fonctionnalité du framework .NET 3.5 compact et les toutes dernières améliorations de Windows Mobile 6. Ce discours sera accompagné de nombreuses démonstrations en direct.

Referent:Sascha P. Corti
Level: 200
Visual Studio 2008 et la mobilité
Session code: B109

Passez à l'analyse prévisionnelle avec le data mining : découvrez les méthodologies, les traitements de données ainsi que les outils de présentation.

Referent:Amaryllis Guillot-Plasse & Pierre-Louis Usselmann
Level: 300
Le Data Mining avec SQL Server­ 2008
Session code: I109

Composé d’une partie client et une partie serveur, ForeFront Security se charge de la protection de l’ensemble de votre parc informatique. Sa couverture va des postes de travail aux serveurs, dont les serveurs Exchange 2007 et SharePoint 2007. De plus, il offre une intégration forte avec les outils de gestion et on peut le déployer avec les outils habituels comme WSUS et SMS.

Referent:Pietro di Gregorio
Level: 200
Forefront Security : une protection de bout en bout
           
13:30-14:30 Session code: D110

L’objectif de cette session est de donner un ensemble d’informations pour les responsables de projets, les architectes technologiques, les développeurs et les équipes de tests afin de comprendre les avantages d’une approche ALM (Application Lifecycle Management) et comment Visual Studio Team System 2008 (VSTS 2008) fourni les outils pour supporter une telle approche. L’ALM va bien plus loin que le développement : c’est une démarche pour concevoir, piloter et délivrer des solutions de qualité.

Referent:Christine Dubois & Bernard Fedotoff
Level: 200
ALM ou Gestion du cycle de vie des applications avec Visual Studio Team System 2008
Session code: B110

Etape ultime de l’informatique décisionnelle : après la collection de données avec le data warehousing, leur analyse avec le data mining, les données sont transformées en information. Il s’agit maintenant de présenter ces informations de manière claire, concise, et, surtout, compréhensible aux utilisateurs. Le rôle de PerformancePoint/ProClarity, c’est d’expliquer « pourquoi c’est arrivé » et « qu’est ce qu’on peut faire pour l’améliorer ».

Referent:Fabrice Romelard
Level: 100
De l'analyse à la compréhension avec PerformancePoint/ ProClarity
Session code: I110

Question: Qui ne connaît pas SoftGrid ? Réponse: plus grand monde aujourd'hui... Question: Qui utilise SoftGrid ? Réponse: Avec 2 millions de licences MDOP vendues en 2007, nul doute que cette technologie a fait ses preuves en termes d'adoption Question: Qui n'utilise pas SoftGrid ? Réponse: Les sociétés qui s'interrogent encore sur la solution elle-même et ses éventuels coûts cachés. Car, en réalité, le problème avec SoftGrid, c'est que c'est ""trop beau pour être vrai!"". Cette session, accessible à tous, a pour objectif d'analyser les fonctionnalités de la dernière version de SoftGrid et de regarder ensemble leurs avantages, leurs inconvénients et leurs alternatives éventuelles. Car ce qui est sur aujourd'hui, c'est que toutes les sociétés chercheront à bénéficier des avantages de la virtualisation d'applications comme elles le font aujourd'hui avec la virtualisation de machines.

Referent:Lionel Cau
Level: 100
Microsoft Desktop Opti­mization Pack, Softgrid & Application Compatibility
           
14:45-15:45 Session code: D111

Une bonne collaboration entre les designers et les dévellopeurs est primordiale dans les projets WPF ! Durant cette session, Nicolas CLERC mettra en oeuvre les différents techniques de développement permettant a ces 2 profils de travailler ensemble de manière optimale.

Referent:Nicolas Clerc
Level: 200
Développez des applications avec le Windows Presentation Foundation et Expression Blend
Session code: B111

Quand vous avez à faire à des masses de données gigantesques, il est vital de les rendre compréhensibles et exploitables. Découvrez comment incorporer des vues dynamiques dans vos applications avec la nouvelle fonctionnalité de visionnement de données de Visio 2007. Vous verrez les connexions vers les sources de données, les affectations de données aux formes, et la mise en évidence des informations-clés avec les API.

Referent:Tony Behnam & Francis Incourt
Level: 300
Visio Professional 2007 enriche la visualisation des données des solutions BI
Session code: I111

Au cours de cette session, nous présenterons et démontrerons les nouveaux outils de déploiement de Windows Vista et l'accélérateur de solution Microsoft Deployment (évolution de BDD 2007). Nous couvrirons également les spécificités du Service Pack 1 de Windows Vista, dont les améliorations liées à la stabilité, aux performances locales et réseau, aux performance liées à la gestion d'énergie...

Referent:Christiane Soumahoro
Level: 200
Déployez Windows Vista avec les outils du SP1
           
16:00-17:00 Session code: D112

Malgré l'aisance de MOSS 2007 à la mise en place rapide et efficace d'application intranet et/ou Internet, ce dernier est bien loin de la mouvance Web 2.0. Reposant sur le Framework .NET 2.0, nous verrons au cours de cette session comment profiter des dernières technologies du monde du développeur Web : ASP.NET, ASP.NET Ajax et Silverlight. Nous traiterons, au travers de cette session, de l'intégration d'ASP.NET AJAX au sein de SharePoint, et surtout des nombreux outils mis à notre disposition comme la Librairie JavaScript, les Web Services JSON, les ControlToolkit, les UpdatePanels ... Nous en profiterons pour aborder certains ""best practices"" afin d'utiliser correctement ASP.NET AJAX dans SharePoint.

Referent:Aurélien Verla
Level: 300
Intégra­tion de Silver­light et d'AJAX dans vos applications MOSS 2007
Session code: B112

Microsoft, lors du Keynote du TechEd Europe 2007, a annoncé la mise à disposition d’un nouveau Framework de développement ainsi que d’un « Runtime » baptisé « Sync Framework » (MSF) afin de simplifier le développement de solution de synchronisation, de roaming et d’applications online ayant la capacité intuitive de fonctionner en mode hors ligne. Ce nouveau Framework vous permettra de développer des scénarios de peer-to-peer, de synchronisation entre tout type de terminaux et services ainsi que le fonctionnement avec des systèmes hétérogènes tant sur les types de Base de Données, protocoles ou stockage en tout genre.

Referent:Grégory Renard
Level: 300
Microsoft Sync Framework : synchronisez tout partout !
Session code: I112

Au travers d’une série de démos, découvrez les nouvelles fonctionnalités et améliorations de Group Policy dans Windows Vista et Windows Server 2008. Vous verrez le nouveau format de fichiers d’administration ADMX, l’interopérabilité avec les anciens fichiers ADM et la bibliothèque centrale ADMX. Vous pourrez découvrir l’utilisation de GPO locales multiples et l’intégration de GPMC (Group Policy Management Console) dans le système d’exploitation. Finalement, vous aurez droit à un tour d’horizon des technologies acquises de DesktopStandard : gestion avancée de Group Policy (GPOVault) et PolicyMaker.

Referent:Valérie Alonso
Level: 300
Nouveautés dans le Group Policy de Windows Vista et Windows Server­ 2008
           
 

 Un sujet récurrent qui est intervenu dans une majorité, sinon toutes les présentations est la technologie LINQ, le fer de lance de Visual Studio 2008, une technologie qui semble très prometteuse.

2.                Présentations

2.1.            Visual Studio 2008 : les nouveautés dans les langages et LINQ

2.1.1.     Nouveautés dans les langages

La première nouveauté mise en avant dans cette présentation concerne la migration de 2005 vers 2008. Une raison pouvant être un frein à l'adoption de la nouvelle version d'un produit est la peur de se trouver face à des problèmes de compatibilité ascendante : Un projet fonctionnant parfaitement avec une ancienne version d'un programme qui ne serait pas supporté par la nouvelle version. Microsoft supporte officiellement le Multi-Targetting. Il s'agit d'une fonctionnalité supportée, et aucunement d'un truc, ou d'une astuce. De cette façon, il est possible avec VS2008 d'utiliser un projet ayant été créé à l'aide de Visual Studio 2005 en C# 2.0 et de l'utiliser tel quel, ou si nécessaire, de le migrer instantanément vers un projet C# 3.5 pour profiter des dernières nouveautés du langage, et des nouvelles assemblies de la framework. A noter que pour le développement mobile, la conversion peut s'effectuer de la compact framework 2.0 vers 3.5, mais pas inversement, contrairement aux projets desktop. Le passage de 2005 vers 2008 se fait donc de manière tout à fait transparente pour les différents sports, et il n'est pas nécessaire d'adapter le code pour l'utiliser dans Visual Studio 2008. Il sera cependant par la suite possible de changer la framework cible pour utiliser les nouvelles fonctionnalités du langage C# 3.0.Quelques améliorations de C# 3.0
  • Propriétés automatiques : les variables sous-jascentes n'ont plus besoin d'être déclarées, le compilateur s'en charge, il n'y a plus qu'à déclarer la propriété, et définir son accessibilité ( get / set, private ou non)
  • Initialisation de propriétés de classes lors de la déclaration : on peut entre accolades {} attribuer une valeur a une propriété : new MyClass {Prop1=val1, Prop2=Val2}; Idem pour les collections { new myListItem(1), new myListItem(2)};
  • Méthodes d'extension : Permet d'attacher des méthodes à un objet sans pour autant modifier la classe qui a servi à l'instancier.
  • Inférence de type : Ce raccourci syntaxique permet d'omettre le type d'une variable qui prendra alors le type var. Il est cependant nécessaire d'instancier la variable sur la même ligne que la déclaration : Il n'y a rien de magique ici, la variable reste fortement typée. l'inférence de type nous permet seulement de ne pas avoir à taper deux fois le type ( une fois à la déclaration, et une autre fois à l'instanciation ) : Ce mécanisme est indispensable pour instancier des types anonymes pour lesquels aucune classe n'existe (dans les faits, elle existe, mais est générée par le compilateur et n'est pas du tout visible dans le code source) et qu'on ne saurait par conséquents pas quoi taper comme type à la déclaration.
  • Expressions Lambda : Le concept avait déjà été approché en C# 2.0 avec les méthodes anonymes. Les expressions lambda permettent d'en simplifier la syntaxe : la première chose à faire est de déclarer un delegate qui donnera la signature de l'expression lambda. Ensuite, on pourra déclarer une variable dont le type sera le delegate précédemment déclaré et lui attribuer comme valeur une expression lambda telle que : (x, y) => x + y Dans cet exemple, x et y ont un typage implicite (inférence de type). Le type est défini par la signature du delegate que l'on vient de créer. L'expression se trouvant après => représente la valeur de retour de l'expression lambda. On peut également avoir des expressions lambda contenant une ou plusieurs instructions avant de retourner une valeur en utilisant les accolades {} et le mot clef return. Les expressions lambda sont, encore une fois, particulièrement utiles au sein d'une requête Linq.

2.1.2.     LINQ

Linq permet d'interroger toutes sortes de données provenant de différentes sources à la façon dont on interrogerait une base de données SQL. Il existe plusieurs déclinaisons de Linq, dont Linq to objects, pour utiliser des objets .Net comme source de données, Linq to XML pour utiliser des fichiers XML comme source de données, Linq to entities pour interroger des sources données hétéroclites et Linq to SQL, de façon à pouvoir interroger une base de données MS-SQL avec une syntaxe proche du SQL, mais dont la rédaction sera bien plus aisée, car nous profiterons de l'IntelliSense et de l'analyse syntaxique / sémantique du compilateur pour faire remonter certaines erreurs au moment de la compilation et non pas au moment de l'exécution.

3.                Silverlight 2

Silverlight version 1 est à peine sortie que déjà, des beta de Silverlight 2 sont disponibles. Silverlight 1 se concentrait principalement sur des applications multimedia, faisant de la diffusion vidéo son fer de lance, et permettait le pilotage de l'interface visuelle de silverlight grâce à Javascript/Ajax dont le code était situé dans un fichier .js séparé de l'application Silverlight. Silverlight 2 change radicalement la donne en donnant la possibilité d'utiliser le langage C# pour piloter Silverlight, en gardant le code à l'intérieur de l'application. De plus, une des grandes critiques de Silverlight était le manque de support de contrôles, de templates, de styles, de positionnement relatif à la taille de l'écran, du Binding, du RSS, et d'autres mécanismes qui étaient disponibles dans WPF pour les applications de bureau. C'est une critique qui a été entendue et à laquelle l'équipe de développement de Silverlight 2 a répondu en portant sur Silverlight la quasi-totalité de ces mécanismes. Quelques absents tout de même, par exemple, les triggers n'existent pas en Silverlight, même dans sa version 2.La bêta 1 de Silverlight 2 est déjà disponible en téléchargement, alors que la bêta 2 sera disponible au cours du second trimestre 2008. Les bêta de Silverlight sont à disponsition avec une licence GoLive pour permettre l'utilisation en production pour les early adopters.Silverlight est également adopté sur un nombre de plateformes de plus en plus vaste : un partenariat entre Nokia et Microsoft assure que Silverlight sera supporté sur Symbian, sans oublier le partenariat avec Novell pour le support de Silverlight sous linux sous le nom de  Moonlight.

4.                Pièges avec la technologie LINQ

Cette séance avait pour but de chercher quels pouvaient  être les points négatifs de la technologie LINQ. Il s'agit là des hautes sphères de C# 3.5 et de sujets très pointus. Bien que cette séance ait été extrêmement intéressante, je ne m'attarderai pas en détails sur les aspects très techniques.Il s'agit des problèmes pouvant être inclus lors de l'utilisation d'applications Multi-Tiers déconnectées accédant à la même base de données, et du fait qu'il n'y ait pas de suivi des changements de la base à attaquer. Si le problème est abordé de façon trop naïve, LINQ exécutera de façon transparente sans que le programmeur ne s'en aperçoive, une multitude de requêtes SQL. Il est alors important avec des applications dans cette configuration de toujours vérifier avec le log de MS SQL les requêtes ayant été exécutées, afin de s'assurer que LINQ n'effectue pas des dizaines de requêtes SQL à l'insu du programmeur. Pour plus de détails, se référer à la présentation des techdays qui se trouvera sur le site officiel quelques jours après la fin de l'évènement.

5.                Développement Web avec ASP.Net 3.5

Au cours de cette séance, Sascha P. Corti nous a présenté les nouveautés apportées par Visual Studio 2008 et la Framework .Net 3.5 en matière de développement web. Tout d'abord, d'une manière générale, une nette amélioration concernant les performances, notamment lors du basculement de l'affichage entre design et markup ASP.Net, mais surtout, une réelle intégration du JavaScript dans Visual Studio 2008. Jusqu'à présent, il était très difficile d'incorporer du JavaScript, et pratiquement impossible de le débugger à l'aide de Visual Studio. La version 2008 change la donne et permet notamment, d'ajouter des évènements client-side en javascript, en étant intégrés à Visual Studio et à WebForms de la même façon que les postback étaient gérés dans Visual Studio 2005, à ceci près que le javascript gère cette fois les évènements client-side. Pour continuer le support de JavaScript dans Visual Studio, on notera à présent la présence d'un IntelliSense complet pour JavaScript, prenant également en compte les méthodes se trouvant dans les fichiers.js faits maison. Mais la perle au niveau du JavaScript revient certainement au debugger JS au sein de Visual Studio : Il est à présent de débugger un script JavaScript en posant des breakpoints et en exécutant pas à pas un script au travers du debugger de Visual Studio 2008.Ajax n'est pas en reste non plus puisque grâce aux ScriptManagers, il est possible de travailler avec cette technologie. Par défaut, seul un set réduit de contrôles est fourni avec Visual Studio 2008 pour développer en Ajax, cependant, un package à télécharger séparément, Ajax Asp.Net, propose une multitude d'extensions pour les contrôles ASP.Net existants. Ceux-ci sont extrêmement bien intégrés à Visual Studio. Le package intègre également des contrôles pour Silverlight.Une fonctionnalité encore en cours de développement est la notion d'Ajax History, afin de pouvoir revenir avec le bouton précédent du navigateur, non pas à la dernière adresse tapée dans la barre de titre, mais à la dernière opération effectuée sur l'interface web, même si celle-ci n'a pas rechargé toute la page, mais n'a rechargé qu'une petite partie de l'interface web grâce à Ajax.

6.                Développement d'applications mobiles avec la Compact Framework .Net 3.5

La Compact Framework apporte un gros de nouveautés pour le développement sur plateformes mobiles. Notamment, grâce à l'intégration de LINQ et de WCF, deux technologies qui, pour la première fois dans l'histoire de .Net, sont portées en même temps sur les deux versions de la framework, standard et compact. Le support de WCF comporte tout de même un bémol, puisque pour alléger la framework compact, (10% de la taille de sa grande sœur) certains providers de transports, d'encodage, et de sécurité ont été supprimés. Il est toujours possible cependant de palier à ce problème en codant ses propres providers basés sur le provider Custom. Une couche de transport qu in'existe que dans la version Compact de WCF est le transport Exchange qui ne vise que les plateformes mobiles, et qui permet d'avoir une connexion en Keep-Alive (long-lived connection) avec ActiveSync pour recevoir en entrée des informations du serveur. La compact framework annonce également un support plus riche du multimédia, notamment pour une prise en charge plus simple de l'audio avec le namespace System.Media.Une intégration en code managé de l'API système WindowsMobile pour permettre leurs utilisation depuis du code .Net, par exemple, choisir un contact, choisir une date, écrire un SMS, etc. le tout est représenté de façon 100% managée. Il est alors possible de crocher des eventhandlers sur des évènements système, et ces fonctionnalités sont exposées par le namespace System.WindowsMobile.Une nouveauté, le NotificationBroker permet même de répondre à un évènement, même si une application n'est pas chargée en mémoire : le NotificationBoker lancera l'application abonnée à un évènement système, et lèvera l'évènement approprié lorsque l'application sera chargée !L'émulateur de périphériques permet également d'effectuer des tests unitaires sur les applications développées pour la Compact Framework. Les fonctionnalités de tests unitaires sont directement intégrées dans Visual Studio 2008, et permet donc de visualiser directement au sein de l'IDE le résultat des tests, le code-coverage, etc. Grande nouvelle, les tests unitaires sont disponibles dans la version Pro de Visual Studio 2008, et plus dans la version Team System comme c'était le cas auparavant. A noter qu'il est également possible à présent de contrôler le comportement de l'émulateur depuis une autre application grâce à une API. Ceci permettra de tester le programme en cours de développement dans des cas spéciaux, par exemple, à tester son comportement en cas de batterie faible. Tout comme pour les projets standards, il est possible de faire du multitargetting avec Visual Studio 2008, à la différence près qu'avec la CompactFramework, la migration de framework cible ne peut se faire que dans un sens : S'il est possible de migrer un projet vers la compact framework 3.5, il n'est en revanche pas possible de reconvertir le projet pour la compact framework 2.0 après sa création.
SqlCompact 3.5 a également été amélioré pour offrir de meilleures performances sur les bases de données embarquées sur des périphériques mobiles.
Divers outils ont été ajoutés dans cette nouvelle mouture de la compact framework, comme par exemple la prise en charge de compression de données.

7.                Synchronisation Framework

Cette présentation donnait une vue d'ensemble de la nouvelle framework de synchronisation actuellement en cours de développement. Les champs d'application d'une telle framework sont très large, cependant, une partie de cette présentation présentait les possibilités de synchronisation entre une base de donnée satellite contenant un set réduit de données visant à être modifiées, puis resynchronisées avec la base de données mère. La Synchronisation Framework va donc bien au-delà de la simple synchronisation de fichiers et ouvre de nouvelles perspectives dans le domaine des applications déconnectées.