Transcript
Page 1: Two Development Tools for .NET

Two Development Tools for .NET

That You Should Never Miss!

Shenhua GU

Jan 2008

Page 2: Two Development Tools for .NET

1

Page 3: Two Development Tools for .NET

JetBrains ReSharper

• Current Version 3.1 For VS2005

Page 4: Two Development Tools for .NET

What is ReSharper?

• A state-of-the-art add-in for VS2005

• Help improve your productivity

Page 5: Two Development Tools for .NET

Features

• Error highlighting and quick fixes• Code generation• Refactoring• Code formatting• Code templates• Navigation and search• Integrated unit-test runner• And more…

Page 6: Two Development Tools for .NET

Error Highlighting and Quick Fixes

Page 7: Two Development Tools for .NET

Code Generation

• Press Alt+Ins in a class

Page 8: Two Development Tools for .NET

Refactoring

• Move type

• Make method static/non-static

• Pull members up

• Push members down

• And more…

Page 9: Two Development Tools for .NET

Code Formatting

• ReSharper takes it to a whole new level– Format according to a predefined setting– Optimizing using directives– Remove redundant this directives– Arrange modifier keywords

Page 10: Two Development Tools for .NET

Code Templates

Page 11: Two Development Tools for .NET

Navigation and Search

• Type Hierarchy View

Page 12: Two Development Tools for .NET

Navigation and Search

• File Structure View

Page 13: Two Development Tools for .NET

Navigation and Search

• Go to Type, Ctrl + T

• Or Ctrl + Click

Page 14: Two Development Tools for .NET

Navigation and Search

• Find Usages

Page 15: Two Development Tools for .NET

Integrated Unit-test Runner

Page 16: Two Development Tools for .NET

Examples

• We’re gonna

– Create a business object

– Navigate around the classes

– Leveraging smart code analysis

Page 17: Two Development Tools for .NET

Ad

• Jedi Coding

• Build console application in 8 minutes.

Page 18: Two Development Tools for .NET

Future of ReSharper

• Version 4.0 EAP• Support VS2008

– Automatic properties– Object initializers– Collection initializers– Extension methods– Lambda expressions– LINQ– XAML files– …

Page 19: Two Development Tools for .NET

2

Page 20: Two Development Tools for .NET

Lutz Roeder's .NET Reflector

• Current Version 5.0

Page 21: Two Development Tools for .NET

What is .NET Reflector

• A class browser for .NET components

• C#, VB.NET and IL decompiler

Page 22: Two Development Tools for .NET

C# 3.0 Support

• Extension methods• Object initializers• LINQ query expressions• Collection initializers• Lambda expressions

Page 23: Two Development Tools for .NET

C# 3.0 and 2.0 support

• Enable via View, Options, Optimization: .NET 3.5

• C# 2.0: Anonymous methods and nullable types

Page 24: Two Development Tools for .NET

Code URL support• Navigate to code://mscorlib/System.Object via IE

• Ctrl+Alt+C to copy the URL for current item

• Add to HTML pages using <a href=“code://…”>

Page 25: Two Development Tools for .NET

Disassembler• Expand Methods and Expand Types feature

• Context-sensitive documentation view• Click on declaration jumps to item in the browser• Tab to cycle through links, Up/Down to scroll• Context-based automatic variable naming

Page 26: Two Development Tools for .NET

Analyzer• Add and analyze multiple items (DEL to remove)• “Exposed By” and “Instantiated By” search• “Assigned By” search for fields

Page 27: Two Development Tools for .NET

Search

• String or Constant search

• Exact matching of multiple words

Page 28: Two Development Tools for .NET

Assembly Lists

• Default lists for:– .NET Framework 3.5– .NET Framework 3.0– .NET Compact Framework 3.5– .NET Compact Framework 2.0– XNA Framework 1.0– DirectX for Managed Code– Mono

Page 29: Two Development Tools for .NET

Resource Viewer

• View all kinds of resources: js, html, bmp, png, cur…• Save byte arrays in .resources file to disk

Page 30: Two Development Tools for .NET

Examples

• Let's get our hands dirty• Mission 1

– What’s the data structure used by SortedList<T>?

• Mission 2– Investigate the life cycle of an ASP.NET

Page

• Mission 3– See the Javascript used by GridView

Page 31: Two Development Tools for .NET

Recommended