SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Visual Studio
     2010



TimM@infosupport.com
   13 februari 2012
Info Support Groep




                                            Info Support Global
  Info Support BV       Info Support NV
                                                  Services
    (NL, Veenendaal)       (BE, Mechelen)
                                               (BE, Echteld/Gent)




       Create solutions
    that innovate the way
organizations do their business
Info Support
 Opgericht in 1986
 Focus op IT vakmanschap
 Alle jaren financieel gezond
 en autonoom gegroeid
 Actief in Nederland en België
 Microsoft Gold Certified Partner voor
 Custom Development Solutions          Learning Solutions
 SOA and Business Process              Hosting Solutions
 Business Intelligence                 Mobility Solutions
 Information Worker Solutions          Advanced Infrastructure Solutions
 Business Solutions Competency (CRM)


 Business Partner IBM en NL-JUG


                                       Endeavour overview                  3
Contents
 Features of VS 2010
 Team Foundation Server 2010
 Unit Testing in VS 2010
 Debugging in VS 2010
 VS 11 (what’s next?)

 Extending VS 2010
Intro

Microsoft Visual Studio is a powerful IDE that ensures
quality code throughout the entire application lifecycle,
from design to deployment. Whether you’re developing
applications for SharePoint, the web, Windows,
Windows Phone, and beyond, Visual Studio is your
ultimate all-in-one solution.
Intro




        2010
Team Suite
                                         Visual Studio                    Visual Studio                                Visual Studio
                                                                                                                                                               Team Test
                                         Team                       Team Developer                                    Team Test
                                                                                                                                                               Essentials
                                        Architect
                                                                        Static Code Analyzer                             Load Testing                            Test Planning
Process and Architecture Guidance




                                          UML Models
                                                                           Code Metrics                                                                         Lab management
                                            Use Case                                                                     Web Testing

                                            Sequence                   Dynamic Code Analyzer

                                             Activity                                                                             Test Case Management
                                                                         Schema Compare
                                              Class
                                                                          Data Compare                                                  Functional Testing
                                           Component
                                                                          SP unit testing                                                   Win Forms

                                      Architecture Explorer             Historical debugging                                                    WPF

                                                                                                                                            Web (IE/FF)
                                         Layer Diagram                  Test Impact analysis

                                         DGML models                                   Collectors for: Code Coverage, Test impact, System Info, video, etc.

                                                                   Visual Studio Professional Edition


                                                                                 Team Foundation Client (includes CAL)




                                       Visual Studio
                                                               Version Control                 Reporting               Test Management                       Web Access
                                    Team Foundation
                                                              Work Item Tracking               Project Site           Project Management                     Team Build
Demo



 Most used Features of VS 2010
Most used Features of VS 2010
 Solution <> Projects        Code analysis
 Build <> Debug              – Quality
 Multi languages             – Metrics

 NuGet Packager              Most used Windows
                             –   Server Explorer
 Application Types
                             –   Class view
 –   Web (project/website)
                             –   Object Browser
 –   Win (WPF, Forms)
                             –   Tasks list
 –   Cloud
                             –   Bookmark window
 –   Database
                             –   Command window
 –   Modelling
                             Architecture views
Team Foundation Server 2010
 Intro
 Demo
 Real life case
Intro


                              Developer    Database
                   Designer
                                          Professional


       Architect
                                                         Tester




Business                                                           Project
Analyst                                                           Manager
Intro




                                                                     Team Foundation Server
Process Focused
             Version Control
Process
Templates                Work Item Tracking
             Integrated
SharePoint   Check-in                 Build Automation
                         Manage work
Customizable Check-in
                         Bugs, Tasks,             Reporting
            Policies                    Continuous
                        Requirements, Integration
            Shelving    Stories, Risks,              Decision
                        etc.            Scheduled    Support
                        Very Extensible Ad Hoc       Track Project
                                                     Progress
Intro

Client Interface                                                       Version Control         Build
                                                                       Proxy                   Environment
      Visual
                         MS Excel       Command Line
      Studio                                                                   Version
                                                                               Control               Build
                                                                                Proxy               Process
                                                                               Service
    MS Project         Team Explorer        TFS SDK




