Visual Studio Toolbox Sergey Teplyakov Vlad Zubkis Mike Rybnikov

Содержание

Слайд 2

Agenda А зачем мне это? Базовые возможности & Редактирование Поиск &

Agenda

А зачем мне это?
Базовые возможности & Редактирование
Поиск & Навигация
Unit testing with

Resharper
Refactorings & Code Generation
Coding Style & Tools
Дополнительные возможности ReSharper
Слайд 3

А зачем мне это? Инструменты – средство усиления вашего таланта. Чем

А зачем мне это?

Инструменты – средство усиления вашего таланта. Чем они

лучше и чем лучше вы ими владеете, тем больше вы сможете сделать.
Энди Хант и Дейв Томас. Программист-прагматик. Путь от подмастерья к мастеру
Слайд 4

А зачем мне это? А что если владение инструментом сэкономит 10

А зачем мне это?

А что если владение инструментом сэкономит 10 минут

в день?
(1/6 ч * 40ч) * 52 = ???
~350ч/год
Слайд 5

Agenda А зачем мне это? Базовые возможности & Редактирование Поиск &

Agenda

А зачем мне это?
Базовые возможности & Редактирование
Поиск & Навигация
Unit testing with

Resharper
Refactorings & Code Generation
Coding Style & Tools
Дополнительные возможности ReSharper
Слайд 6

[VS] Сохранение проектов Tools -> Options -> General -> Save new projects when created

[VS] Сохранение проектов

Tools -> Options -> General -> Save new projects

when created
Слайд 7

[VS] Вертикальное редактирование Выделяем блок текста с помощью ALT + клавиши

[VS] Вертикальное редактирование

Выделяем блок текста с помощью ALT + клавиши курсора

(или + мышь):
Набираем “private” и меняем область видимости:
Слайд 8

