+ All Categories
Home > Documents > .NET in the Real World Mike Shaw.NET Architectural Engineer [email protected].

.NET in the Real World Mike Shaw.NET Architectural Engineer [email protected].

Date post: 28-Dec-2015
Category:
Upload: abigail-berry
View: 219 times
Download: 0 times
Share this document with a friend
28
.NET in the Real World .NET in the Real World Mike Shaw Mike Shaw .NET Architectural Engineer .NET Architectural Engineer [email protected] [email protected]
Transcript

.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/

ASP.NET in actionASP.NET in action

Sorry, videos not availableSorry, videos not available

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

Ryan Calafato
Swtich win32 + WinFX with .net framework

RoadmapRoadmap

Ryan Calafato
2H 2003 is on the slide<click>1H 2004 bulds<click>2H 2004 builds + Longhorn

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.


Recommended