SlideShare a Scribd company logo
1 of 16
Visual Studio 2015
Denis Voituron
Civil engineer (Mons)
Company founder
Developer: VB3, VB.Net, C#
.Net Software Architect (Trasys)
Blogger
• Code Like a Ninja
• Debugging Tips and Tricks
• Editor
• Intellisense
• Start Page
• Code Editor
• Windows
• Regions
• Comments
• Extensions
• Refactoring
• Snippet
• DebugVisualizer
• DebuggerVisualizer
• Exceptions Dialog Box (Ctrl-Alt-E)
int result = 0;
int zero = 0;
try
{
result = 10 / zero;
}
catch (DivideByZeroException)
{
}
• Conditional BreakPoint
• Display the Call Stack
• System.Diagnostics.Debugger
int numberOfElements = 10000;
for (int i = 0; i < numberOfElements; i++)
{
if (Debugger.IsAttached && i == numberOfElements - 2)
Debugger.Break();
}
• Debugger Attributes
• [DebuggerDisplay("{X}, {Y}, {Z}")]
• [DebuggerBrowsable(DebuggerBrowsableState.Never)]
• [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)]
• IntelliTrace & Diagnostic Tools
Visual Studio 2015
http://www.dvoituron.be
dvoituron@outlook.com
References
• Channel9: bit.ly/1Gykh6q
• Visualizer: bit.ly/1IVclOj
• Poster: bit.ly/1cepvrl

More Related Content

What's hot

What's hot (11)

Factorial
FactorialFactorial
Factorial
 
DevDay 2021 - Codez comme un ninja
DevDay 2021 - Codez comme un ninjaDevDay 2021 - Codez comme un ninja
DevDay 2021 - Codez comme un ninja
 
C++ Programming - 2nd Study
C++ Programming - 2nd StudyC++ Programming - 2nd Study
C++ Programming - 2nd Study
 
Intro to c programming
Intro to c programmingIntro to c programming
Intro to c programming
 
C++ Programming - 4th Study
C++ Programming - 4th StudyC++ Programming - 4th Study
C++ Programming - 4th Study
 
Assignement of programming & problem solving ass.(3)
Assignement of programming & problem solving ass.(3)Assignement of programming & problem solving ass.(3)
Assignement of programming & problem solving ass.(3)
 
Oopsprc1c
Oopsprc1cOopsprc1c
Oopsprc1c
 
Lightning Talk - Introduce to iOS 7
Lightning Talk - Introduce to iOS 7Lightning Talk - Introduce to iOS 7
Lightning Talk - Introduce to iOS 7
 
Logic development
Logic developmentLogic development
Logic development
 
11 1 포인터
11 1 포인터11 1 포인터
11 1 포인터
 
135
135135
135
 

Viewers also liked

Vs2010and Ne Tframework
Vs2010and Ne TframeworkVs2010and Ne Tframework
Vs2010and Ne TframeworkKulveerSingh
 
Visual Studio 2015 for Web Developers - Codestock 2015 slides
Visual Studio 2015 for Web Developers - Codestock 2015 slidesVisual Studio 2015 for Web Developers - Codestock 2015 slides
Visual Studio 2015 for Web Developers - Codestock 2015 slidesJeffrey T. Fritz
 
Introduction to Event Sourcing
Introduction to Event SourcingIntroduction to Event Sourcing
Introduction to Event SourcingJeffrey T. Fritz
 
Visual studio 2015 ide new features
Visual studio 2015 ide new featuresVisual studio 2015 ide new features
Visual studio 2015 ide new featuresTung Nguyen Thanh
 
Microsoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS OnlineMicrosoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS OnlineDenis Voituron
 
Présentation et bonnes pratiques du pattern MVVM - MIC Belgique
Présentation et bonnes pratiques du pattern MVVM - MIC BelgiquePrésentation et bonnes pratiques du pattern MVVM - MIC Belgique
Présentation et bonnes pratiques du pattern MVVM - MIC BelgiqueDenis Voituron
 
Presentation to Keep Britain Tidy Annual Conference, March 2011
Presentation to Keep Britain Tidy Annual Conference, March 2011Presentation to Keep Britain Tidy Annual Conference, March 2011
Presentation to Keep Britain Tidy Annual Conference, March 2011Daniel Ratchford
 