Application Tier
        SQL Reporting Services               Windows SharePoint Services                 Web Services




                                                 SQL Server


                                       Version                       Data
                       Work Items                     Team Build
                                       Control                     Warehouse


                                                                                                        Data Tier
Intro
 Key concepts
 –   Process templates
 –   Workspaces
 –   Changesets
 –   Work Items
Demo
Create TFS project
Working with Work Items
Source control
 –   Checkin/Checkout
 –   History tracking/Diffing
 –   Merging changes
 –   Locking
 –   Shelving
 –   Checkin Policies
 –   Labeling
 –   Branching
Real Life Case
 Current project
Unit Testing in VS 2010
 What is unit testing
 How to create a unit test in VS 2010
 Demo: Test first approach
 Other features inside VS 2010 to help you unit
 testing
What is unit testing?
  A unit test is an automated piece of code that
invokes the method or class being tested and then
    checks some assumptions about the logical
  behavior of that method or class. A unit test is
     almost always written using a unit-testing
   framework. It can be written easily and runs
     quickly. It’s fully automated, trustworthy,
            readable, and maintainable.
What is unit testing?
 Compile
 Static Code Analysis
 Integration Test
 System Test
 Acceptance Test
 Performance Test
 Robustness Test
 Some other Test
 Unit Test (Does not replace other tests, but makes
 them more effective)
What is unit testing?
Benefits of TDD
 Forces you to think about how you want to use
 your classes.
 Makes it impossible to write code you can not
 test.
 Automatically improves the quality of your
 design.
 – Test Driven Design
Writing a Unit Test With MSTest
 Visual Studio has a specialized project type for
 unit tests named “Test Project”.
 We use the [TestClass] and [TestMethod]
 attributes to make our tests known to the MSTest
 framework.
 Many Assertion methods are part of the
 framework for your convenience.
Demo: working test first

 The game consists of 10 frames as shown above. In each frame the
 player has two opportunities to knock down 10 pins. The score for the
 frame is the total number of pins knocked down, plus bonuses for strikes
 and spares.

 A spare is when the player knocks down all 10 pins in two tries. The
 bonus for that frame is the number of pins knocked down by the next roll.
 So in frame 3 above, the score is 10 (the total number knocked down)
 plus a bonus of 5 (the number of pins knocked down on the next roll.)

 A strike is when the player knocks down all 10 pins on his first try. The
 bonus for that frame is the value of the next two balls rolled.

 In the tenth frame a player who rolls a spare or strike is allowed to roll
 the extra balls to complete the frame. However no more than three balls
 can be rolled in tenth frame.
A quick design session

          Game
+ roll(pins : int)   Clearly we need the Game class.
+ score() : int
A quick design session

       Game          10       Frame
+ roll(pins : int)
+ score() : int


          A game has 10 frames.
A quick design session

       Game          10   Frame   1 ..2              Roll
+ roll(pins : int)                             - pins : int
+ score() : int


                                          A frame has 1 or two rolls.
A quick design session

       Game            10        Frame             1 ..2             Roll

+ roll(pins : int)                                            - pins : int
+ score() : int

                                                                         1


                            Tenth Frame



                            The tenth frame has two or three rolls.
                            It is different from all the other frames.
A quick design session

        Game            10              Frame     1 ..2          Roll

 + roll(pins : int)               + score : int           - pins : int
 + score() : int

                                                                     1
The score function must
include all the frames,
and calculate all their scores.   Tenth Frame
A quick design session

                                              The score for a spare or a strike
                                              depends on the frame’s successor
                                 Next frame



       Game             10         Frame              1 ..2           Roll

+ roll(pins : int)           + score : int                     - pins : int
+ score() : int

                                                                          1


                             Tenth Frame
Code Coverage
 Every unit of code that contains logic is important
 and should be tested
 – Simple properties do not contain logic
 – branching statements (if, switch case) and loop
   statements (while, for, foreach) are considered logic.
 Code coverage can help determine if every
 important unit of code is tested.
 A computer program can measure what source
 code is executed during test execution.
Code Coverage
 Enable code coverage in the test settings file.
