SlideShare uma empresa Scribd logo
1 de 21
David Giard MCTS, MCSD, MCSE, MCDBA Principal Consultant, Sogeti www.DavidGiard.com DavidGiard@DavidGiard.com
Managed Extensibility Framework Beta 2
Compile and Deploy Tight Coupling DLL DLL EXE
MEF Loose Coupling with mef Compile and Deploy DLL DLL EXE DLL Contract Contract Contract Contract
Managed Extensibility Framework Applications consists of loosely-coupled components that are discovered and composed at runtime
Advantages of mef Loose Coupling Swap Classes at Runtime No Recompile or Redeploy Single Plug-In Architecture
MEF Usage Scenarios Empower developers to extend your application without modifying it Provide extra modules to your application, as needed Use MEF as an platform ecosystem to manage all parts of your application
Demo G/L Modules for Accounting app A/R MEFApp (Accounting) GenSetup A/P Export
Existing Extensibility in .Net Visual Studio Add-Ins Microsoft Tools for Office Rules Engines WCF Interfaces Reflection IOC / Dependency Injection
Get Started MEF.CodePlex.com   Download and unzip MEF_Beta_2.zip Zip file contains DLLs Samples Source Code
Developer Steps Set Reference to System.ComponentModel.Composition.dll Contract Import Export Catalogs Composition Import Contracts Export
MEF Contracts [Import(“Contract1”)] String  SomeThing {get; set;} [Export(“Contract1”)] Public string SpecialThing{ Get {return “A Value”}; } “A Value”
MEF Contracts [Import(“Contract1”)] String  SomeThing {get; set;} [Export(“Contract1”)] Public string MoreSpecialThing{ Get {return “A Different Value”}; } “A Different Value”
MEF Interface Contracts [Import(typeof(IFoo))] IFooSomeFoo {get; set;} [Export(typeof(IFoo))] public Foo: IFoo{ … } new Foo()
MEF Interface Contracts [Export(typeof(IFoo))] public Foo1: IFoo{ … } [ImportMany(typeof(IFoo))] List<IFoo> BunchOfFoos{get; set;} new Foo1() [Export(typeof(IFoo))] public Foo2: IFoo{ … } new Foo2()
Composition varcatalog1     = newDirectoryCatalog(@"c:EFmports"); var container = newCompositionContainer catalog1); container.ComposeParts(this); Catalogs TypeCatalog AssemblyCatalog DirectoryCatalog AggregateCatalog PackageCatalog (Silverlight toolkit)
Demo Using MEF
MEF vs  Dependency Injection
rESOURCES http://MEF.codeplex.com http://www.davidgiard.com http://msmvps.com/blogs/kathleen http://blogs.msdn.com/gblock http://tinyurl.com/TaultyMEFSilverlightVideos NPlus1.org David Giard, MCTS, MCSD, MCSE, MCDBA www.DavidGiard.com DavidGiard@DavidGiard.com
User Groups Great Lakes Area .Net User Group Southfield, MI migang.org Greater Lansing .Net User Group East Lansing, MI glugnet.org
Dave’s Thoughts DavidGiard.com TechnologyAndFriends.com DavidGiard@DavidGiard.com

Mais conteúdo relacionado

Mais procurados

Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software EngineeringSalman Khan
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleKanav Sood
 
Component Based Software Development
Component Based Software DevelopmentComponent Based Software Development
Component Based Software DevelopmentDiego Cardozo
 
Component Based Testing Using Finite Automata
Component Based Testing Using Finite AutomataComponent Based Testing Using Finite Automata
Component Based Testing Using Finite AutomataSanjoy Kumar Das
 
The benefits of software reuse
The benefits of software reuseThe benefits of software reuse
The benefits of software reuseEntando
 
Shivani_Sethi__Resume
Shivani_Sethi__ResumeShivani_Sethi__Resume
Shivani_Sethi__ResumeShivani Sethi
 
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...pichiliani
 
[Whitepaper] an overview of ibm mobile first platform
[Whitepaper] an overview of ibm mobile first platform[Whitepaper] an overview of ibm mobile first platform
[Whitepaper] an overview of ibm mobile first platformgule mariam
 