Visual Factory Planning and Scheduling
Visual Factory Planning and SchedulingVisual Factory Planning and Scheduling
Visual Factory Planning and SchedulingFulvio Lana
 
Work Place Safety
Work Place SafetyWork Place Safety
Work Place Safetyadullock
 
Visual Studio Tips and Tricks
Visual Studio Tips and TricksVisual Studio Tips and Tricks
Visual Studio Tips and TricksZain Naboulsi
 
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...Dillard University Library
 
Blackboard Version 7.1: Introduction to New Features and Tools
Blackboard Version 7.1: Introduction to New Features and ToolsBlackboard Version 7.1: Introduction to New Features and Tools
Blackboard Version 7.1: Introduction to New Features and ToolsJason Rhode
 
Visual Basic.Net & Ado.Net
Visual Basic.Net & Ado.NetVisual Basic.Net & Ado.Net
Visual Basic.Net & Ado.NetFaRid Adwa
 
Visual management white board standard structures from waterfall to agile v3
Visual management   white board  standard structures from waterfall to agile v3Visual management   white board  standard structures from waterfall to agile v3
Visual management white board standard structures from waterfall to agile v3Jean-François Nguyen
 

Viewers also liked (20)

Vs2010and Ne Tframework
Vs2010and Ne TframeworkVs2010and Ne Tframework
Vs2010and Ne Tframework
 
Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?
 
Visual Studio 2015 for Web Developers - Codestock 2015 slides
Visual Studio 2015 for Web Developers - Codestock 2015 slidesVisual Studio 2015 for Web Developers - Codestock 2015 slides
Visual Studio 2015 for Web Developers - Codestock 2015 slides
 
Introduction to Event Sourcing
Introduction to Event SourcingIntroduction to Event Sourcing
Introduction to Event Sourcing
 
Visual studio 2015 ide new features
Visual studio 2015 ide new featuresVisual studio 2015 ide new features
Visual studio 2015 ide new features
 
Microsoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS OnlineMicrosoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS Online
 
Introduction to c#
Introduction to c#Introduction to c#
Introduction to c#
 
Présentation et bonnes pratiques du pattern MVVM - MIC Belgique
Présentation et bonnes pratiques du pattern MVVM - MIC BelgiquePrésentation et bonnes pratiques du pattern MVVM - MIC Belgique
Présentation et bonnes pratiques du pattern MVVM - MIC Belgique
 
Presentation to Keep Britain Tidy Annual Conference, March 2011
Presentation to Keep Britain Tidy Annual Conference, March 2011Presentation to Keep Britain Tidy Annual Conference, March 2011
Presentation to Keep Britain Tidy Annual Conference, March 2011
 
Kaizen Sample
Kaizen SampleKaizen Sample
Kaizen Sample
 
Visual Factory Planning and Scheduling
Visual Factory Planning and SchedulingVisual Factory Planning and Scheduling
Visual Factory Planning and Scheduling
 
Work Place Safety
Work Place SafetyWork Place Safety
Work Place Safety
 
Visual Studio Tips and Tricks
Visual Studio Tips and TricksVisual Studio Tips and Tricks
Visual Studio Tips and Tricks
 
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...
ORLEANS PARISH SCHOOL BOARD PERFORMING & VISUAL ARTS SHOWCASE 2012 @ DILLARD ...
 
Visual Board
Visual BoardVisual Board
Visual Board
 
Waste Mapping: Lean Techniques Applied in a Healthcare Setting
Waste Mapping: Lean Techniques Applied in a Healthcare SettingWaste Mapping: Lean Techniques Applied in a Healthcare Setting
Waste Mapping: Lean Techniques Applied in a Healthcare Setting
 
Module 1 Workplace Safety
Module 1 Workplace SafetyModule 1 Workplace Safety
Module 1 Workplace Safety
 
Blackboard Version 7.1: Introduction to New Features and Tools
Blackboard Version 7.1: Introduction to New Features and ToolsBlackboard Version 7.1: Introduction to New Features and Tools
Blackboard Version 7.1: Introduction to New Features and Tools
 
Visual Basic.Net & Ado.Net
Visual Basic.Net & Ado.NetVisual Basic.Net & Ado.Net
Visual Basic.Net & Ado.Net
 