Test Frameworks
 Test Frameworks make it easier to write fully
 automated, trustworthy, readable and
 maintainable tests.
 –   JUnit (java)
 –   NUnit (.Net port of JUnit)
 –   MBUnit
 –   MSTest (integrated in Visual Studio)
Use Assertions in your Tests
 AreEqual(expected, actual, message)
 IsTrue(expression, message)
 IsFalse(expression, message)
 IsNull(variable, message)
 IsNotNull(variable, message)
 Lookup the Assert class on MSDN for more…
Test Impact Analysis
 Test Impact Analysis shows you which tests need
 to be re-run after a code change has been made.
 Need to establish a baseline by running all tests
 once Impact Analysis is enabled.
 Any code changes after that will result in
 recommendations on the “Test Impact View”
 window.
 – Only meaningful code changes will result in
   recommendations.
 – Changes in comments or changes that are optimized
   away by the compiler (foo + 10 => foo + 5 + 5) are
   ignored.
Debugging in VS 2010
Basics of debugging
Breakpoint options
 – Conditions
 – Tracing options
Change the debugging visualization
 – Attributes
 – Type Proxies
Intellitrace
Extending VS 2010
 Project & Item templates
 Extending the editor
 Custom toolbar & menu commands
 Extend the editor
Visual Studio 11 (what’s next)
 C#: Async/Await
 New features
 – Search (assemblies, solution explorer, quick launch, error
   window, ctrl-i window)
 – Project roundtripping between VS2010 (SP1) & 11

Weitere ähnliche Inhalte

Was ist angesagt?

End-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementEnd-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementHosam Kamel
 
ALM for SharePoint projects
ALM for SharePoint projectsALM for SharePoint projects
ALM for SharePoint projectsSpiffy
 
3 rad extensibility-srilakshmi_s_rajesh_k
3 rad extensibility-srilakshmi_s_rajesh_k3 rad extensibility-srilakshmi_s_rajesh_k
3 rad extensibility-srilakshmi_s_rajesh_kIBM
 
01.egovFrame Training Book I
01.egovFrame Training Book I01.egovFrame Training Book I
01.egovFrame Training Book IChuong Nguyen
 
Alm briefing keynote
Alm briefing keynoteAlm briefing keynote
Alm briefing keynoteSpiffy
 
Alliance Successful Selenium Automation
Alliance Successful Selenium AutomationAlliance Successful Selenium Automation
Alliance Successful Selenium Automationsadams22
 
Agile in Action - Act 2: Development
Agile in Action - Act 2: DevelopmentAgile in Action - Act 2: Development
Agile in Action - Act 2: DevelopmentSpiffy
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012Imaginet
 
Visual studio developer tools v1.25c
Visual studio developer tools v1.25cVisual studio developer tools v1.25c
Visual studio developer tools v1.25cBreinSoft54
 
Agile Open Source Performance Testing Workshop for Business Managers
Agile Open Source Performance Testing Workshop for Business ManagersAgile Open Source Performance Testing Workshop for Business Managers
Agile Open Source Performance Testing Workshop for Business ManagersClever Moe
 
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Spiffy
 
Heterogeneous Development With RTC - Sreerupa Sen
Heterogeneous Development With RTC -  Sreerupa SenHeterogeneous Development With RTC -  Sreerupa Sen
Heterogeneous Development With RTC - Sreerupa SenRoopa Nadkarni
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextXavier Warzee
 
Agile in Action - Act 3: Testing
Agile in Action - Act 3: TestingAgile in Action - Act 3: Testing
Agile in Action - Act 3: TestingSpiffy
 
SharePoint 2010 as a Development Platform
SharePoint 2010 as a Development PlatformSharePoint 2010 as a Development Platform
SharePoint 2010 as a Development PlatformAyman El-Hattab
 
HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.Mindtree Ltd.
 
Постоянное тестирование интеграции
Постоянное тестирование интеграцииПостоянное тестирование интеграции
Постоянное тестирование интеграцииSQALab
 

Was ist angesagt? (20)

End-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementEnd-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle Management
 
