Upload
yolanda-towns
View
219
Download
1
Embed Size (px)
Citation preview
Visual Studio 2010and
.NET Framework 4
Visual Studio 2010and
.NET Framework 4
Bernard [email protected]
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
A Look Back…A Look Back…
.NET 1.0 .NET 1.1 .NET 2.0
3.0
3.5
.NET 4
2002 2003 2008 CTP!2005-08
CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
SP1
What Is The .NET Framework?What Is The .NET Framework?
Base Class Libraries
The CLRJIT & NGEN
Garbage Collector
Security Model
Exception Handling
Loader & Binder
WPFWin
FormsDLR
ASP.NET
WCFAnd
more!LINQ
The goal of CLR 4The goal of CLR 4
Working Better Together…
Faster…
With Fewer Bugs…
In-Proc SxS
Native/Managed InteropDLR Integration
Managed Extensibility Framework
Threading Parallel Extensions
Garbage Collection Profiling
Code Contracts DebuggingCorrupted State Exceptions
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
Visual Studio Targets Many…Visual Studio Targets Many…
Audience
Featu
re S
et
Minimal
Complete
Hobbyist Enterprise
Professional
Team System
Express
New Look & Feel
Web Deploy
web.config Transformation
Call Hierarchy
Inline Call Tree
Highlight References
Document Map Margin
Extensible Test Runner
WPF-based Editor
Sharepoint Tooling
JQueryIntellisense
HTML Snippets
Historical Debugging
Concurrency Profiler
Parallel Tasks Window
Parallel Stacks Window
Quick Search
Generate From Usage
Improved Multi-Monitor
MVC Tooling
Dynamic Data Tooling
Click-Once Enhancements for Office
64-bit Mixed-Mode
Minidump Debugging
Breakpoint Grouping
Breakpoint Labeling
Breakpoint Import/Export
New Visual Studio 2010 Features…
Improved WPF Tooling
The Two Faces of Visual Studio 2010
The Two Faces of Visual Studio 2010
Visual Studio As An Editor
Visual Studio As A Platform
… As An Editor… As An Editor
An improved focus on…
Writing code,
Understanding code,
Navigating code,
Publishing code
… As A Platform… As A Platform
New Extensible Editor allows editor to be easily extended to provide a rich and robust editing experience
Online Visual Studio Gallery integrated directly into Visual Studio
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
Magic value via temp variables
Magic value via temp variables
GenerateChart(20, true);
var processCount = 20; var copyToWord = true; GenerateChart(processCount, copyToWord);
GenerateChart(20 /* processCount */, true /* copyToWord */);
GenerateChart( processCount:20, copyToWord: true);
Optional ParametersOptional Parameters void GenerateChart(int processCount) { GenerateChart(processCount, false); }
void GenerateChart(int processCount, bool copyToWord) { // Do Something } void GenerateChart( int processCount,
bool copyToWord = false) { // Do Something }
Dynamic LanguageDynamic Language
dynamic calc = GetCalculator(); int sum = calc.Add(10, 20);
Statically typed to be
dynamic
Dynamic method
invocationDynamic
conversion
New Features in C# 4.0 & VB 10
New Features in C# 4.0 & VB 10
Feature VB10 C#4
Auto-implemented Properties
Collection Initializers
Statement Lambdas
Implicit Line Continuation N/A
Named/Optional Parameters
Latebinding support (dynamic)
Omit ref on COM calls
New in Dev10Already exists in VB9/C#3
New Features in C# 4.0 & VB 10
New Features in C# 4.0 & VB 10
Feature VB10 C#4
Auto-implemented Properties
Collection Initializers
Statement Lambdas
Implicit Line Continuation N/A
Named/Optional Parameters
Latebinding support (dynamic)
Omit ref on COM calls
Interop with Dynamic Languages
Co/contravariance
PIA deployment not needed
New in Dev10Already exists in VB9/C#3
New Features in C# 4.0 & VB 10
New Features in C# 4.0 & VB 10
Feature VB10 C#4
Auto-implemented Properties
Collection Initializers
Statement Lambdas
Implicit Line Continuation N/A
Named/Optional Parameters
Latebinding support (dynamic)
Omit ref on COM calls
Interop with Dynamic Languages
Co/contravariance
PIA deployment not needed
Iterators
XML Literals
New in Dev10Already exists in VB9/C#3
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
Visual Studio Team System 2008
Visual Studio Team System 2008
Visual Studio Team System 2010Visual Studio Team System 2010
Where are the metadatas ?Where are the metadatas ?
Conceptual Level
Logical Level
Physical Level
What
How
Using
Traditional Approach
AGILE
Identifying and Creating Personas
Identifying and Creating Personas
Personification of user groups Represented as an individual
Personification of user groups Represented as an individual
Good personas are memorable and three dimensional
Good personas are memorable and three dimensional
Personas consider personality, work environment and
characteristics
Personas consider personality, work environment and
characteristics
Persona should be useful for decision making
Persona should be useful for decision making
Personas should have a memorable name
Personas should have a memorable name
Persona BenefitsPersona Benefits
They separate “you” from your application’s customers
By making them “real” they are easier to discuss
They are more specific than RUP actors e.g. several personas for different demographics
They help with role play activities
They separate “you” from your application’s customers
By making them “real” they are easier to discuss
They are more specific than RUP actors e.g. several personas for different demographics
They help with role play activities
Techniques for Capturing User Stories
Techniques for Capturing User Stories
PersonaPersona
Practices for Capturing User StoriesPractices for Capturing User Stories
Start with the goal
Break the goal into a list of steps
Start with “Persona does step”
Then “Solution shows result”
Use action verbs to enumerate steps
Write scenarios in the user’s language
Don’t detail alternate and exception paths initially
Start with the goal
Break the goal into a list of steps
Start with “Persona does step”
Then “Solution shows result”
Use action verbs to enumerate steps
Write scenarios in the user’s language
Don’t detail alternate and exception paths initially
Steps for persona to accomplish goal
Steps for persona to accomplish goal
User storiesUser stories
GoalGoal
TFS 2010TFS 2010
No More Planning Black BoxNo More Late SurprisesNo More Stakeholder SurprisesNo More Bewildering Admin
No More Planning Black BoxNo More Planning Black Box
Top-to-Bottom TraceabilityRequirements TraceabilityParent/Child RelationshipsRollup and Drilldown
Agile PlanningBuilt-in product backlog mgmtBuilt-in iteration planningEasily customizable
Great Project IntegrationFull dependency linking Full round-tripping w/ TFS
No More Late SurprisesNo More Late Surprises
Reporting for mere mortals
Generate reports from queriesManipulate data with ExcelFriendlier OLAP cube
Share the knowledgeEmbed reports via MOSS
No More Stakeholder SurprisesNo More Stakeholder Surprises
Information-rich dashboardsRoll-up reports show KPI’sDrill-down for further analysisQuickly customizable
Easy interaction with developers
Web-based bug filingWeb-based feature requestsTrack status of bugs / features
No More Parallel Development Pain
No More Parallel Development Pain
First class branchesServer-side branch creationVisualize branch relationshipsTrack change across branches
HistoryTimelineRicher Annotate
Conflict resolution
No More Bewildering AdminNo More Bewildering Admin
MMC-based adminUI for common tasks
Change service accountsConfigure data tierConfigure SSLAdd /change SharePointConfigure reporting/analysis servicesConfigure Team System Web AccessManage project collections
Access log files
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
Generate Graph DocumentsGenerate Graph Documents
To explore the relationships and organization :
Graphs are generated By Assembly, by Namespace or By ClassCan be navigated to visualize dependenciesPartial graphs can be created by using Architecture ExplorerLayer Diagrams show organization and constraints
UML DiagramsUML DiagramsHelps you to modelize User RequirementsUse case diagram
Who uses the system and what they do with it
Conceptual class diagramGlossary of types that are used to describe the requirements; the types visible at the system's interface.
Activity diagramFlow of work and information between activities performed by users and system or its parts.
Sequence diagramSequence of interactions between users and system or its parts. An alternative view to the activity diagram.
Component Diagramshow the major parts of the system
AgendaAgenda
What’s new in .Net 4VS 2010 OverviewWhat ’s new with C# 4.0What’s new With TFS 2010What’s new for the ArchitectsWhat’s new for the Developpers
Focus on code QualityFocus on code QualityIntelliTrace : « rewind » the debugging trace to examine the state of your application Enabled IntelliTrace in Visual Studio options
Identifying code change impacts on testVerifying code by using units tests
Enhance code quality with ckeck-in policiesTrack coding defects with Code AnalysisIdentify bottleneck with performance session
Prototype with SketchFlow
Q&A