[R#] Редактирование Import symbol completion (Shift + Alt + Space) Move

[R#] Редактирование

Import symbol completion (Shift + Alt + Space)
Move code

up, down, left, right (Ctrl + Shift + Alt + Up (Down, Left, Right))
Quick documentation (Ctrl + Shift + F1)
Duplicate a line or selection (Ctrl + D)
[VS] Remove current line to Clipboard (Ctrl + L)
Слайд 9

[R#] Редактирование Import symbol completion работает по всем типам, а не только по импортированным! Перемещение кода

[R#] Редактирование

Import symbol completion работает по всем типам, а не только

по импортированным!
Перемещение кода
Слайд 10

[R#] Quick documentation Генерируется на основе Xml-документации

[R#] Quick documentation

Генерируется на основе Xml-документации

Слайд 11

Agenda А зачем мне это? Базовые возможности & Редактирование Поиск &

Agenda

А зачем мне это?
Базовые возможности & Редактирование
Поиск & Навигация
Unit testing with

Resharper
Refactorings & Code Generation
Coding Style & Tools
Дополнительные возможности ReSharper
Слайд 12

Поиск и навигация Встроенные возможности Visual Studio Поиск файлов и типов в ReSharper Навигация в ReSharper

Поиск и навигация

Встроенные возможности Visual Studio
Поиск файлов и типов в ReSharper
Навигация

в ReSharper
Слайд 13

[VS] Поиск и навигация Find Symbol в Find in Files (Ctrl

[VS] Поиск и навигация

Find Symbol в Find in Files (Ctrl +

Shift + F)
Navigate To (Ctrl + ,)
Go To Definition (F12)
Find All References (Shift + F12)
Navigate backward/forward (!!) (Ctrl + “-”/Ctrl + Shift + “-”)
Слайд 14

[VS] Find Symbol в Find in Files

[VS] Find Symbol в Find in Files

Слайд 15

[VS] Navigate To Возможности Одновременный поиск типов/полей/файлов Поиск подстроки Fuzzy Search

[VS] Navigate To

Возможности
Одновременный поиск типов/полей/файлов
Поиск подстроки
Fuzzy Search (поиск по заглавным буквам)


Вбиваем TMC, найдем TextMessageCommand
Недостатки
Универсальность (ищет все)
Высокий уровень «шумов»
Подробнее: Scott Guthrie “Searching and Navigating Code in VS 2010)
Слайд 16

[VS] Navigate To

[VS] Navigate To

Слайд 17

Поиск и навигация Встроенные возможности Visual Studio Поиск файлов и типов в ReSharper Навигация в ReSharper

Поиск и навигация

Встроенные возможности Visual Studio
Поиск файлов и типов в ReSharper
Навигация

в ReSharper
Слайд 18

[R#] Поиск файлов и типов Go to Type (Ctrl + T)

[R#] Поиск файлов и типов

Go to Type (Ctrl + T)
Go to

File (Ctrl + Shift + T)
Go to File Member (Alt + \)
Go to Symbol (Shift + Alt + T)
Слайд 19

[R#] Go To XXX примеры Go To Type Go To File Go To Symbol

[R#] Go To XXX примеры

Go To Type
Go To File
Go To Symbol

Слайд 20

[R#] Go To File Member Универсальный способ доступа к конструктору: Alt + \ затем Enter

[R#] Go To File Member

Универсальный способ доступа к конструктору:
Alt +

\ затем Enter
Слайд 21

[R#] Go To XXX Возможности Возможность переключения из одного режима поиска

[R#] Go To XXX

Возможности
Возможность переключения из одного режима поиска в другой
Fuzzy

Search
Преимещства
Fuzzy Search работает не только с заглавными буквами
Специализация (как следствие, уменьшение «шумов»)
Слайд 22

Поиск и навигация Встроенные возможности Visual Studio Поиск файлов и типов в ReSharper Навигация в ReSharper

Поиск и навигация

Встроенные возможности Visual Studio
Поиск файлов и типов в ReSharper
Навигация

в ReSharper
Слайд 23

[R#] Навигация Recent Files (Ctrl + “,”) Navigate To (Alt +

[R#] Навигация

Recent Files (Ctrl + “,”)
Navigate To (Alt + `)
Go to

declaration (F12)
Go to Implementation (Ctrl + F12)
Go to Related Files (Ctrl + Alt + F7)
Locate File in Solution Explorer (Alt + Shift + L)
Go to next/previous member (Alt + Down/Up)
Слайд 24

[R#] Recent Files Список последних открытых файлов Поддерживается поиск и фильтрация

[R#] Recent Files

Список последних открытых файлов
Поддерживается поиск и фильтрация

Слайд 25

[R#] Navigate To (Alt + `) Одна горячая для всех нужд

[R#] Navigate To (Alt + `)

Одна горячая для всех нужд

Слайд 26

[R#] Go to Implementation Борьба со «слабосвязной» архитектурой

[R#] Go to Implementation

Борьба со «слабосвязной» архитектурой

Слайд 27

Demo Locate File in Solution Explorer (Alt + Shift + L)

Demo

Locate File in Solution Explorer (Alt + Shift + L)
Go to

next/previous member (Alt + Down/Up)
Слайд 28

Unit Testing with ReSharper

Unit Testing with ReSharper

Слайд 29

Agenda А зачем мне это? Базовые возможности & Редактирование Поиск &

Agenda

А зачем мне это?
Базовые возможности & Редактирование
Поиск & Навигация
Unit testing with

Resharper
Refactorings & Code Generation
Coding Style & Tools
Дополнительные возможности ReSharper
Слайд 30

Refactorings Rename Change Signature Extract Method Adjust Namespaces Extract Class from

Refactorings

Rename
Change Signature
Extract Method
Adjust Namespaces
Extract Class from Parameters
Move Type to Another File

or Namespace
Move Types into Matching Files
Слайд 31

[R#] Code Generation Generate Files (Alt + Ins в Solution Explorer)

[R#] Code Generation

Generate Files (Alt + Ins в Solution Explorer)
Create from

Usage (ок для TDD)
Implement Interface (Alt + Enter на объявлении класса)
Generate Type Members
Generate Constructor
Generate Missing Members
Generate Overriding Members
Equality Members
Слайд 32

[R#] Generate Files & Implement Interface Generate Files (Alt + Ins в Solution Explorer) Implement Interface

[R#] Generate Files & Implement Interface

Generate Files (Alt + Ins в

Solution Explorer)
Implement Interface
Слайд 33

[R#] Quick Fixes (Alt + Enter) Remove Unused Usings Move Type

[R#] Quick Fixes (Alt + Enter)

Remove Unused Usings
Move Type to Separate

File
Автоматическое добавление сборок
Слайд 34

[R#] Автоматическое добавление сборок Автоматически могут добавляться сборки: из текущего проекта

[R#] Автоматическое добавление сборок

Автоматически могут добавляться сборки:
из текущего проекта
некоторые известные сборки

(например, System.Xml, System.Xml.Linq)
Слайд 35

Agenda А зачем мне это? Базовые возможности & Редактирование Поиск &

Agenda

А зачем мне это?
Базовые возможности & Редактирование
Поиск & Навигация
Refactorings & Code

Generation
Unit testing with Resharper
Coding Style & Tools
Дополнительные возможности ReSharper
Слайд 36

Дополнительные возможности ReSharper Закладки (Bookmarks) Find Code Dependent on Module Stack

Дополнительные возможности ReSharper

Закладки (Bookmarks)
Find Code Dependent on Module
Stack Trace Explorer (Ctrl

+ E, T)
To-do Items (Ctrl + Alt + D)
Слайд 37

[R#] Закладки View bookmarks (Ctrl + `) Go to bookmark (Ctrl

[R#] Закладки

View bookmarks (Ctrl + `)
Go to bookmark (Ctrl + num)
Set/remove

bookmark (Ctrl + Shift + num)
Слайд 38

[R#] Find Code Dependent on Module Solution Explorer -> References ->

[R#] Find Code Dependent on Module

Solution Explorer -> References -> System.Xml.Linq

-> Find Code Dependent on Module
Слайд 39

[R#] Out of scope Templates Code analysis Search With Patterns многое другое...

[R#] Out of scope

Templates
Code analysis
Search With Patterns
многое другое...

Слайд 40

Дополнительные материалы 1. Coding Faster: Getting More Productive with Microsoft Visual

Дополнительные материалы

1. Coding Faster: Getting More Productive with Microsoft Visual Studio

by Zain Naboulsi, Sara Ford
Отличная и, видимо, лучшая книга о разных трюках в Visual Studio. Главным достоинством, как и главным недостатком, является ее объем (700+ страниц) и потенциально большой объем «шума» на единицу полезной информации. В любом случае Must See.
2. Channel 9. Visual Studio ToolBox
Набор видео материалов по разным «фишкам» как стандартной поставки Visual Studio, так и по некоторым сторонним «дополнениям», типа ReSharper, Code Rush, Productivity Power Tools и т.п.
Слайд 41

Дополнительные материалы 3. Лучшие посты Скота Гаттри (Лучшие посты Скота Гаттри

Дополнительные материалы

3. Лучшие посты Скота Гаттри (Лучшие посты Скота Гаттри (Scott

GuttrieЛучшие посты Скота Гаттри (Scott Guttrie) за 2010 год
Содержит весьма достойный набор ссылок, большая часть которых посвящена новым возможностям Visual Studio 2010
4. ReSharper Features
Да, я знаю, что никто не любит читать официальную☺ Но иногда в ней можно найти много чего полезного!
5. ReSharper Default Keymap
Visual Studio scheme pdf
ReSharper 2.x / IDEA scheme pdf
Распечатать в 3-х экземплярах и повесить перед рабочим столом!
Слайд 42

Вопросы?

Вопросы?