ALM for SharePoint projects
ALM for SharePoint projectsALM for SharePoint projects
ALM for SharePoint projects
 
3 rad extensibility-srilakshmi_s_rajesh_k
3 rad extensibility-srilakshmi_s_rajesh_k3 rad extensibility-srilakshmi_s_rajesh_k
3 rad extensibility-srilakshmi_s_rajesh_k
 
01.egovFrame Training Book I
01.egovFrame Training Book I01.egovFrame Training Book I
01.egovFrame Training Book I
 
Alm briefing keynote
Alm briefing keynoteAlm briefing keynote
Alm briefing keynote
 
Alliance Successful Selenium Automation
Alliance Successful Selenium AutomationAlliance Successful Selenium Automation
Alliance Successful Selenium Automation
 
Agile in Action - Act 2: Development
Agile in Action - Act 2: DevelopmentAgile in Action - Act 2: Development
Agile in Action - Act 2: Development
 
The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012The Newest of the New with Visual Studio and TFS 2012
The Newest of the New with Visual Studio and TFS 2012
 
Visual studio developer tools v1.25c
Visual studio developer tools v1.25cVisual studio developer tools v1.25c
Visual studio developer tools v1.25c
 
Agile Open Source Performance Testing Workshop for Business Managers
Agile Open Source Performance Testing Workshop for Business ManagersAgile Open Source Performance Testing Workshop for Business Managers
Agile Open Source Performance Testing Workshop for Business Managers
 
Workflow for XPages
Workflow for XPagesWorkflow for XPages
Workflow for XPages
 
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
Agile in Action - Act 1 (Set Up, Planning, Requirements and Architecture)
 
Selenium Camp 2012
Selenium Camp 2012Selenium Camp 2012
Selenium Camp 2012
 
Heterogeneous Development With RTC - Sreerupa Sen
Heterogeneous Development With RTC -  Sreerupa SenHeterogeneous Development With RTC -  Sreerupa Sen
Heterogeneous Development With RTC - Sreerupa Sen
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy Context
 
Agile in Action - Act 3: Testing
Agile in Action - Act 3: TestingAgile in Action - Act 3: Testing
Agile in Action - Act 3: Testing
 
SharePoint 2010 as a Development Platform
SharePoint 2010 as a Development PlatformSharePoint 2010 as a Development Platform
SharePoint 2010 as a Development Platform
 
HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.
 
Постоянное тестирование интеграции
Постоянное тестирование интеграцииПостоянное тестирование интеграции
Постоянное тестирование интеграции
 

Andere mochten auch

2010 iska - tim m - functioneel programmeren in c-sharp
2010   iska - tim m - functioneel programmeren in c-sharp2010   iska - tim m - functioneel programmeren in c-sharp
2010 iska - tim m - functioneel programmeren in c-sharpTim Mahy
 
Mineral Lecture
Mineral  LectureMineral  Lecture
Mineral Lecturege1030
 
2009 seminar - tim m - vs 2010 developer edition
2009   seminar - tim m - vs 2010 developer edition2009   seminar - tim m - vs 2010 developer edition
2009 seminar - tim m - vs 2010 developer editionTim Mahy
 
CQRS & Queue unlimited
CQRS & Queue unlimitedCQRS & Queue unlimited
CQRS & Queue unlimitedTim Mahy
 
Minnesota D-Star Disaster Network
Minnesota D-Star Disaster Network Minnesota D-Star Disaster Network
Minnesota D-Star Disaster Network Erik Westgard
 
communityday 2012 - cqrs
communityday 2012 - cqrscommunityday 2012 - cqrs
communityday 2012 - cqrsTim Mahy
 
Minnesota Amateur Radio Marathon Support
Minnesota Amateur Radio Marathon Support Minnesota Amateur Radio Marathon Support
Minnesota Amateur Radio Marathon Support Erik Westgard
 
Tarea1 daniel sánchez
Tarea1 daniel sánchezTarea1 daniel sánchez
Tarea1 daniel sáncheznielo19
 
14 февраля
14 февраля14 февраля
14 февраляsvetlanka
 
