Windows Workflow Foundation Mike Taulty Developer & Platform Group Microsoft Ltd [email protected] .
.NET in the Real World Mike Shaw.NET Architectural Engineer [email protected].
-
Upload
abigail-berry -
Category
Documents
-
view
219 -
download
0
Transcript of .NET in the Real World Mike Shaw.NET Architectural Engineer [email protected].
.NET in the Real World.NET in the Real World
Mike ShawMike Shaw.NET Architectural Engineer.NET Architectural [email protected]@microsoft.com
TopicsTopics
Architecting and DesigningArchitecting and Designing
Real World Examples:Real World Examples:ASP.NETASP.NET
.NET Compact Framework.NET Compact Framework
WinFormsWinForms
What tomorrow will bring?What tomorrow will bring?
General ResourcesGeneral Resources
The .NET EvolutionThe .NET Evolution
Before COM, applications were completely separate entities with little or no integration
Application
Code and data
structures
The .NET EvolutionThe .NET Evolution
COM provides a way for components to integrate. However, each component must provide the “plumbing” and objects cannot directly interact.
The .NET EvolutionThe .NET Evolution
With the .NET Framework common language runtime, components are built on a common substrate. No “plumbing” is needed and objects can directly interact
ASP, XML
UI(HTML,WML)
DNA ArchitectureDNA Architecture
COM APIs forWindows System
Servers, etc.
COM APIs
PCBrowser
Internet
WAPDevice
Pocket IE
COM/DCOM
UI(XSL-IE5)
UI(XSL-WAP)
PCBrowser
Internet
WAPDevice
Pocket IESOAPClient
Web Services
XSL ISAPI SOAP SDK
SOAP/XMLWAP/WML
HTTP/HTML
Windows COM+ Services
Common Language Runtime
Base Class Library
MIT
.NET Architecture.NET Architecture
COM APIs forWindows System
Servers, etc.
Web Forms
.NET Framework
COM APIs
PCBrowser
Primary InteropAssemblies
Web Services
Internet
WAPDevice
Pocket IE
SOAP/XMLHTTP/HTML
WAP/WML
SOAPClient
No System Is An IslandNo System Is An Island
Customers
Suppliers Employees
Partners
Suppliers
Suppliers
Employees
Customers
Partners Partners
Today’s Dominant Today’s Dominant Application Application Architecture: Architecture: Multi-TierMulti-Tier
Pros:Pros:Supports browsers and other clientsSupports browsers and other clients
Scales wellScales well
Familiar and (relatively) cheapFamiliar and (relatively) cheap
Cons:Cons:Doesn’t integrate well with other Doesn’t integrate well with other applicationsapplications
BrowserClients
WindowsClients
Business LogicDBMS
Presentation Logic
Tomorrow’s Dominant Tomorrow’s Dominant Application Architecture: Service-Application Architecture: Service-Based – designed with Based – designed with integration in mindintegration in mind
WindowsClients
BrowserClients
Presentation Logic
OtherClients
Application X
Business Logic
Application Y
Business LogicDBMS
Varieties of ServicesVarieties of Services
New Code
WrapperExisting Code
New Code
WrapperExisting Code
New Code
Client
x509v3
Kerve
rosv
5
U & P
Architecting and Architecting and DesigningDesigning
Service-Oriented ArchitectureService-Oriented Architecture
http://msdn.microsoft.com/architectuhttp://msdn.microsoft.com/architecture/re/
Patterns and PracticesPatterns and Practiceshttp://msdn.microsoft.com/architecture/http://msdn.microsoft.com/architecture/patterns/default.aspxpatterns/default.aspx
http://www.cbdiforum.comhttp://www.cbdiforum.com
http://www.wwisa.org/http://www.wwisa.org/
http://www.theserverside.net/ http://www.theserverside.net/
Resources for ASP.NETResources for ASP.NET
Forums, samples, controls, Cassini Forums, samples, controls, Cassini http://www.asp.nethttp://www.asp.net
http://msdn.microsoft.com/asp.net/http://msdn.microsoft.com/asp.net/
ASP.NET hosting companies:ASP.NET hosting companies:http://www.microsoft.com/serviceprovidehttp://www.microsoft.com/serviceproviders/directory/default.aspxrs/directory/default.aspx
How-To EncyclopaediaHow-To Encyclopaediahttp://www.asp.net/Modules/MoreArtihttp://www.asp.net/Modules/MoreArticles.aspx?tabindex=0&mid=64cles.aspx?tabindex=0&mid=64
ASP.NET Starter KitsASP.NET Starter Kitshttp://asp.net/starterkitshttp://asp.net/starterkits
Time Tracker Starter KitTime Tracker Starter KitDynamic chart creation using the System.Drawing Dynamic chart creation using the System.Drawing classes classes Three-tier architecture with ASP.NET Three-tier architecture with ASP.NET User controls User controls
Community Starter KitCommunity Starter Kit Send Newsletters Send Newsletters Create voting polls Create voting polls Supports RSS news feeds and XML Web services Supports RSS news feeds and XML Web services
Commerce Starter KitCommerce Starter Kit Cross-browser support for Netscape and Internet Cross-browser support for Netscape and Internet Explorer Explorer Clean code/html content separation using server controls Clean code/html content separation using server controls High performance catalog pages that use output caching High performance catalog pages that use output caching 3-tier ADO.NET data access using SQL stored procedures 3-tier ADO.NET data access using SQL stored procedures Forms authentication using a database for Forms authentication using a database for usernames/passwords usernames/passwords SOAP XML web services for B2B order entry and status SOAP XML web services for B2B order entry and status
.NET Compact Framework.NET Compact Framework
TescoTesco3:213:21
Sorry, videos not availableSorry, videos not available
Resources for mobileResources for mobileMobile Application DevelopmentMobile Application Development
2626thth April April http://www.microsoft.com/developmobilhttp://www.microsoft.com/developmobilee
Mobile Developers Conference at Mobile Developers Conference at TechEdTechEdhttp://msdn.microsoft.com/mobility/http://msdn.microsoft.com/mobility/http://samples.gotdotnet.com/mobilehttp://samples.gotdotnet.com/mobilequickstart/default.aspxquickstart/default.aspx http://www.businessanyplace.net/http://www.businessanyplace.net/http://learnmobile.net/ddefault.aspxhttp://learnmobile.net/ddefault.aspxhttp://opennetcf.org/http://opennetcf.org/ http://www.tabletpcdeveloper.com/http://www.tabletpcdeveloper.com/
WinForms in ActionWinForms in Action
BoNYBoNY5:245:24
Sorry, videos not availableSorry, videos not available
Resources for WinFormsResources for WinForms
Building Smart Client ApplicationsBuilding Smart Client Applications2 day event 252 day event 25thth or 27 or 27thth May May
http://www.msregtool.comhttp://www.msregtool.com uO4108 uO4108
http://msdn.microsoft.com/netframehttp://msdn.microsoft.com/netframework/using/building/windows/default.work/using/building/windows/default.aspxaspx
http://www.syncfusion.com/FAQ/WinFhttp://www.syncfusion.com/FAQ/WinForms/orms/
http://aspnet.4guysfromrolla.comhttp://aspnet.4guysfromrolla.com
http://www.windowsforms.net/http://www.windowsforms.net/ Terrarium, TaskVisionTerrarium, TaskVision
TaskViewTaskViewTechnologies and Design Approaches Demonstrated:Technologies and Design Approaches Demonstrated:
Application offline and online model Application offline and online model Application update model via HTTP (no-touch deployment) Application update model via HTTP (no-touch deployment) Authorization to control user access to application features Authorization to control user access to application features Data collision handling Data collision handling Printing and Print Preview Printing and Print Preview Windows XP Themes Windows XP Themes Dynamic properties Dynamic properties Localization support Localization support Accessibility support (limited) Accessibility support (limited) Forms authentication using a database for user Forms authentication using a database for user names/passwords names/passwords Asynchronous XML Web service class Asynchronous XML Web service class ADO.NET data access using SQL stored procedures ADO.NET data access using SQL stored procedures Graphics development using GDI+ Graphics development using GDI+ Integration between .NET Framework-based code and COM Integration between .NET Framework-based code and COM applications (COM interop)applications (COM interop)
Planning for Tomorrow: Planning for Tomorrow: LonghornLonghorn
EggEgg7:287:28
Sorry, videos not availableSorry, videos not available
Security PrioritiesSecurity PrioritiesSecure by DesignSecure by Design
Be proactive during developmentBe proactive during developmentBuild threat models to drive secure designs, Build threat models to drive secure designs, then rank threats in order of importancethen rank threats in order of importancePerform security reviews of your codePerform security reviews of your codeUse managed code and new security tools Use managed code and new security tools
Secure by DefaultSecure by DefaultTurn features off when they are not required Turn features off when they are not required Determine appropriate access controlDetermine appropriate access controlRun with the least possible privilege Run with the least possible privilege Add appropriate new defensive layers (e.g. Add appropriate new defensive layers (e.g. encryption)encryption)
Secure in DeploymentSecure in DeploymentBe firewall and antivirus friendly Be firewall and antivirus friendly Create security guidance and documentationCreate security guidance and documentation
The Road to LonghornThe Road to Longhorn
Move to managed code now to
make it easy to fully exploit Longhorn
Existing applications
continue to run on Longhorn as-is
Take full advantage of
WinFX™ and the new application
model
TM
Use some Longhorn
features in your existing Win32-
based application
TM
RoadmapRoadmap
Other resourcesOther resourcesThese slides and demos: These slides and demos: http://www.microsoft.com/uk/msdn/ehttp://www.microsoft.com/uk/msdn/events/events.asp vents/events.asp http://http://msdn.microsoft.commsdn.microsoft.com/community//community/ http://gotdotnet.com/http://gotdotnet.com/http://msdn.microsoft.comhttp://msdn.microsoft.com MSDN TV: MSDN TV: http://http://msdn.microsoft.com/theshowmsdn.microsoft.com/theshow VBTV: VBTV: http://msdn.microsoft.com/vbtv/default.asp http://msdn.microsoft.com/vbtv/default.asp Web Services: Web Services: http://msdn.microsoft.com/webservices/http://msdn.microsoft.com/webservices/TechEd Europe 2004 AmsterdamTechEd Europe 2004 Amsterdam
http://www.microsoft.com/europe/techedhttp://www.microsoft.com/europe/teched
Security: Security: http://msdn.microsoft.com/security/http://msdn.microsoft.com/security/
More Resources…More Resources…Books etc:Books etc:
http://http://www.amazon.co.uk/mstechsolutionswww.amazon.co.uk/mstechsolutions Training:Training:
http://www.microsoft.com/uk/skills/started/http://www.microsoft.com/uk/skills/started/developer/training.aspxdeveloper/training.aspx
Microsoft .NET TechnologiesMicrosoft .NET Technologieshttp://www.microsoft.com/nethttp://www.microsoft.com/netA business-orientated site that describes A business-orientated site that describes the overall .NET vision.the overall .NET vision.Case Studies of Customer Projects Using Case Studies of Customer Projects Using the .NET Frameworkthe .NET Frameworkhttp://www.microsoft.com/uk/casestudies/fihttp://www.microsoft.com/uk/casestudies/filter_process.asp?filter=Initiatives&id=7lter_process.asp?filter=Initiatives&id=7Support: Support: http://www.microsoft.com/uk/visualstudio/shttp://www.microsoft.com/uk/visualstudio/support/default.aspupport/default.asp
Forthcoming EventsForthcoming Eventshttp://www.microsoft.com/uk/msdn/events/events.ashttp://www.microsoft.com/uk/msdn/events/events.aspp
23 March 2004 – MSDN Day: 23 March 2004 – MSDN Day: Security Essentials, Writing Security Essentials, Writing Secure Code and Implementing Secure Code and Implementing Application Security - ReadingApplication Security - Reading 23 March 2004 – SECURITY: 23 March 2004 – SECURITY: Essentials of Application Essentials of Application Security - WebcastSecurity - Webcast 24 March 2004 – MSDN Evening: 24 March 2004 – MSDN Evening: Security Essentials and Writing Security Essentials and Writing Secure Code - ReadingSecure Code - Reading 24 March 2004 – Security 24 March 2004 – Security vulnerabilities surrounding XML vulnerabilities surrounding XML Web services - WebcastWeb services - Webcast 25 March 2004 - Using ASP.NET 25 March 2004 - Using ASP.NET to write web applications and to write web applications and services - Readingservices - Reading 29 March 2004 - BizTalk Server 29 March 2004 - BizTalk Server 2004 Launch Event2004 Launch Event 29-31 March 2004 - DevTrain's 29-31 March 2004 - DevTrain's Programming with C# .NET - Programming with C# .NET - London regionLondon region 30 March 2004 – SECURITY: 30 March 2004 – SECURITY: Writing Secure Code – Best Writing Secure Code – Best Practices - WebcastPractices - Webcast 31 March 2004 – 31 March 2004 – Whidbey/Language and Whidbey/Language and Framework Enhancements - Framework Enhancements - WebcastWebcast 5 April 2004 – MSDN Evening: 5 April 2004 – MSDN Evening: Writing Secure Code and Writing Secure Code and Implementing Application Implementing Application Security - ReadingSecurity - Reading 6 April 2004 - SECURITY: 6 April 2004 - SECURITY: Writing Secure Code - Threat Writing Secure Code - Threat Defence - WebcastDefence - Webcast
7 April 2004 – Visual Studio 7 April 2004 – Visual Studio “Whidbey”: Visual Design and “Whidbey”: Visual Design and Validation of Connected Systems - Validation of Connected Systems - WebcastWebcast 13 April 2004 - SECURITY: 13 April 2004 - SECURITY: Implementing Application Implementing Application Security Using the .NET Security Using the .NET Framework - WebcastFramework - Webcast 13-16 April 2004 - 13-16 April 2004 - DevelopMentor's Building Mobile DevelopMentor's Building Mobile Applications with .NET - LondonApplications with .NET - London 14 April 2004 – MSDN Evening: 14 April 2004 – MSDN Evening: Security Essentials and Writing Security Essentials and Writing Secure Code - LondonSecure Code - London 15 - 17 April 2004 - DevTrain's 15 - 17 April 2004 - DevTrain's Programming with C# .NET - Programming with C# .NET - South East RegionSouth East Region 19 April 2004 – MSDN Day: 19 April 2004 – MSDN Day: Security Essentials, Writing Security Essentials, Writing Secure Code and Implementing Secure Code and Implementing Application Security - LondonApplication Security - London 20 April 2004 - Day of .NET with 20 April 2004 - Day of .NET with DevelopMentor - BirminghamDevelopMentor - Birmingham 24 April 2004 - MoDaCo Event III - 24 April 2004 - MoDaCo Event III - LondonLondon 26 April 2004 - Smart Client 26 April 2004 - Smart Client Development for Windows Mobile Development for Windows Mobile Devices - ReadingDevices - Reading 29 April 2004 – MSDN Day: 29 April 2004 – MSDN Day: Security Essentials, Writing Security Essentials, Writing Secure Code and Implementing Secure Code and Implementing Application Security - ReadingApplication Security - Reading 29 June - 2 July 2004 - Microsoft 29 June - 2 July 2004 - Microsoft Tech-Ed 2004 Europe - Tech-Ed 2004 Europe - Amsterdam - The NetherlandsAmsterdam - The Netherlands 30 June - 2 July 2004 - Microsoft 30 June - 2 July 2004 - Microsoft Mobile DevCon 2004 - Amsterdam, Mobile DevCon 2004 - Amsterdam, The NetherlandsThe Netherlands Sign up for the UK MSDN Flash Sign up for the UK MSDN Flash newsletternewsletter
© 2003 Microsoft Corporation. All rights reserved.© 2003 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.