View
25
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Deck from presentation on October 11 in Irvine, CA
Citation preview
Visual Studio 2008 OnRamp240
Fundamentals of Visual Studio Fundamentals of Visual Studio 20082008
Rich Web ApplicationsRich Web Applications
Next-Generation Windows Next-Generation Windows ApplicationsApplications
Office Client Applications and Office Client Applications and VSTOVSTO
Lynn Langit – MSDN Developer Evangelisthttp://blogs.msdn.com/SoCalDevGal
Developer Productivity
Next Generation Applications
Team Collaboration
Visual Studio 2008 Vision
Language advances• .NET Framework multi-targeting support• Improved Data & Language integration in VB / C#
Improvements for Web Developers• HTML / CSS designer enhancements• JavaScript Intellisense and debugging support
Developer Productivity
• Integrating the database professional
• Extensions to Unit Testing
• Load Testing for the Enterprise
• New performance tuning and diagnostic tools
Team Collaboration
Architect
TesterProject
Manager
DatabaseProfessional
Developer Designer
Best tool set for Windows Server 2008, Windows Vista & Microsoft Office 2007, SQL Server 2008• .NET Framework 3.5 design surfaces• Office 2007 support including ClickOnce and VSTO
Improvements for Web Developers• Integrated AJAX and Silverlight support• Improved JavaScript support (Intellisense and debugging)
Support for the Latest Platforms
What is the .NET Framework 3.5?
.NET Framework 3.5.NET Framework 3.5
.NET Framework 3.0.NET Framework 3.0
.NET Framework 2.0.NET Framework 2.0
.NET FrameworkTimeline
Nov 2006Nov 2006
Dec 2006Dec 2006
Fall 2007Fall 2007
Nov 2005Nov 2005
.NET Framework 2.0.NET Framework 2.0
Visual Studio 2005Visual Studio 2005
ArchitectsArchitectsDevelopersDevelopers
TestersTestersProjectProject
ManagersManagers HobbyistsHobbyistsEnthusiastsEnthusiasts
StudentsStudents
Database EditionDevelopment Edition
Architecture EditionTest Edition
Team Foundation Server
The Ultimate User Experience with Visual Studio 2008
ApplicationPlatform
Reliable, Usable, Desirable, Adaptable
Ric
hR
each
Browser + AJAX
Browser + Silverlight
Windows Vista + WPF
Rapid Application Development with Visual Studio 2008
LINQ: Smoother Data Handling
DatabaseObjects
XML
C#
VB .NET
Others…
Multi-Targeting SupportChoose which Framework version to target• .NET Framework 2.0 (“Visual Studio 2005”)• .NET Framework 3.0 (“Windows Vista”)• .NET Framework 3.5 (“Visual Studio 2008”)
Visual Studio enables only features available in target Framework• Toolbox, Project types, References, Intellisense, …
Makes it easy to upgrade to Visual Studio 2008• Move existing Visual Studio 2005 applications to .NET
Framework 3.5 gradually
Using Visual Studio 2008 multi-Using Visual Studio 2008 multi-targeting to simplify targeting to simplify development across different development across different versions of the .NET platformversions of the .NET platform
Rich Web ApplicationsRich Web Applications
Web Page AuthoringASP.NET AJAXSilverlightIIS 7Windows Live Services
Expressive andExpressive andstandards-compliantstandards-compliant
BetterBetterdeveloper/designerdeveloper/designer
collaborationcollaboration
Secure, scalableSecure, scalableplatformplatform
Windows Server 2008C
ore
Integrated Hypervisor
App PlatformApp Platform ManagementManagement.NET 3.0
IIS 7
WS-Management
Monitoring
The FundamentalsThe Fundamentals
Transactions Recovery
Storage Networking
Serv
er
Role
s
Security
Windows Server 2008 Features for Windows Server 2008 Features for DevelopersDevelopersApplication Server• .NET Framework 3.0• IIS 7• Windows Activation Service
Management• PowerShell• MMC 3.0
Transactions• Transactional NTFS and Registry
Internet Information Services (IIS) 7Internet Information Services (IIS) 7
IIS 7.0• Designed for modularity• Provides an extensibility architecture for hosting content
IIS7 Modules• Both Native and Managed are supported• Managed modules can be applied to all requests, not just ASP.NET
IIS7 Administration• Provides comprehensive Managed API• Resides in Microsoft.Web.Administration namespace
Web Development Enhancements
Javascript Intellisense & DebuggingRicher HTML/CSS Designer Support• Split View (simultaneous source and designer)• CSS Properties, Manage/Apply Styles windows, and direct
style application toolbar• Improved CSS/HTML layout and visualization in designer
ASP.NET Development Enhancements
Nested Master Page preview in designerNew Web data controls: • LinqDataSource, ListView, DataPager
LINQ supportReturn of Web Projects
ASP.NET AJAX IntegrationASP.NET AJAX templates in Web projectsJavaScript and ASP.NET AJAX Intellisense (in both pages and JS files)• Type inference, DOM support, enhanced function and
parameter tooltips• Intellisense against “referenced” script libraries in pages
and JS files
Script Debugging Improvements• Breakpoints in design-time code automatically map to runtime code• Switch between design-time/runtime code in Solution Explorer
while debugging• Improved debug watch information for script and DOM objects
Improving Web developer Improving Web developer productivity with new design tools productivity with new design tools and ASP.NET AJAX Integrationand ASP.NET AJAX Integration
Additional Web Enhancements
Microsoft Silverlight• Silverlight extensions• Intellisense and code generation for XAML• Debugging support
Windows Live Services
Silverlight
Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and rich interactive applications (RIAs) for the Web.
Windows Live APIs
Flexible Monetization Options
Platform
Rich Media ExperiencesRich Media Experiences
Sharing &Storage
Sharing &Storage
Communicate &Stay ConnectedCommunicate &Stay Connected
Find &LocateFind &Locate
Identity &Authentication
Identity &Authentication
Silverlight Streaming
Live Spaces
Virtual Earth
LiveID
Live Contacts
Search
Agents Alerts
IM & Presence
Training & SupportTraining & Support Service Level AgreementsService Level Agreements Flexible Monetization OfferingsFlexible Monetization Offerings
Serv
ice A
PIs
& C
on
trols
Language INtegrated Query (LINQ)
Integrated, native query syntax in C# and VBIntegrated, native query syntax in C# and VB• Interact with data as objectsInteract with data as objects
Reduce the complexity when working with dataReduce the complexity when working with data• Consistent API for object collections, XML, SQL dataConsistent API for object collections, XML, SQL data
BenefitsBenefits• Work with data in a consistent way, regardless of the type of Work with data in a consistent way, regardless of the type of
datadata• Better integration with programming languagesBetter integration with programming languages• Improved productivity through IntelliSense in Visual StudioImproved productivity through IntelliSense in Visual Studio
LINQ to SQLAccessing data today Queries in
quotesQueries in
quotes
Loosely bound
arguments
Loosely bound
arguments
Loosely typed result
sets
Loosely typed result
sets
No compile time checksNo compile time checks
Classesdescribe
data
Classesdescribe
dataTables are
likecollections
Tables are like
collectionsStrongly
typedconnections
Strongly typed
connectionsIntegrated
query syntax
Integratedquery syntax
Strongly typedresults
Strongly typedresults
LINQ to SQLAccessing data with LINQ
SQL Server
Application
LINQ to SQL
LINQ to SQLLINQ Architecture
from c in db.Customerswhere c.City == "London"select c.CompanyName
from c in db.Customerswhere c.City == "London"select c.CompanyName
LINQ Query
SQL Query
SELECT CompanyNameFROM CustWHERE City = 'London'
SELECT CompanyNameFROM CustWHERE City = 'London'
Rows
Objects SubmitChanges()
DML or SProcs
db.Customers.Add(c1);c2.City = “Seattle";db.Customers.Remove(c3);
db.Customers.Add(c1);c2.City = “Seattle";db.Customers.Remove(c3);
INSERT INTO Cust …UPDATE Cust …DELETE FROM Cust …
INSERT INTO Cust …UPDATE Cust …DELETE FROM Cust …
Improving developer productivity Improving developer productivity with Language Integrated Query with Language Integrated Query (LINQ) and SQL Server data (LINQ) and SQL Server data
Next-Generation Windows Next-Generation Windows ApplicationsApplicationsSmart Client DevelopmentWindows Presentation FoundationWindows Forms/WPF InteroperabilityWindows Communication Foundation & Windows Workflow Integration
Improvements for Smart Client DevelopmentIntegrated UI designer experienceImproved ClickOnce application deploymentOffice 2007 UI for native C++ applicationsClient Application-Level Services
Windows Presentation Foundation
Deliver Innovative User InterfacesIncrease Developer-Designer Productivity Leveraging Existing Code Base and Skills SetA productive, unified approach to UI, mediaand documents to deliver unmatched UX
Windows Presentation FoundationVisual Studio 2008 Enhancements
Visual Studio Designer for WPF• Creates a seamless designer/developer workflow with
Expression Blend
XAML-based editing directly in the IDE• Changes reflected in the designer in real time• Intellisense based on a XAML language service
Control extensibilityProject templates, debugger & deployment supportSide-by-side support for WinForms ClickOnce deployment support for WPF apps
Designers design
With XAML designers & With XAML designers &
developers can streamline developers can streamline
their collaborationtheir collaboration
Developers add business logic
Visual Studio 2008 supports "bi-directional" integration of WPF and Windows Forms• Windows Forms applications hosting WPF• WPF hosting Windows Forms controls
Benefits• Bring WPF functionality to existing applications• Re-use existing controls in new WPF applications
WPF & Windows Forms Interop – "Hybrid" Apps
Leverage ASP.NET Services on the client• Share user authentication and authorization between Client and Web
applications• Store user settings on the web
Client Services infrastructure• Handles web services communication• Provides offline support
Client Application Services
Simplified development using the Simplified development using the new WPF design toolsnew WPF design tools
Interoperability with WPF & Interoperability with WPF & WinFormsWinForms
Windows Communication Foundation
Microsoft’s platform for distributed systems
Build WCF services in Visual Studio 2008 using any .NET Language• Intelligent code editing, IDE Extensions for WCF, debugging, re-factoring,
code snippets, Autohost, test, client, config editing, etc.• Visual Basic .NET, Visual C#, etc.
Runs on• Microsoft Windows Vista• Microsoft Windows XP• Microsoft Windows Server 2003• Microsoft Windows Server 2008
WCF – What's New in Visual Studio 2008
Tooling• Autohost, test client, new config editor, debugging
HTTP programming support• 1st class REST support, Syndication
JSON messaging supportOASIS standard support (new protocols)Windows Workflow Foundation (WF) integration
Windows Workflow Foundation
Programming model, engine and tools for building workflow enabled applications on Windows platform
Author Workflows in Visual Studio 2008 using any .NET Language• Intelligent code editing, IDE Extensions for designing workflows, visual
debugging, re-factoring, code snippets, Service Contract designer, new service activities, etc.
• Visual Basic .NET, Visual C#, etc.
Runs on• Microsoft Windows Vista• Microsoft Windows XP• Microsoft Windows Server 2003• Microsoft Windows Server 2008
WF – What's New in Visual Studio 2008
Integration between WF and WCF• Services implemented as workflow• Workflow hosted as service
Benefits• Enables durable services• Enables conversations• Enables security around workflows
New tooling to create contracts
Building Connected Applications Building Connected Applications with Windows Communication with Windows Communication Foundation and Windows Foundation and Windows Workflow FoundationWorkflow Foundation
Office Client Applications and VSTOOffice Client Applications and VSTO
Office Business ApplicationsVisual Studio Tools for OfficeRibbon DesignerOutlook Form RegionsClickOnce Deployment
Office as a Developer Platform
Familiar user interface500+ million users worldwideOffice Open XML file formatsMicrosoft Office SharePoint Server 2007
LOB LOB AppsApps
The "Results Gap"The "Results Gap"
LOB LOB AppsApps
OfficeBusiness
Applications
Estimate custom design
Unstructured
CreateLead
Qualified?
RetireLead
CreateOppt’y
CreateQuote
Closed? CompleteSale
Create Invoice
Get specs from customer
Validate specs with Tech Sales
Cost out the solution
Decide discount strategy
Assemble proposed response
Approve proposed response
Structured
“Classic” Enterprise Applications
Office Business Applications
Estimate custom design
Unstructured
Office SharePoint Server
Word Excel Outlook InfoPath
• Document-level code behind• Brings Microsoft Office into the managed world• Strict security model
• Custom ActionsPane• Host Controls on doc
surface• Cached Data in the
document• Server-side data
processing• App-level add-ins for
Outlook
VSTO 2008VSTO 2008 • New designers: ribbon, custom task pane, Outlook form region
• App-level add-ins for most client programs• ClickOnce deployment and security• VBA/VSTO interoperability• Workflow & Microsoft SharePoint support• VSTO integral part of Visual Studio 2008
Professional
VSTO 2005VSTO 2005&&
VSTO 2005 SEVSTO 2005 SE
VSTO 2003VSTO 2003
Office Applications
Visual Studio 2008 Professional includes Visual Studio Tools for Office
Visual designers for Ribbon, Task & Action pane, Outlook Form Region customization
Integrated Workflow & Microsoft SharePoint SupportData binding in Word Content ControlsApplication-level add-ins for most client programs (both 2003 & 2007)
Document-level add-ins for Excel & Word 2007Improved deployment and security using ClickOnce
Office has built-in support for XML-based customization model
VSTO 2005 SE support:• Simplifies hookup from .NET via pre-
generated classes and sample XML
VSTO 2008 support: • Adds full-blown visual designer support• “Export to XML” option• A more robust programming layer
Ribbon Development
The benefits of Office Business The benefits of Office Business Applications and the power of the Applications and the power of the new Ribbon Designernew Ribbon Designer
New technology in Outlook 2007 for enhancing and replacing Outlook’s built-in forms
Form regions are created using Outlook Forms DesignerFour types of form regions• Adjoining and Separate regions for both custom and built-in forms• Replacement and Replace-all regions for custom forms
Reading Pane can display all types except SeparateCode behind form region is implemented as COM Add-inNew controls provide built-in look and feel as well as data binding to Outlook data
Outlook Form Regions
VSTO eases development of Outlook form regions• Use wizard to import Outlook designed form region• Controls are created and cast to correct name &
typeVSTO enables WinForm form regions• Drag & Drop WinForms designer provided• Properties window support
VSTO provides enhanced programming model, form region manifest object, automatic registration of add-in and form region, etc…
Outlook Form Regions and VSTO
Low-impact deployment mechanism• Self-contained• Solutions installed per user
Prerequisites are installed if the user is an adminSupports solution update / rollback without user interventionOffline availability of solution
ClickOnce Deployment
Leveraging the power of Outlook Leveraging the power of Outlook Form Regions and ClickOnce Form Regions and ClickOnce Deployment for Office 2007Deployment for Office 2007
Open XML = new file formats in Microsoft Office 2007• Open and standardized• Provide interoperability, compatibility and transparency
LINQ to XML enables language-based queries against XMLTogether, these technologies enable a new way of thinking about data in Office documents
Microsoft Office Open XML and LINQ to XML
LINQ To XML
Language integrated query for XML• Expressive power of XPath / XQuery• But with C# or VB as programming language
Leverages experience with DOM• Functional construction• Element centric, not document centric• Simplified XML namespace support• Annotations• Faster and smaller
Designed to make XML usable without learning specialized technologies such as XPath/XSLT
LINQ to XMLProgramming XML today Document-
centricDocument-
centric
No integrated
queries
No integrated
queries
Memory intensiveMemory intensive
<contacts> <contact> <name>Great Lakes Food</name> <phone>(503) 555-7123</phone> </contact> …</contacts>
LINQ to XMLProgramming XML with LINQ Element-
centricElement-centric
Integrated queries
Integrated queries
Smaller andfaster
Smaller andfaster
<contacts> <contact> <name>Great Lakes Food</name> <phone>(503) 555-7123</phone> </contact> …</contacts>
Accessing content from Open XML Accessing content from Open XML using LINQ to XMLusing LINQ to XML
Summary
Visual Studio 2008 and .NET 3.5 provide a host of new features and tools that:• Improve developer productivity (LINQ, Intellisense, debugging, etc.)• Support the latest platforms (Vista, Windows Server 2008, Office 2007)• Enable unprecedented team collaboration (Visual Studio Team System
2008)
Additional VS2008 Features…
Language enhancementsMFC & C++ enhancements for Vista “look &
feel”New managed add-in modelCLR enhancements
• Partial trust, Threading enhancements
High-performance trace listenerTrace listener that logs events to Event
Tracing for Windows in Windows VistaAnonymous pipes and named pipesPeer-to-peer network APIsWMI Provider Extension 2.0SQL Server Compact EditionSQL Server Reporting Services Support
XSLT DebuggerMSBuild – parallel/multi-processor builds, multi-threaded buildsVSTS improvementsProfiler support for WCF ApplicationsCustomize and extend code correctness policies – Team edition for developersTools for performance tuning an enterprise appWeb Test rules improvementsVersion control support – annotate
New Language Features – C#
• Local Variable Type Inference
• Object Initializers• Collection Initializers• Anonymous Types• Auto-Implemented Properties
• Extension Methods• Lambdas
• Query Expressions• Expression Trees• Partial Methods• Implicitly-Typed Arrays
New Language Features – VB
• Query operators• Nullable support• Lambda Expressions (aka Inline Functions)
• Partial Methods• Anonymous Types w/Keys
• Query Expressions• Expression Trees• Partial Methods• Implicitly-Typed Arrays