Mo 09 G3 Intez Ali Portfolio
Mo 09 G3 Intez Ali PortfolioMo 09 G3 Intez Ali Portfolio
Mo 09 G3 Intez Ali Portfoliointezali
 
2009 training - tim m - object oriented programming
2009   training - tim m - object oriented programming2009   training - tim m - object oriented programming
2009 training - tim m - object oriented programmingTim Mahy
 
STa R Chart West Rusk Junior High
STa R Chart West Rusk Junior HighSTa R Chart West Rusk Junior High
STa R Chart West Rusk Junior HighShannon King
 

Andere mochten auch (18)

2010 iska - tim m - functioneel programmeren in c-sharp
2010   iska - tim m - functioneel programmeren in c-sharp2010   iska - tim m - functioneel programmeren in c-sharp
2010 iska - tim m - functioneel programmeren in c-sharp
 
Mineral Lecture
Mineral  LectureMineral  Lecture
Mineral Lecture
 
2009 seminar - tim m - vs 2010 developer edition
2009   seminar - tim m - vs 2010 developer edition2009   seminar - tim m - vs 2010 developer edition
2009 seminar - tim m - vs 2010 developer edition
 
Intez Ali
Intez AliIntez Ali
Intez Ali
 
CQRS & Queue unlimited
CQRS & Queue unlimitedCQRS & Queue unlimited
CQRS & Queue unlimited
 
Diaconaat 2.0
Diaconaat 2.0Diaconaat 2.0
Diaconaat 2.0
 
Taller paper
Taller paperTaller paper
Taller paper
 
Tin
TinTin
Tin
 
Minnesota D-Star Disaster Network
Minnesota D-Star Disaster Network Minnesota D-Star Disaster Network
Minnesota D-Star Disaster Network
 
communityday 2012 - cqrs
communityday 2012 - cqrscommunityday 2012 - cqrs
communityday 2012 - cqrs
 
Minnesota Amateur Radio Marathon Support
Minnesota Amateur Radio Marathon Support Minnesota Amateur Radio Marathon Support
Minnesota Amateur Radio Marathon Support
 
Tarea1 daniel sánchez
Tarea1 daniel sánchezTarea1 daniel sánchez
Tarea1 daniel sánchez
 
14 февраля
14 февраля14 февраля
14 февраля
 
Mo 09 G3 Intez Ali Portfolio
Mo 09 G3 Intez Ali PortfolioMo 09 G3 Intez Ali Portfolio
Mo 09 G3 Intez Ali Portfolio
 
2009 training - tim m - object oriented programming
2009   training - tim m - object oriented programming2009   training - tim m - object oriented programming
2009 training - tim m - object oriented programming
 
STa R Chart West Rusk Junior High
STa R Chart West Rusk Junior HighSTa R Chart West Rusk Junior High
STa R Chart West Rusk Junior High
 
Koreatown
KoreatownKoreatown
Koreatown
 
Mondragó
MondragóMondragó
Mondragó
 

Ähnlich wie 2012 student track - vs2010

Session #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSession #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSteve Lange
 
Visual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellVisual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellSpiffy
 
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxThe Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxDarren Sim
 
SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)Ayman El-Hattab
 
Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Ed Blankenship
 
Vsts Msdn Presentation2003
Vsts Msdn Presentation2003Vsts Msdn Presentation2003
Vsts Msdn Presentation2003John Sanderson
 
Microsoft Stack Visual Studio 2010 Overview
Microsoft  Stack   Visual Studio 2010 OverviewMicrosoft  Stack   Visual Studio 2010 Overview
Microsoft Stack Visual Studio 2010 Overviewrfennell
 
Aras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras
 
Mobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and ChellengesMobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and ChellengesSanjeev Sharma
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Steve Lange
 
Planning & building scalable test infrastructure
Planning  & building scalable test infrastructurePlanning  & building scalable test infrastructure
Planning & building scalable test infrastructureVijayan Reddy
 
Ashwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAAshwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAvodQA
 
Alm Specialist Toolkit Team System 2008 Deep Dive
Alm Specialist Toolkit   Team System 2008 Deep DiveAlm Specialist Toolkit   Team System 2008 Deep Dive
Alm Specialist Toolkit Team System 2008 Deep DiveChristian Thilmany
 