Software and software engineering basics by ram k paliwal
Software and software engineering basics by ram k paliwalSoftware and software engineering basics by ram k paliwal
Software and software engineering basics by ram k paliwalRam Paliwal
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9Ian Sommerville
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAhmed Alageed
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a NutshellFibonalabs
 
SWE-401 - 2. Software Development life cycle (SDLC)
SWE-401 - 2. Software Development life cycle (SDLC)SWE-401 - 2. Software Development life cycle (SDLC)
SWE-401 - 2. Software Development life cycle (SDLC)ghayour abbas
 
How Virtual Compilation Transforms Static Code Analysis
How Virtual Compilation Transforms Static Code AnalysisHow Virtual Compilation Transforms Static Code Analysis
How Virtual Compilation Transforms Static Code AnalysisCheckmarx
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutionsgavhays
 
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREEMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREijseajournal
 

Mais procurados (20)

Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software Engineering
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Component Based Software Development
Component Based Software DevelopmentComponent Based Software Development
Component Based Software Development
 
Component Based Testing Using Finite Automata
Component Based Testing Using Finite AutomataComponent Based Testing Using Finite Automata
Component Based Testing Using Finite Automata
 
The benefits of software reuse
The benefits of software reuseThe benefits of software reuse
The benefits of software reuse
 
Shivani_Sethi__Resume
Shivani_Sethi__ResumeShivani_Sethi__Resume
Shivani_Sethi__Resume
 
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
 
Your PaaS to DevOps
Your PaaS to DevOpsYour PaaS to DevOps
Your PaaS to DevOps
 
[Whitepaper] an overview of ibm mobile first platform
[Whitepaper] an overview of ibm mobile first platform[Whitepaper] an overview of ibm mobile first platform
[Whitepaper] an overview of ibm mobile first platform
 
Software and software engineering basics by ram k paliwal
Software and software engineering basics by ram k paliwalSoftware and software engineering basics by ram k paliwal
Software and software engineering basics by ram k paliwal
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a Nutshell
 
SWE-401 - 2. Software Development life cycle (SDLC)
SWE-401 - 2. Software Development life cycle (SDLC)SWE-401 - 2. Software Development life cycle (SDLC)
SWE-401 - 2. Software Development life cycle (SDLC)
 
How Virtual Compilation Transforms Static Code Analysis
How Virtual Compilation Transforms Static Code AnalysisHow Virtual Compilation Transforms Static Code Analysis
How Virtual Compilation Transforms Static Code Analysis
 
Software process
Software processSoftware process
Software process
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutions
 
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREEMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
EMPIRICALLY VALIDATED SIMPLICITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
 
Swe notes
Swe notesSwe notes
Swe notes
 
Bhavana Paul
Bhavana PaulBhavana Paul
Bhavana Paul
 

Destaque

Pochoco
PochocoPochoco
Pochocogndlf
 
City University Food Thinkers
City University Food ThinkersCity University Food Thinkers
City University Food Thinkersjackthur
 
Gray routes Fall/Autumn Intern Requirements 2013
Gray routes Fall/Autumn Intern Requirements 2013Gray routes Fall/Autumn Intern Requirements 2013
Gray routes Fall/Autumn Intern Requirements 2013Soubhagya Sahoo
 
Greenwich Ateb Presentation 21 Oct 2008 Final
Greenwich Ateb Presentation 21 Oct 2008 FinalGreenwich Ateb Presentation 21 Oct 2008 Final
Greenwich Ateb Presentation 21 Oct 2008 Finalrcsmuk
 
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating Collaboration
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating CollaborationFATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating Collaboration
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating CollaborationTerry Borst
 
Terry Borst: Credits
Terry Borst: CreditsTerry Borst: Credits
Terry Borst: CreditsTerry Borst
 
Colorado Climate
Colorado ClimateColorado Climate
Colorado Climatextina44
 
A Solver Manager for energy systems planning within a Stochastic Optimization...
A Solver Manager for energy systems planning within a Stochastic Optimization...A Solver Manager for energy systems planning within a Stochastic Optimization...
A Solver Manager for energy systems planning within a Stochastic Optimization...Emilio L. Cano
 
Workflow Foundation
Workflow FoundationWorkflow Foundation
Workflow FoundationDavid Giard
 