Visual management white board standard structures from waterfall to agile v3
Visual management   white board  standard structures from waterfall to agile v3Visual management   white board  standard structures from waterfall to agile v3
Visual management white board standard structures from waterfall to agile v3
 

Similar to Visual Studio 2015: Increase your Productivity

Program Verification / Automated Theorem Proving
Program Verification / Automated Theorem ProvingProgram Verification / Automated Theorem Proving
Program Verification / Automated Theorem Provinglokeshwer2
 
Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScriptJeremy Likness
 
Productivity Enhencement with Visual Studio
Productivity Enhencement with Visual StudioProductivity Enhencement with Visual Studio
Productivity Enhencement with Visual StudioAhasan Habib
 
Introduction to Programming Bots
Introduction to Programming BotsIntroduction to Programming Bots
Introduction to Programming BotsDmitri Nesteruk
 
.NET and C# Introduction
.NET and C# Introduction.NET and C# Introduction
.NET and C# IntroductionSiraj Memon
 
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...Sang Don Kim
 
Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chhom Karath
 
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2Jeremy Likness
 
.NET Code Coverage for Continuous Integration using TeamCity and dotCover
.NET Code Coverage for Continuous Integrationusing TeamCity and dotCover.NET Code Coverage for Continuous Integrationusing TeamCity and dotCover
.NET Code Coverage for Continuous Integration using TeamCity and dotCoverMaarten Balliauw
 
Introduction to Elixir
Introduction to ElixirIntroduction to Elixir
Introduction to Elixirbrien_wankel
 
Windows service best practice
Windows service best practiceWindows service best practice
Windows service best practiceYu GUAN
 
Rider - Taking ReSharper out of Process
Rider - Taking ReSharper out of ProcessRider - Taking ReSharper out of Process
Rider - Taking ReSharper out of Processcitizenmatt
 
C# What's next? (7.x and 8.0)
C# What's next? (7.x and 8.0)C# What's next? (7.x and 8.0)
C# What's next? (7.x and 8.0)Christian Nagel
 
The Challenge of Bringing FEZ to PlayStation Platforms
The Challenge of Bringing FEZ to PlayStation PlatformsThe Challenge of Bringing FEZ to PlayStation Platforms
The Challenge of Bringing FEZ to PlayStation PlatformsMiguel Angel Horna
 

Similar to Visual Studio 2015: Increase your Productivity (20)

Program Verification / Automated Theorem Proving
Program Verification / Automated Theorem ProvingProgram Verification / Automated Theorem Proving
Program Verification / Automated Theorem Proving
 
Introduction to TypeScript
Introduction to TypeScriptIntroduction to TypeScript
Introduction to TypeScript
 
IOS debugging
IOS debuggingIOS debugging
IOS debugging
 
Productivity Enhencement with Visual Studio
Productivity Enhencement with Visual StudioProductivity Enhencement with Visual Studio
Productivity Enhencement with Visual Studio
 
Introduction to Programming Bots
Introduction to Programming BotsIntroduction to Programming Bots
Introduction to Programming Bots
 
Oop presentation
Oop presentationOop presentation
Oop presentation
 
