SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Tendances

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
IBM
 
Alm briefing keynote
Alm briefing keynoteAlm briefing keynote
Alm briefing keynote
Spiffy
 
Agile in Action - Act 2: Development
Agile in Action - Act 2: DevelopmentAgile in Action - Act 2: Development
Agile in Action - Act 2: Development
Spiffy
 
Visual studio developer tools v1.25c
Visual studio developer tools v1.25cVisual studio developer tools v1.25c
Visual studio developer tools v1.25c
BreinSoft54
 
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 Sen
Roopa 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 Context
Xavier Warzee
 
Agile in Action - Act 3: Testing
Agile in Action - Act 3: TestingAgile in Action - Act 3: Testing
Agile in Action - Act 3: Testing
Spiffy
 

Tendances (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.
 
Постоянное тестирование интеграции
Постоянное тестирование интеграцииПостоянное тестирование интеграции
Постоянное тестирование интеграции
 

En vedette

Mineral Lecture
Mineral  LectureMineral  Lecture
Mineral Lecture
ge1030
 
CQRS & Queue unlimited
CQRS & Queue unlimitedCQRS & Queue unlimited
CQRS & Queue unlimited
Tim Mahy
 
communityday 2012 - cqrs
communityday 2012 - cqrscommunityday 2012 - cqrs
communityday 2012 - cqrs
Tim Mahy
 
Tarea1 daniel sánchez
Tarea1 daniel sánchezTarea1 daniel sánchez
Tarea1 daniel sánchez
nielo19
 
14 февраля
14 февраля14 февраля
14 февраля
svetlanka
 
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
Shannon King
 

En vedette (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ó
 

Similaire à 2012 student track - vs2010

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
Darren Sim
 
Aras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment Methodology
Aras
 
Planning & building scalable test infrastructure
Planning  & building scalable test infrastructurePlanning  & building scalable test infrastructure
Planning & building scalable test infrastructure
Vijayan Reddy
 
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
Christian Thilmany
 

Similaire à 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
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
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...
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

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

Notes de l'éditeur

  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; } }