17.01.2010, 18:10 Uhr

Office 2010 - was ist neu für Entwickler?

Mit jeder neuen Office-Version fallen auch für Entwickler neue Features an. Beim kommenden Office 2010 ist die wichtigste Neuerung, neben den mit jeder Version erweiterten Objektmodellen, eine um einen Backstage-Bereich erweiterte Fluent UI. Die wichtigsten Neuerungen für .NET-Entwickler sind, dass .NET-Erweiterungen bei Office 2010 ,,out of the box" unterstützt werden, und dass C# 4.0 endlich jene Möglichkeiten für den Zugriff auf das Office-Objektmodell bietet, die in der Vergangenheit manches Mal vermisst wurden.
Credit-Suisse-Hauptsitz am Zürcher Paradeplatz
Bei Office gibt es was den Entwicklungsbereich angeht schon seit vielen Jahren eine Art Zwei-Klassengesellschaft. Auf der einen Seite stehen die Anwender, die mit VBA mehr oder weniger große Makros oder, vor allem bei Access und Excel, ganze Anwendungen umsetzen, die sich in den Unternehmen einer anhaltenden Beliebtheit und einer entsprechend lagen Lebensdauer erfreuen. Auf der anderen Seite steht die kleine, aber stetig wachsende Gruppe der .NET-Entwickler, die mit Visual Basic oder C# und Visual Studio Erweiterungen und Automatisierungslösungen umsetzt.Während es für die erste Gruppe schon seit Office 2000 keine wesentliche Neuerungen gegeben hat (die stets bange Frage, ob der VBA und der VBA-Editor noch unterstützt werden, kann auch bei Office 2010 positiv beantwortet werden- auch wenn der VBA-Editor die Version 7.0 anzeigt, hat es wie üblich keinerlei Änderungen gegeben), sieht sich die zweite Gruppe mit jeder Visual Studio-Version mit einer Reihe von Neuerungen konfrontiert, die vor allem den Komfort verbessern sollen.Office erweitern mit Managed CodeOffice-Erweiterungen werden heutzutage mit Visual Studio umgesetzt, da auf Managed Code basierende Add-Ins nicht nur mit vertrauten Werkzeugen umgesetzt werden, sondern Microsoft im Rahmen der Visual Studio Tools for Office (VSTO) ein vereinfachtes Programmiermodell zur Verfügung stellt. Die VSTO gibt es als eigenes Produkt nicht mehr, ihre Funktionalität wurde bereits mit Visual Studio2008 in die IDE integriert. Visual Studio2010 wird für Office-Entwickler eine Reihe kleiner, aber wichtiger Verbesserungen bieten, die vor allem das Deployment einer Office-Erweiterung betreffen: >Das Deployment für Office 2007/2010-Erweiterungen wird weiter vereinfacht, da sich auch mehrere Erweiterungen in einem Anwendungspaket ausliefern lassen (bei der Beta 2 muss dies aber noch durch Editieren der Bereitstellungsmanifestdatei gelöst werden[1]).>Im Rahmen einer ClickOnce-Bereitstellung können ,,Post-Deployment-Aktionen" festgelegt werden, durch die z.B. zusätzlich benötigte Dateien kopiert werden (auch diese Aktionen müssen bei der Beta noch direkt in die Anwendungsmanifestdatei eingetragen werden[2]). >Soll ein Office-Add In"on demand" geladen werden, kann dies direkt in den Veröffentlichungsoptionen eingestellt werden. Das nachträgliche Editieren des Bereitstellungsmanifests entfällt zukünftig.>Office 2010 bringt alle erforderlichen .NET-Assemblies mit, so dass vor der Installation einer Erweiterung nicht mehr geprüft werden muss, ob die .NET-Laufzeit nachinstalliert werden muss.>C# 4.0 zieht durch optionale und benannte Parameter und dynamische Bindung mit Visual Basic gleich. C# zieht mit Visual Basic gleichEs gibt sicherlich nicht viele Bereiche, in denen C#-Entwickler freiwillig auf Visual Basic ausweichen, aber bei der Office-Programmierung gab es dafür bislang gute Gründe. Der Hintergrund ist, dass C# bis zur Version 3.0 weder benannte noch optionale Argumente bot, die beim Zugriff auf das nach wie vor auf COM basierende Objektmodell einer Office-Anwendung eine zentrale Rolle spielen. Auch eine späte Bindung, bei der der Typ eines Variablen erst zur Laufzeit bestimmt wird, war bislang nicht möglich. Das hatte zur Folge, dass selbst eine simple Aktion wie der Zugriff auf eine Excel-Zelle oder das Abspeichern einer Arbeitsmappe relativ umständlich war, da z.B. für jeden nicht übergebenen Parameter ein missing-Wert übergeben werden musste: object missing = System.Reflection.Missing.Value;Excel.Workbook Wb = ExApp.Workbooks.Add(missing);((Ex.Range)ExApp.Cells[1,1]).Value2= 1000;((Ex.Range)ExApp.Cells[1,2]).Value2=2000;Wb.SaveAs("TestMappe", missing, missing, missing, missing,missing, Ex.XlSaveAsAccessMode.xlShared, missing,missing, missing, missing, missing);Mit Visual Studio 2010 und C# 4.0 fallen diese Formalitäten weg, was nicht nur den Code vereinfacht, sondern auch manche Irritationen bei C#-Entwicklern beseitigen wird, die sich auf das Terrain der Office-Entwicklung begeben müssen:Excel.Workbook Wb = ExApp.Workbooks.Add(); ExApp.Cells[1, 1].Value2 = 1000;ExApp.Cells[1, 2].Value2 = 1000;Wb.SaveAs("TestMappe"); Entwickeln für SharePointOffice und SharePoint rücken mit der kommenden Version zwar etwas weiter zusammen, in dem z.B. Office-Erweiterungen immer öfter ihre Daten aus einer SharePoint-Site erhalten, eine offizielle Verbindung, sieht man von der Möglichkeit ab, Dokumente direkt in eine SharePoint-Site speichern zu können, zwischen Office und SharePoint gibt es aber nicht. Die bei Visual Studio 2008 in der Kategorie Office angebotenen SharePoint-Workflow-Vorlagen findet man bei Visual Studio 2010 in der Kategorie SharePoint neben verschiedenen Vorlagen u.a. für WebParts, Event Receiver, Listendefinitionen und Content Types. Mehr zum Thema SharePoint-Entwicklung mit VS 2010 unter [3]. Office 2010 Trainingskit für EntwicklerDamit sich .NET-Entwickler möglichst früh auf die mit Office 2010 einhergehenden Neuerungen vorbereiten können, hat Microsoft im Dezember letzten Jahres das Office 2010 Developer Trainingskit freigegeben [4]. Der knapp 40 Mbyte große Download besteht aus einzelnen Präsentationen, die auf der letzten SharePoint-Konferenz gehalten wurden, und Labs mit Beispielprojekten zu Themen Business Connectivity Services, Developing BI Applications und natürlich Office 2010 UI Customizations. Wer sich die Mühe macht und jedes der neun Labs durchzuarbeiten, ist anschließend auf dem aktuellen Stand was die Entwicklung mit und rund um Office 2010 betrifft.Tabelle: Die Themen der Hands On Labs des Office 2010 Developer TrainingskitTitel/InhaltBusiness Connectivity Services/Externe Content Types mit SharePoint Designer 2010 und Visual Studio 2008 entwickelnDeveloping BI Applications/Erstellen eines Dashboards mit den Performancepoint ServicesClient Workflow /Definieren eines Workflow-Prozesses mit Visio 2010 und Visual Studio 2010Security and Deployment/Ausliefern eines Office-Add-Ins und Ausliefern eines Dokuments in einem SharePoint-WSPGetting Started with Office 2010 Development/ Ribbon-Anpassung und Erstellen eines Word-Add-InsInfoPath and Forms Services/Das neue InfoPath WebPart und das Zusammenspiel mit der Forms Library im Zusammenhang mit SharePoint Server 2010Office 2010 Service Applications/Reports mit Excel Services und Dokumente mit Word Services erstellenOffice 2010 UI Customization/Ribbons und Backstage-Bereich anpassen, eine Custom Task Pane anlegen und einen Outlook Formularbereich entwerfenOpen XML Programming/Das Laden eines Word-Dokuments in eine SharePoint-Seite anpassen.Links [1] http://msdn.microsoft.com/en-us/library/dd465290%28VS.100%29.aspx[2] http://msdn.microsoft.com/en-us/library/dd465291%28VS.100%29.aspx [3] http://www.computerworld.ch/aktuell/news/50109/index.html[4] http://www.microsoft.com/downloads/details.aspx?familyid=F1599288-A99F-410F-A219-F4375DBE310C&displaylang=en[5] http://blogs.technet.com/office2010/archive/2009/11/03/ui-extensibility-in-office-2010.aspx Peter Monadiemi


Das könnte Sie auch interessieren