.NET and C# Introduction
.NET and C# Introduction.NET and C# Introduction
.NET and C# Introduction
 
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...
[Td 2015] what is new in visual c++ 2015 and future directions(ulzii luvsanba...
 
Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chapter i c#(console application and programming)
Chapter i c#(console application and programming)
 
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 1 of 2
 
.NET Code Coverage for Continuous Integration using TeamCity and dotCover
.NET Code Coverage for Continuous Integrationusing TeamCity and dotCover.NET Code Coverage for Continuous Integrationusing TeamCity and dotCover
.NET Code Coverage for Continuous Integration using TeamCity and dotCover
 
Node azure
Node azureNode azure
Node azure
 
Introduction to Elixir
Introduction to ElixirIntroduction to Elixir
Introduction to Elixir
 
Windows service best practice
Windows service best practiceWindows service best practice
Windows service best practice
 
Rider - Taking ReSharper out of Process
Rider - Taking ReSharper out of ProcessRider - Taking ReSharper out of Process
Rider - Taking ReSharper out of Process
 
C# What's next? (7.x and 8.0)
C# What's next? (7.x and 8.0)C# What's next? (7.x and 8.0)
C# What's next? (7.x and 8.0)
 
Coding Naked 2023
Coding Naked 2023Coding Naked 2023
Coding Naked 2023
 
CodeChecker summary 21062021
CodeChecker summary 21062021CodeChecker summary 21062021
CodeChecker summary 21062021
 
The Challenge of Bringing FEZ to PlayStation Platforms
The Challenge of Bringing FEZ to PlayStation PlatformsThe Challenge of Bringing FEZ to PlayStation Platforms
The Challenge of Bringing FEZ to PlayStation Platforms
 
Edward
EdwardEdward
Edward
 

More from Denis Voituron

Azure DevOps Tests Plan
Azure DevOps Tests PlanAzure DevOps Tests Plan
Azure DevOps Tests PlanDenis Voituron
 
.Net passé, présent et futur
.Net passé, présent et futur.Net passé, présent et futur
.Net passé, présent et futurDenis Voituron
 
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"Denis Voituron
 
Azure Pipelines - Et si on arrêtait de mettre en production avec des Disquettes
Azure Pipelines - Et si on arrêtait de mettre en production avec des DisquettesAzure Pipelines - Et si on arrêtait de mettre en production avec des Disquettes
Azure Pipelines - Et si on arrêtait de mettre en production avec des DisquettesDenis Voituron
 
GitHub et Microsoft Azure DevOps - Le mariage parfait
GitHub et Microsoft Azure DevOps - Le mariage parfaitGitHub et Microsoft Azure DevOps - Le mariage parfait
GitHub et Microsoft Azure DevOps - Le mariage parfaitDenis Voituron
 
Les méthodes agiles dans TFS
Les méthodes agiles dans TFSLes méthodes agiles dans TFS
Les méthodes agiles dans TFSDenis Voituron
 
Awareness Oniryx - Mai 2018
Awareness Oniryx - Mai 2018Awareness Oniryx - Mai 2018
Awareness Oniryx - Mai 2018Denis Voituron
 
A la découverte de TypeScript
A la découverte de TypeScriptA la découverte de TypeScript
A la découverte de TypeScriptDenis Voituron
 
Procédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsProcédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsDenis Voituron
 
Développer avec un Simple Object Mapping Toolkit pour SQL Server
Développer avec un Simple Object Mapping Toolkit pour SQL ServerDévelopper avec un Simple Object Mapping Toolkit pour SQL Server
Développer avec un Simple Object Mapping Toolkit pour SQL ServerDenis Voituron
 
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet AgileLes cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet AgileDenis Voituron
 
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping Toolkit
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping ToolkitDevFM #20 : SqlDatabaseCommand, un Simple Object Mapping Toolkit
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping ToolkitDenis Voituron
 
Presentation MIC SummerCamp 2015 WaterStock
Presentation MIC SummerCamp 2015 WaterStockPresentation MIC SummerCamp 2015 WaterStock
Presentation MIC SummerCamp 2015 WaterStockDenis Voituron
 
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...Denis Voituron
 

More from Denis Voituron (20)

Go lean, Go green
Go lean, Go greenGo lean, Go green
Go lean, Go green
 
Azure DevOps Tests Plan
Azure DevOps Tests PlanAzure DevOps Tests Plan
Azure DevOps Tests Plan
 
.Net passé, présent et futur
.Net passé, présent et futur.Net passé, présent et futur
.Net passé, présent et futur
 
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"
MIC QRS "JWT, la superstar pour sécuriser vos WebAPI"
 
Azure Pipelines - Et si on arrêtait de mettre en production avec des Disquettes
Azure Pipelines - Et si on arrêtait de mettre en production avec des DisquettesAzure Pipelines - Et si on arrêtait de mettre en production avec des Disquettes
Azure Pipelines - Et si on arrêtait de mettre en production avec des Disquettes
 
GitHub et Microsoft Azure DevOps - Le mariage parfait
GitHub et Microsoft Azure DevOps - Le mariage parfaitGitHub et Microsoft Azure DevOps - Le mariage parfait
GitHub et Microsoft Azure DevOps - Le mariage parfait
 
Azure for Dev
Azure for DevAzure for Dev
Azure for Dev
 
DevDay 2018 - Blazor
DevDay 2018 - BlazorDevDay 2018 - Blazor
DevDay 2018 - Blazor
 
Les méthodes agiles dans TFS
Les méthodes agiles dans TFSLes méthodes agiles dans TFS
Les méthodes agiles dans TFS
 
Awareness Oniryx - Mai 2018
Awareness Oniryx - Mai 2018Awareness Oniryx - Mai 2018
Awareness Oniryx - Mai 2018
 
A la découverte de TypeScript
A la découverte de TypeScriptA la découverte de TypeScript
A la découverte de TypeScript
 
Le futur de .NET
Le futur de .NETLe futur de .NET
Le futur de .NET
 
Procédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénientsProcédures CLR pour SQL Server : avantages et inconvénients
Procédures CLR pour SQL Server : avantages et inconvénients
 
Développer avec un Simple Object Mapping Toolkit pour SQL Server
Développer avec un Simple Object Mapping Toolkit pour SQL ServerDévelopper avec un Simple Object Mapping Toolkit pour SQL Server
Développer avec un Simple Object Mapping Toolkit pour SQL Server
 
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet AgileLes cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
 
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping Toolkit
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping ToolkitDevFM #20 : SqlDatabaseCommand, un Simple Object Mapping Toolkit
DevFM #20 : SqlDatabaseCommand, un Simple Object Mapping Toolkit
 
Presentation MIC SummerCamp 2015 WaterStock
Presentation MIC SummerCamp 2015 WaterStockPresentation MIC SummerCamp 2015 WaterStock
Presentation MIC SummerCamp 2015 WaterStock
 
Scrum Guide
Scrum GuideScrum Guide
Scrum Guide
 
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...
Visual Studio Online - Outils pour la conception de logiciels - JournéeAgil...
 
MVVM Lights
MVVM LightsMVVM Lights
MVVM Lights
 

Recently uploaded

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 

Recently uploaded (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 

Visual Studio 2015: Increase your Productivity

Editor's Notes

  1. Ouvrir le projet PacMan Editor Encoder dans la Quick Launch (Ctrl + Q) : « Output » Lancer une compilation et afficher les détails dans le panneau Output. Ouvrir le code Form1.cs, méthode LoadBlocks Appuyer sur [ALT] et sélectionner les blocs de code ‘Characters.Block’ Changer Characters.Block par Control. IntelliSense MNSE + [Tab] => MulticastNotSupportedException Ajouter la référence vers System.Configuration System.Configuration.CM + [ab] => System.Configuration.ConfigurationManager Start Page Afficher la page de démarrage : View / Start Page Punaiser le projet PacMan. Click-droit sur un ancien projet et le supprimer de la liste. Click-droit sur l’icône PowerPoint dans la TaskBar et punaiser le projet PacMan. Copier le fichier VisualStudioOnline-StartPage.xaml dans le dossier C:\Users\[User]\Documents\Visual Studio 2015\StartPages Ouvrir la fenêtre Tools / Options / Startup. Choisir la page xaml Afficher la StartPage via View / Start Page Pour personnaliser la page de démarrage, il faut installer « Visual Studio SDK ». Voir https://msdn.microsoft.com/en-us/library/vstudio/ff425532.aspx
  2. Vérifier le Keyboard Mapping Afficher les Options / Environment / Keyboard, et vérifier que le mapping est sur (Default). Navigate To – Recherche intelligente sur les classes et membres en affichant le type associé. Se positionner sur PacMan.cs / public class Pacman, et afficher Edit / Navigate To (Ctrl et ,). Resolve a unknown namespace Dans une méthode, écrire « AsyncOperation op = new AsyncOperation(); » Se positionner sur AsyncOperation et utiliser Ctrl et ; Choisir « using System.ComponentModel ». Go to definition – Atteindre la définition de la classe / méthode. Se positionner sur « private Dots[] ... » et appuyer sur F12. La classe Dots s’affiche. Go to definition – Afficher la définition de la classe / méthode. Se positionner sur « private Dots[] ... » et appuyer sur Alt-F12. La classe Dots s’affiche. Find all Ref. – Trouver toutes les références. Se positionner sur la classe « Dots.cs » et appuyer sur Shift F12. Toutes les utilisations de cette classe s’affichent. Code Lens Revenir sur la classe « Dots.cs » Cliquer sur « 47 references ». Highlighting – Mise en surbrillance. Se positionner dans la méthode PacMan.cs / private bool IsBlock(). Cliquer sur la variable « Point loc = new Point() » et voir les « loc » en surbrillance. Paste XML As Classes Ouvrir le fichier SampleData.xml, sélectionner tout le code XML. Dans Visual Studio, se placer en fin de fichier PacMan.cs et choisir Edit / Paste Special / Paste XML As Classes. Go Back – Go Forward Revenir sur la classe « Dots.cs » Cliquer sur « 47 references » et en choisir une de Form1 Revenir en arrière (Dots.cs) via Ctrl – Revenir en avant (Form1.cs) via Ctrl Shift – Zoom Agrandir le code via Ctrl + MouseWheel
  3. Architecture Sélectionner la commande Architecture / Generate Code Map for Solution. Naviger dans PacMan_Game.Characters pour afficher la carte des classes. Regions Montrer le fonctionnement des touches Ctrl+M, O / L / M / H
  4. Comments Selectionner un bloc de code et montrer le Ctrl+K, C / U pour mettre en commentaire et supprimer les commentaires. Extensions Afficher la fanêtre Tools / Extensions and Updates. Rechercher Web Essentials Chaque extension est indépendante et chargée uniquement lors du premier appel.
  5. Extract Interface Ouvrir le fichier Pacman.cs Appeler Ctrl+R, I et afficher les méthodes et propriétes proposées pour l’interface Ipacman. Sélectionner les membres Move, Speed, TotalPoints et Type et appuyer sur OK. Vérifier l’interface créée et l’implémentation dans la classe Pacman. Extract Method Ouvrir le code de la méthode Pacman_Pacman_Movement. Sélectionner le code « if (_Dots[i].Location.X >= …) { … } » Générer une nouvelle méthode via Ctrl+R, M Analyser le code de la nouvelle méthode. Rename variables, méthodes. Sélectionner la méthode Pacman_Pacman_Movement et la renommer en Pacman_Movement Encapsulate Field Créer une nouvelle variable « private string _maVariable = "abc"; » Sélectionner la ligne et appeler Ctrl+R, E et confirmer la création de la propriété. Analyser le code généré. Quick Actions Depuis VS2015, toutes ces commandes sont contextuellement accessibles via Ctrl+; Snippet Afficher la liste des Snippet, via Ctrl+K, X Choisir le snippet Visual C# / PropFull. Afficher la définition de ce snippet, via Code / Code Snippets Manager (Csharp). Montrer le dossier d’enregistrerement des Snippet. Télécharger l’extension Snippet Designer qui permet de créer des Snippets (modifier des fichiers .snippet)
  6. Ouvrir le fichier Pacman.cs. Ajouter un BreakPoint dans le constructeur (this.Width = ... ) Démarrer le code et cliquer sur le bouton « Start Game ». Punaiser les propriétés this.Size, this.Text, this.Width et this.Height. Poursuivre le code avec F10. Constater les changements : - Propriétés en rouge et nouvelles valeurs - Le temps d’exécution de this.Width = ... de 3ms. Arrêter le code et le re-démarrer. Les variables punaisées sont ré-affichées.
  7. Ajouter la classe suivante au projet. Créer une instance de VisualizerSample : var sample = new VisualizerSample(); Debugger.Break(); Créer un nouveau projet « Class Library » et copier le code du projet bit.ly/1IVclOj Compiler le projet et copier la DLL dans le dossier Debugger\Visualizers. Code d’exemple... public class VisualizerSample { public string Xml { get { return "<body><level1>MyData</level1></body>"; } } public string JSon { get { return "{\"Col1\": \"Hello\", \"Col1\": \"World\", }"; } } public DataTable Table { get { DataTable dt = new DataTable(); dt.Columns.Add("Name"); dt.Columns.Add("Salary"); DataRow row1 = dt.NewRow(); row1["Name"] = "Voituron"; row1["Salary"] = "500"; dt.Rows.Add(row1); return dt; } } public System.Drawing.Bitmap Image { get { const string imageUrl = "http://static.spiceworks.com/attachments/post/0012/7250/minion-clipboard.jpg"; try { WebClient client = new WebClient(); Stream stream = client.OpenRead(imageUrl); Bitmap bitmap = new Bitmap(stream); stream.Flush(); stream.Close(); return bitmap; } catch (Exception e) { return null; } } } }
  8. Ouvrir le fichier Form1.cs et ajouter le code Try Catch du slide dans le constructeur Form1. Exécuter le code… Aucun message ne s’affiche (du au Try Catch). Afficher la fenêtre Windows / Debug / Exception Settings. Rechercher et cocher l’exception DivideByZeroException. Exécuter le code… Une erreur s’enclenche.
  9. Conditional BreakPoint Ouvrir le fichier PacMan.cs Placer un BreakPoint dans la méthode IsBlock(), dans la boucle for, sur la ligne « if (_Blocks[i] == null) ». Right-Click sur le point rouge du BreakPoint et choisir Conditions. Mettre la condition « Hit Count = 3 ». Exécuter le code, démarrer le jeu et déplacer PacMan (W). Vérifier la variable « i ». Afficher la Call Stack Debug / Windows / Call Stack (Ctrl+A, C) Actions Ajouter une action « Continue Execution ». Et tracer le message « $FUNCTION – i = {i} – Blocks = {_Blocks.Length} ». Executer le code, appuyer sur « Start Game » et afficher la fenêtre Output (Debug / Windows / Output).
  10. Mettre un BreakPoint Conditionnel sur le code suivant. int numberOfElements = 1000; for (int i = 0; i < numberOfElements; i++) { bool ok = true; // Sets a BreakPoint Conditional « Is True: i == numberOfElements – 2) } Executer le code qui prend plusieurs secondes pour afficher le point d’arrêt. Si nécessaire, augmenter le nombre d’élément de 1000 à 5000 ou 10000. Debugger.IsAttached Remplacer la ligne « bool ok = true; » par ... if (Debugger.IsAttached && i == numberOfElements - 2) Debugger.Break(); Executer le code qui s’arrête immédiatement après avoir appuyé sur le bouton « Start Game ».
  11. Complexité dans l’affichage des objets Ouvrir le fichier Pacman.cs. Placer un point d’arrêt dans la boucle FOR de la méthode IsBlock(). Exécuter le code, démarrer un jeu (Start Game) et déplacer PacMan (W). Consulter le contenu de l’objet _Blocks... Il contient 19 « Characters.Blocks ». Créer une classe Player et PlayerPlace. Ajouter un nouveau fichier Player.cs dans le projet. Y écrire le code suivant. public class Player { private string _userName; private PlayerPlace _place; public string UserName { get { return _userName; } set { _userName = value; } } public PlayerPlace Place { get { return _place; } set { _place = value; } } } public class PlayerPlace { public string Name { get; set; } public string City { get; set; } public string Country { get; set; } } Dans le constructeur Pacman.cs ajouter la création de l’objet : Player player = new Player() { UserName = "dvoituron", Place = new PlayerPlace() { Name = "Voituron", City = "Mons", Country = "Belgium" } }; Debugger.Break(); Exécuter le code, démarrer un jeu (Start Game). Consulter le contenu de l’objet player. Simplifier le débuggage de l’objet. Ajouter les attributs... [DebuggerDisplay("{UserName} => {Place.Name}, {Place.Country}")] public class Player { [DebuggerBrowsable(DebuggerBrowsableState.Never)] private string _userName; [DebuggerBrowsable(DebuggerBrowsableState.Never)] private PlayerPlace _place; public string UserName { get { return _userName; } set { _userName = value; } } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public PlayerPlace Place { get { return _place; } set { _place = value; } } }
  12. Activer l’IntelliTrace via Options / Tools / Intellitrace Ajouter un Debugger.Break(); dans le constructeur de Pacman. Dans PacMan.cs, ajouter la commande suivante, dans la méthode Pacman_Pacman_Movement. Trace.WriteLine(String.Format("Movement to {0}.", location)); Démarrer le jeu, appuyer sur le bouton « Start Game » et jouer avec le clavier. Appuyer sur Pause et analyser : - Les données capturées : Break Events, Output Events, IntelliTrace Events. - Les temps et les durées - La Memory Usage : faire un Snapshot avant et après le Debugger.Break()