Gang announcements 2010 07
Gang announcements 2010 07Gang announcements 2010 07
Gang announcements 2010 07David Giard
 
GANG Announcements March 2010
GANG Announcements March 2010GANG Announcements March 2010
GANG Announcements March 2010David Giard
 
Gang announcements 2010 11
Gang announcements 2010 11Gang announcements 2010 11
Gang announcements 2010 11David Giard
 
Foresites hoardings with map (2)
Foresites hoardings with map (2)Foresites hoardings with map (2)
Foresites hoardings with map (2)Mohd Hussain
 

Destaque (20)

Scrapbook - Les Ségur
Scrapbook - Les SégurScrapbook - Les Ségur
Scrapbook - Les Ségur
 
Criterios
CriteriosCriterios
Criterios
 
Pochoco
PochocoPochoco
Pochoco
 
Web 3.0
Web 3.0Web 3.0
Web 3.0
 
IntelliKeys USB
IntelliKeys USBIntelliKeys USB
IntelliKeys USB
 
City University Food Thinkers
City University Food ThinkersCity University Food Thinkers
City University Food Thinkers
 
JJMBSIDJournals
JJMBSIDJournalsJJMBSIDJournals
JJMBSIDJournals
 
Gray routes Fall/Autumn Intern Requirements 2013
Gray routes Fall/Autumn Intern Requirements 2013Gray routes Fall/Autumn Intern Requirements 2013
Gray routes Fall/Autumn Intern Requirements 2013
 
Greenwich Ateb Presentation 21 Oct 2008 Final
Greenwich Ateb Presentation 21 Oct 2008 FinalGreenwich Ateb Presentation 21 Oct 2008 Final
Greenwich Ateb Presentation 21 Oct 2008 Final
 
Sist distribucion
Sist distribucionSist distribucion
Sist distribucion
 
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating Collaboration
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating CollaborationFATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating Collaboration
FATE2013 Posthaus presentation -- Outdoor Vision Fest, Innovating Collaboration
 
Cell Parts
Cell PartsCell Parts
Cell Parts
 
Terry Borst: Credits
Terry Borst: CreditsTerry Borst: Credits
Terry Borst: Credits
 
Colorado Climate
Colorado ClimateColorado Climate
Colorado Climate
 
A Solver Manager for energy systems planning within a Stochastic Optimization...
A Solver Manager for energy systems planning within a Stochastic Optimization...A Solver Manager for energy systems planning within a Stochastic Optimization...
A Solver Manager for energy systems planning within a Stochastic Optimization...
 
Workflow Foundation
Workflow FoundationWorkflow Foundation
Workflow Foundation
 
Gang announcements 2010 07
Gang announcements 2010 07Gang announcements 2010 07
Gang announcements 2010 07
 
GANG Announcements March 2010
GANG Announcements March 2010GANG Announcements March 2010
GANG Announcements March 2010
 
Gang announcements 2010 11
Gang announcements 2010 11Gang announcements 2010 11
Gang announcements 2010 11
 
Foresites hoardings with map (2)
Foresites hoardings with map (2)Foresites hoardings with map (2)
Foresites hoardings with map (2)
 

Semelhante a Managed Extensibility Framework 2010 01

Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVCJulia Vi
 
Managed Extensibility Framework or Effective Development of Scalable Applicat...
Managed Extensibility Framework or Effective Development of Scalable Applicat...Managed Extensibility Framework or Effective Development of Scalable Applicat...
Managed Extensibility Framework or Effective Development of Scalable Applicat...SoftServe
 
Modern Microservices Architecture with Docker
Modern Microservices Architecture with DockerModern Microservices Architecture with Docker
Modern Microservices Architecture with DockerEran Stiller
 
Gk1051 001 j2-ee_arch_tt425v1.1
Gk1051 001 j2-ee_arch_tt425v1.1Gk1051 001 j2-ee_arch_tt425v1.1
Gk1051 001 j2-ee_arch_tt425v1.1vciampa
 
Coolgen Shkehar
Coolgen ShkeharCoolgen Shkehar
Coolgen Shkeharshekhar619
 
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai..."Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...Fwdays
 
What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?IBM Danmark
 
Extensibility in application
Extensibility in applicationExtensibility in application
Extensibility in applicationAbhishek Sur
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesIBM Rational software
 