Visual Studio 2010 Testing & Lab Management Tools
Visual Studio 2010 Testing & Lab Management ToolsVisual Studio 2010 Testing & Lab Management Tools
Visual Studio 2010 Testing & Lab Management ToolsAyman El-Hattab
 
Team Foundation Server 2013 Lansering
Team Foundation Server 2013 LanseringTeam Foundation Server 2013 Lansering
Team Foundation Server 2013 LanseringSolidify
 

Ähnlich wie 2012 student track - vs2010 (20)

Session #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSession #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft Approach
 
Visual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellVisual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David Chappell
 
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxThe Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
 
SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)SharePoint Application Lifecycle Management (ALM)
SharePoint Application Lifecycle Management (ALM)
 
Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010
 
Tfs2012 introduction
Tfs2012 introductionTfs2012 introduction
Tfs2012 introduction
 
Vsts 2
Vsts 2Vsts 2
Vsts 2
 
Vsts Msdn Presentation2003
Vsts Msdn Presentation2003Vsts Msdn Presentation2003
Vsts Msdn Presentation2003
 
The first looks at VSTS2010
The first looks at VSTS2010The first looks at VSTS2010
The first looks at VSTS2010
 
Microsoft Stack Visual Studio 2010 Overview
Microsoft  Stack   Visual Studio 2010 OverviewMicrosoft  Stack   Visual Studio 2010 Overview
Microsoft Stack Visual Studio 2010 Overview
 
Aras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment Methodology
 
Mobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and ChellengesMobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and Chellenges
 
Tfs Overview
Tfs OverviewTfs Overview
Tfs Overview
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)
 
Planning & building scalable test infrastructure
Planning  & building scalable test infrastructurePlanning  & building scalable test infrastructure
Planning & building scalable test infrastructure
 
Ashwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAAshwini - Effective use of CI by QA
Ashwini - Effective use of CI by QA
 
Alm Specialist Toolkit Team System 2008 Deep Dive
Alm Specialist Toolkit   Team System 2008 Deep DiveAlm Specialist Toolkit   Team System 2008 Deep Dive
Alm Specialist Toolkit Team System 2008 Deep Dive
 
Visual Studio ALM
Visual Studio ALMVisual Studio ALM
Visual Studio ALM
 
Visual Studio 2010 Testing & Lab Management Tools
Visual Studio 2010 Testing & Lab Management ToolsVisual Studio 2010 Testing & Lab Management Tools
Visual Studio 2010 Testing & Lab Management Tools
 
Team Foundation Server 2013 Lansering
Team Foundation Server 2013 LanseringTeam Foundation Server 2013 Lansering
Team Foundation Server 2013 Lansering
 

