The Transition to Modern Office Add-in Development
The Transition to Modern Office Add-in Development P R E S E N T E D BY CAMERON DWYER Office Add-ins and extensibility Developer opportunity Introduction
The OnePlaceMail story Recap on the existing add-in development model Why a new model was needed Outline Explain the modern Office add-in model What does this mean for Office developers Q&A
COM Add-ins and/or Visual Studio Tools for Office Add-ins (VSTO) Typically C# or VB (.Net Framework) written in Visual Studio Add-ins were compiled code (dlls) The existing Office add-in model Dlls were deployed (installed) onto machines running Office client via setup
packages or .msi files Rich extensibility experience - customize ribbon, areas of the host application, context menus, events, deep APIs into the data/content (e.g. Excel API) Access to local machine resources Experience on rails Office is now on any device (Windows, Mac, iOS, Android and Office Online) Those compiled DLLs would only ever work on a Windows PC
Why did we need a new model? We needed an extensibility model to match, one that could work on any device Microsoft struggled in 2 other areas under the old model: Add-in code isolation (performance, stability) Deployment Designed to interact with data in a document,
Code does not get installed on end user devices The add-in is displayed in pre-defined locations/contexts within the host Office application Anatomy of an add-in Task pane add-in Add-in that runs beside a document/mail with read/write access Word, Excel, PowerPoint, Project, Outlook Add-in
contexts Content add-in Add-in that runs within a document content with read/write access Excel, PowerPoint, Access Add-in command Command in the Office UI to launch add-in or perform UI-less operation Outlook and Outlook Web Access (OWA)
Task Pane add-ins [Demo] Task pane add-in Add-in that runs beside a document/mail with read/write access Word, Excel, PowerPoint, Project, Outlook Add-in contexts Content add-in
Add-in that runs within a document content with read/write access Excel, PowerPoint, Access Add-in command Command in the Office UI to launch add-in or perform UI-less operation Outlook and Outlook Web Access (OWA) Content addins [Demo] Task pane add-in
Add-in that runs beside a document/mail with read/write access Word, Excel, PowerPoint, Project, Outlook Add-in contexts Content add-in Add-in that runs within a document content with read/write access Excel, PowerPoint, Access Add-in command
This allows your add-in to interact with the Office app Microsoft iterating quickly on these APIs to remove barriers in converting VSTO add-ins Example Office.js code Deployment is the act of associating an add-in manifest with a user Add-ins can be acquired through the Office store Enterprise add-ins can be made available using a private
add-in catalog Deployment No code to install on user machines/devices No elevated permissions needed Install on one host installs on all hosts Centralized deployment controls for organisations Deploymen t from Office Store
[Demo] Different Hosts Different UX Different Hosts Different UX Cross-platform support. Runs in Office for Windows, Mac, iOS, Android and Office Online.
Modern addin advantages over VSTO Centralized deployment and distribution. No code installed on end user machines. Add-ins do not affect the performance and stability of the host application. The application is evergreen, because it's centrally hosted making a change to the web app makes it available to all users immediately. Everyone is on the same version.
.Net Web API (C#) Hosting: Azure Web App IDE: Visual Studio Node.js, Python, PHP, Azure Functions, AWS Lambda IIS, Apache, Serverless (Azure, AWS) Huge array of options (depends on language/tech) Office 365 (SharePoint) SQL, Azure (CosmosDB, Blob, Table, Queues),
MySQL, PostGres, Mongo DB Back-end Data Storage Office is now available on any device The extensibility story has transitioned to match Summary
This is a big shift for traditional Microsoft developers There is much more choice for development technology and tooling Key challenge is in understanding the different technologies and choosing wisely https://dev.office.com/getting-started https://dev.office.com/code-samples https://developer.microsoft.com/en-us/fabric https://angular.io/ https://reactjs.org/
Energy Balance and Weight Management: ... Energy for basic body functions Affected by body size, composition, age, and gender Energy Out: Fuel Uses Major components of energy expenditure Physical activity Highly variable Affected by body size, fitness level, type of...
Sometimes you can see some of the cast members on Survivor using a chew stick to clean their teeth. In the mid 1800's, the first toothbrush was made, and then by the early 1900's, toothbrushes were being produced.1 ... Repeat...
* MLA 7.0 Style Manual MLA has published their 7th edition of the MLA Style Manual and Guide to Scholarly Publishing. Changes took place in April 2009, however many schools (and online databases) are just now making the changes. There...
Don't leave USB drive unattended. Keep it safe. Don't use USB drive from unknown source. Report to supervisor if lost USB drive that contains sensitive data. Cloud storage. Before putting data to Cloud, you should consider: ... ESD Technology Team
Minor Segment. ARC … a line which touches the circumference at one point only. From Italian . tangere, to touch. Properties of circles. When angles, triangles and quadrilaterals are constructed in a circle, the angles have certain properties. ... Circle...
Luke 22:31-38 (Read)Vs 31-34: 'Simon, Simon, Satan has asked to sift all of you as wheat. But I have prayed for [Greek - peri] you [singular], Simon, that your [singular] faith may not fail. And when you[singular] have turned back,...
Ready to download the document? Go ahead and hit continue!