Plugin architecture (Extensible Application Architecture)
Plugin architecture (Extensible Application Architecture)Plugin architecture (Extensible Application Architecture)
Plugin architecture (Extensible Application Architecture)Chinmoy Mohanty
 
J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007Jay van Zyl
 
Mdd Lcds
Mdd LcdsMdd Lcds
Mdd Lcdsravinxg
 
The necessity of a lead person to monitor development stages of the DevOps pi...
The necessity of a lead person to monitor development stages of the DevOps pi...The necessity of a lead person to monitor development stages of the DevOps pi...
The necessity of a lead person to monitor development stages of the DevOps pi...nooriasukmaningtyas
 
Extending the Enterprise with MEF
Extending the Enterprise with MEFExtending the Enterprise with MEF
Extending the Enterprise with MEFBrian Ritchie
 
Best practices for creating modular Web applications
Best practices for creating modular Web applicationsBest practices for creating modular Web applications
Best practices for creating modular Web applicationspeychevi
 
microsoft visual studio .net introduction from ids team
microsoft visual studio .net introduction from ids teammicrosoft visual studio .net introduction from ids team
microsoft visual studio .net introduction from ids teamroyaljaiitsolutions
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperKarthik Reddy
 

Semelhante a Managed Extensibility Framework 2010 01 (20)

Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
Managed Extensibility Framework or Effective Development of Scalable Applicat...
Managed Extensibility Framework or Effective Development of Scalable Applicat...Managed Extensibility Framework or Effective Development of Scalable Applicat...
Managed Extensibility Framework or Effective Development of Scalable Applicat...
 
Managed Extensibility Framework
Managed Extensibility FrameworkManaged Extensibility Framework
Managed Extensibility Framework
 
Modern Microservices Architecture with Docker
Modern Microservices Architecture with DockerModern Microservices Architecture with Docker
Modern Microservices Architecture with Docker
 
Gk1051 001 j2-ee_arch_tt425v1.1
Gk1051 001 j2-ee_arch_tt425v1.1Gk1051 001 j2-ee_arch_tt425v1.1
Gk1051 001 j2-ee_arch_tt425v1.1
 
Coolgen Shkehar
Coolgen ShkeharCoolgen Shkehar
Coolgen Shkehar
 
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai..."Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
 
What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?
 
Overview
OverviewOverview
Overview
 
Extensibility in application
Extensibility in applicationExtensibility in application
Extensibility in application
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
Mdd lcds
Mdd lcdsMdd lcds
Mdd lcds
 
Plugin architecture (Extensible Application Architecture)
Plugin architecture (Extensible Application Architecture)Plugin architecture (Extensible Application Architecture)
Plugin architecture (Extensible Application Architecture)
 
J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007J2EEPlatformsandMicrosoft007
J2EEPlatformsandMicrosoft007
 
Mdd Lcds
Mdd LcdsMdd Lcds
Mdd Lcds
 
The necessity of a lead person to monitor development stages of the DevOps pi...
The necessity of a lead person to monitor development stages of the DevOps pi...The necessity of a lead person to monitor development stages of the DevOps pi...
The necessity of a lead person to monitor development stages of the DevOps pi...
 
Extending the Enterprise with MEF
Extending the Enterprise with MEFExtending the Enterprise with MEF
Extending the Enterprise with MEF
 
Best practices for creating modular Web applications
Best practices for creating modular Web applicationsBest practices for creating modular Web applications
Best practices for creating modular Web applications
 
microsoft visual studio .net introduction from ids team
microsoft visual studio .net introduction from ids teammicrosoft visual studio .net introduction from ids team
microsoft visual studio .net introduction from ids team
 
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net DeveloperActively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
 

Mais de David Giard

Data Visualization - CodeMash 2022
Data Visualization - CodeMash 2022Data Visualization - CodeMash 2022
Data Visualization - CodeMash 2022David Giard
 
Azure data factory
Azure data factoryAzure data factory
Azure data factoryDavid Giard
 
University of Texas lecture: Data Science Tools in Microsoft Azure
University of Texas lecture: Data Science Tools in Microsoft AzureUniversity of Texas lecture: Data Science Tools in Microsoft Azure
University of Texas lecture: Data Science Tools in Microsoft AzureDavid Giard
 