Kürzlich hochgeladen

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
[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
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Kürzlich hochgeladen (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
[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
 
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...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

2012 student track - vs2010

  • 1. Visual Studio 2010 TimM@infosupport.com 13 februari 2012
  • 2. Info Support Groep Info Support Global Info Support BV Info Support NV Services (NL, Veenendaal) (BE, Mechelen) (BE, Echteld/Gent) Create solutions that innovate the way organizations do their business
  • 3. Info Support Opgericht in 1986 Focus op IT vakmanschap Alle jaren financieel gezond en autonoom gegroeid Actief in Nederland en België Microsoft Gold Certified Partner voor Custom Development Solutions Learning Solutions SOA and Business Process Hosting Solutions Business Intelligence Mobility Solutions Information Worker Solutions Advanced Infrastructure Solutions Business Solutions Competency (CRM) Business Partner IBM en NL-JUG Endeavour overview 3
  • 4. Contents Features of VS 2010 Team Foundation Server 2010 Unit Testing in VS 2010 Debugging in VS 2010 VS 11 (what’s next?) Extending VS 2010
  • 5. Intro Microsoft Visual Studio is a powerful IDE that ensures quality code throughout the entire application lifecycle, from design to deployment. Whether you’re developing applications for SharePoint, the web, Windows, Windows Phone, and beyond, Visual Studio is your ultimate all-in-one solution.
  • 6. Intro 2010
  • 7. Team Suite Visual Studio Visual Studio Visual Studio Team Test Team Team Developer Team Test Essentials Architect Static Code Analyzer Load Testing Test Planning Process and Architecture Guidance UML Models Code Metrics Lab management Use Case Web Testing Sequence Dynamic Code Analyzer Activity Test Case Management Schema Compare Class Data Compare Functional Testing Component SP unit testing Win Forms Architecture Explorer Historical debugging WPF Web (IE/FF) Layer Diagram Test Impact analysis DGML models Collectors for: Code Coverage, Test impact, System Info, video, etc. Visual Studio Professional Edition Team Foundation Client (includes CAL) Visual Studio Version Control Reporting Test Management Web Access Team Foundation Work Item Tracking Project Site Project Management Team Build
  • 8.
  • 9. Demo Most used Features of VS 2010
  • 10. Most used Features of VS 2010 Solution <> Projects Code analysis Build <> Debug – Quality Multi languages – Metrics NuGet Packager Most used Windows – Server Explorer Application Types – Class view – Web (project/website) – Object Browser – Win (WPF, Forms) – Tasks list – Cloud – Bookmark window – Database – Command window – Modelling Architecture views
  • 11. Team Foundation Server 2010 Intro Demo Real life case
  • 12. Intro Developer Database Designer Professional Architect Tester Business Project Analyst Manager
  • 13. Intro Team Foundation Server Process Focused Version Control Process Templates Work Item Tracking Integrated SharePoint Check-in Build Automation Manage work Customizable Check-in Bugs, Tasks, Reporting Policies Continuous Requirements, Integration Shelving Stories, Risks, Decision etc. Scheduled Support Very Extensible Ad Hoc Track Project Progress
  • 14. Intro Client Interface Version Control Build Proxy Environment Visual MS Excel Command Line Studio Version Control Build Proxy Process Service MS Project Team Explorer TFS SDK Application Tier SQL Reporting Services Windows SharePoint Services Web Services SQL Server Version Data Work Items Team Build Control Warehouse Data Tier
  • 15. Intro Key concepts – Process templates – Workspaces – Changesets – Work Items
  • 16. Demo Create TFS project Working with Work Items Source control – Checkin/Checkout – History tracking/Diffing – Merging changes – Locking – Shelving – Checkin Policies – Labeling – Branching
  • 17. Real Life Case Current project
  • 18. Unit Testing in VS 2010 What is unit testing How to create a unit test in VS 2010 Demo: Test first approach Other features inside VS 2010 to help you unit testing
  • 19. What is unit testing? A unit test is an automated piece of code that invokes the method or class being tested and then checks some assumptions about the logical behavior of that method or class. A unit test is almost always written using a unit-testing framework. It can be written easily and runs quickly. It’s fully automated, trustworthy, readable, and maintainable.
  • 20. What is unit testing? Compile Static Code Analysis Integration Test System Test Acceptance Test Performance Test Robustness Test Some other Test Unit Test (Does not replace other tests, but makes them more effective)
  • 21. What is unit testing?
  • 22. Benefits of TDD Forces you to think about how you want to use your classes. Makes it impossible to write code you can not test. Automatically improves the quality of your design. – Test Driven Design
  • 23. Writing a Unit Test With MSTest Visual Studio has a specialized project type for unit tests named “Test Project”. We use the [TestClass] and [TestMethod] attributes to make our tests known to the MSTest framework. Many Assertion methods are part of the framework for your convenience.
  • 24. Demo: working test first The game consists of 10 frames as shown above. In each frame the player has two opportunities to knock down 10 pins. The score for the frame is the total number of pins knocked down, plus bonuses for strikes and spares. A spare is when the player knocks down all 10 pins in two tries. The bonus for that frame is the number of pins knocked down by the next roll. So in frame 3 above, the score is 10 (the total number knocked down) plus a bonus of 5 (the number of pins knocked down on the next roll.) A strike is when the player knocks down all 10 pins on his first try. The bonus for that frame is the value of the next two balls rolled. In the tenth frame a player who rolls a spare or strike is allowed to roll the extra balls to complete the frame. However no more than three balls can be rolled in tenth frame.
  • 25. A quick design session Game + roll(pins : int) Clearly we need the Game class. + score() : int
  • 26. A quick design session Game 10 Frame + roll(pins : int) + score() : int A game has 10 frames.
  • 27. A quick design session Game 10 Frame 1 ..2 Roll + roll(pins : int) - pins : int + score() : int A frame has 1 or two rolls.
  • 28. A quick design session Game 10 Frame 1 ..2 Roll + roll(pins : int) - pins : int + score() : int 1 Tenth Frame The tenth frame has two or three rolls. It is different from all the other frames.
  • 29. A quick design session Game 10 Frame 1 ..2 Roll + roll(pins : int) + score : int - pins : int + score() : int 1 The score function must include all the frames, and calculate all their scores. Tenth Frame
  • 30. A quick design session The score for a spare or a strike depends on the frame’s successor Next frame Game 10 Frame 1 ..2 Roll + roll(pins : int) + score : int - pins : int + score() : int 1 Tenth Frame
  • 31. Code Coverage Every unit of code that contains logic is important and should be tested – Simple properties do not contain logic – branching statements (if, switch case) and loop statements (while, for, foreach) are considered logic. Code coverage can help determine if every important unit of code is tested. A computer program can measure what source code is executed during test execution.
  • 32. Code Coverage Enable code coverage in the test settings file.
  • 33. Test Frameworks Test Frameworks make it easier to write fully automated, trustworthy, readable and maintainable tests. – JUnit (java) – NUnit (.Net port of JUnit) – MBUnit – MSTest (integrated in Visual Studio)
  • 34. Use Assertions in your Tests AreEqual(expected, actual, message) IsTrue(expression, message) IsFalse(expression, message) IsNull(variable, message) IsNotNull(variable, message) Lookup the Assert class on MSDN for more…
  • 35. Test Impact Analysis Test Impact Analysis shows you which tests need to be re-run after a code change has been made. Need to establish a baseline by running all tests once Impact Analysis is enabled. Any code changes after that will result in recommendations on the “Test Impact View” window. – Only meaningful code changes will result in recommendations. – Changes in comments or changes that are optimized away by the compiler (foo + 10 => foo + 5 + 5) are ignored.
  • 36. Debugging in VS 2010 Basics of debugging Breakpoint options – Conditions – Tracing options Change the debugging visualization – Attributes – Type Proxies Intellitrace
  • 37. Extending VS 2010 Project & Item templates Extending the editor Custom toolbar & menu commands Extend the editor
  • 38. Visual Studio 11 (what’s next) C#: Async/Await New features – Search (assemblies, solution explorer, quick launch, error window, ctrl-i window) – Project roundtripping between VS2010 (SP1) & 11

Hinweis der Redaktion

  1. CW:Edit.Replace, Edit.Find Controller /regex,Debug.EvaluateStatement 10 == 11, ?Nuget packager, install-package elmahDatabase projectSchema viewCompare schemaCompare dataArchitecturegenerate by methodSaturnus BSVerlofMngt dependenciesArchitecture windows explorer  create dgmlDependency matrix viewHtml, JS, CSS
  2. Debugging optionshttp://referencesource.microsoft.com/symbolsDisable just my code, enable ,net framework stepping, enable source serverRightclick on callstack
  3. Async/Await class Program { static void Main(string[] args) { Console.WriteLine(&quot;Starting...&quot;); var smsohanDotCom = GetSmSohanDotCom();Console.WriteLine(&quot;Passed the get line, status {0}&quot;, smsohanDotCom.IsCompleted); Console.WriteLine(smsohanDotCom.Result.Length);Console.WriteLine(&quot;Printed the length, status {0}&quot;, smsohanDotCom.IsCompleted); Console.ReadLine(); } private async static Task&lt;String&gt; GetSmSohanDotCom() { Console.WriteLine(&quot;Before Waiting...&quot;);var data = await new WebClient().DownloadStringTaskAsync(new Uri(&quot;http://smsohan.com&quot;)); Console.WriteLine(&quot;Waiting...&quot;); return data; } }