University of Texas, Data Science, March 29, 2018
University of Texas, Data Science, March 29, 2018University of Texas, Data Science, March 29, 2018
University of Texas, Data Science, March 29, 2018David Giard
 
Intro to cloud and azure
Intro to cloud and azureIntro to cloud and azure
Intro to cloud and azureDavid Giard
 
Azure and deep learning
Azure and deep learningAzure and deep learning
Azure and deep learningDavid Giard
 
Azure and Deep Learning
Azure and Deep LearningAzure and Deep Learning
Azure and Deep LearningDavid Giard
 
Cloud and azure and rock and roll
Cloud and azure and rock and rollCloud and azure and rock and roll
Cloud and azure and rock and rollDavid Giard
 
Own your own career advice from a veteran consultant
Own your own career   advice from a veteran consultantOwn your own career   advice from a veteran consultant
Own your own career advice from a veteran consultantDavid Giard
 
You and Your Tech Community
You and Your Tech CommunityYou and Your Tech Community
You and Your Tech CommunityDavid Giard
 
Microsoft Azure IoT overview
Microsoft Azure IoT overviewMicrosoft Azure IoT overview
Microsoft Azure IoT overviewDavid Giard
 
Cloud and azure and rock and roll
Cloud and azure and rock and rollCloud and azure and rock and roll
Cloud and azure and rock and rollDavid Giard
 
Big Data on azure
Big Data on azureBig Data on azure
Big Data on azureDavid Giard
 
Microsoft azure without microsoft
Microsoft azure without microsoftMicrosoft azure without microsoft
Microsoft azure without microsoftDavid Giard
 
Azure mobile apps
Azure mobile appsAzure mobile apps
Azure mobile appsDavid Giard
 
Building a TV show with Angular, Bootstrap, and Web Services
Building a TV show with Angular, Bootstrap, and Web ServicesBuilding a TV show with Angular, Bootstrap, and Web Services
Building a TV show with Angular, Bootstrap, and Web ServicesDavid Giard
 
Effective Data Visualization
Effective Data VisualizationEffective Data Visualization
Effective Data VisualizationDavid Giard
 
Angular2 and TypeScript
Angular2 and TypeScriptAngular2 and TypeScript
Angular2 and TypeScriptDavid Giard
 

Mais de David Giard (20)

Data Visualization - CodeMash 2022
Data Visualization - CodeMash 2022Data Visualization - CodeMash 2022
Data Visualization - CodeMash 2022
 
Azure data factory
Azure data factoryAzure data factory
Azure data factory
 
Azure functions
Azure functionsAzure functions
Azure functions
 
University of Texas lecture: Data Science Tools in Microsoft Azure
University of Texas lecture: Data Science Tools in Microsoft AzureUniversity of Texas lecture: Data Science Tools in Microsoft Azure
University of Texas lecture: Data Science Tools in Microsoft Azure
 
University of Texas, Data Science, March 29, 2018
University of Texas, Data Science, March 29, 2018University of Texas, Data Science, March 29, 2018
University of Texas, Data Science, March 29, 2018
 
Intro to cloud and azure
Intro to cloud and azureIntro to cloud and azure
Intro to cloud and azure
 
Azure and deep learning
Azure and deep learningAzure and deep learning
Azure and deep learning
 
Azure and Deep Learning
Azure and Deep LearningAzure and Deep Learning
Azure and Deep Learning
 
Custom vision
Custom visionCustom vision
Custom vision
 
Cloud and azure and rock and roll
Cloud and azure and rock and rollCloud and azure and rock and roll
Cloud and azure and rock and roll
 
Own your own career advice from a veteran consultant
Own your own career   advice from a veteran consultantOwn your own career   advice from a veteran consultant
Own your own career advice from a veteran consultant
 
You and Your Tech Community
You and Your Tech CommunityYou and Your Tech Community
You and Your Tech Community
 
Microsoft Azure IoT overview
Microsoft Azure IoT overviewMicrosoft Azure IoT overview
Microsoft Azure IoT overview
 
Cloud and azure and rock and roll
Cloud and azure and rock and rollCloud and azure and rock and roll
Cloud and azure and rock and roll
 
Big Data on azure
Big Data on azureBig Data on azure
Big Data on azure
 
Microsoft azure without microsoft
Microsoft azure without microsoftMicrosoft azure without microsoft
Microsoft azure without microsoft
 
Azure mobile apps
Azure mobile appsAzure mobile apps
Azure mobile apps
 
Building a TV show with Angular, Bootstrap, and Web Services
Building a TV show with Angular, Bootstrap, and Web ServicesBuilding a TV show with Angular, Bootstrap, and Web Services
Building a TV show with Angular, Bootstrap, and Web Services
 
Effective Data Visualization
Effective Data VisualizationEffective Data Visualization
Effective Data Visualization
 
Angular2 and TypeScript
Angular2 and TypeScriptAngular2 and TypeScript
Angular2 and TypeScript
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Managed Extensibility Framework 2010 01

  • 1. David Giard MCTS, MCSD, MCSE, MCDBA Principal Consultant, Sogeti www.DavidGiard.com DavidGiard@DavidGiard.com
  • 3. Compile and Deploy Tight Coupling DLL DLL EXE
  • 4. MEF Loose Coupling with mef Compile and Deploy DLL DLL EXE DLL Contract Contract Contract Contract
  • 5. Managed Extensibility Framework Applications consists of loosely-coupled components that are discovered and composed at runtime
  • 6. Advantages of mef Loose Coupling Swap Classes at Runtime No Recompile or Redeploy Single Plug-In Architecture
  • 7. MEF Usage Scenarios Empower developers to extend your application without modifying it Provide extra modules to your application, as needed Use MEF as an platform ecosystem to manage all parts of your application
  • 8. Demo G/L Modules for Accounting app A/R MEFApp (Accounting) GenSetup A/P Export
  • 9. Existing Extensibility in .Net Visual Studio Add-Ins Microsoft Tools for Office Rules Engines WCF Interfaces Reflection IOC / Dependency Injection
  • 10. Get Started MEF.CodePlex.com Download and unzip MEF_Beta_2.zip Zip file contains DLLs Samples Source Code
  • 11. Developer Steps Set Reference to System.ComponentModel.Composition.dll Contract Import Export Catalogs Composition Import Contracts Export
  • 12. MEF Contracts [Import(“Contract1”)] String SomeThing {get; set;} [Export(“Contract1”)] Public string SpecialThing{ Get {return “A Value”}; } “A Value”
  • 13. MEF Contracts [Import(“Contract1”)] String SomeThing {get; set;} [Export(“Contract1”)] Public string MoreSpecialThing{ Get {return “A Different Value”}; } “A Different Value”
  • 14. MEF Interface Contracts [Import(typeof(IFoo))] IFooSomeFoo {get; set;} [Export(typeof(IFoo))] public Foo: IFoo{ … } new Foo()
  • 15. MEF Interface Contracts [Export(typeof(IFoo))] public Foo1: IFoo{ … } [ImportMany(typeof(IFoo))] List<IFoo> BunchOfFoos{get; set;} new Foo1() [Export(typeof(IFoo))] public Foo2: IFoo{ … } new Foo2()
  • 16. Composition varcatalog1 = newDirectoryCatalog(@"c:EFmports"); var container = newCompositionContainer catalog1); container.ComposeParts(this); Catalogs TypeCatalog AssemblyCatalog DirectoryCatalog AggregateCatalog PackageCatalog (Silverlight toolkit)
  • 18. MEF vs Dependency Injection
  • 19. rESOURCES http://MEF.codeplex.com http://www.davidgiard.com http://msmvps.com/blogs/kathleen http://blogs.msdn.com/gblock http://tinyurl.com/TaultyMEFSilverlightVideos NPlus1.org David Giard, MCTS, MCSD, MCSE, MCDBA www.DavidGiard.com DavidGiard@DavidGiard.com
  • 20. User Groups Great Lakes Area .Net User Group Southfield, MI migang.org Greater Lansing .Net User Group East Lansing, MI glugnet.org
  • 21. Dave’s Thoughts DavidGiard.com TechnologyAndFriends.com DavidGiard@DavidGiard.com

Notas do Editor

  1. Photo by Andres Rueda: http://www.flickr.com/photos/andresrueda/2983149263/ Creative Common, Attribution-No Derivative