(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Что такое Visual Studio.NET snippets? Часть 1

Источник: habrahabr

Я решил разбить статью на две части: вступительную часть и часть реализации. Основная причина в размере текста, который включает форматированный текст примеров. С меньшими объемами текста работать легче, да и читать такой текст удобнее. Кто знаком со сниппетами может сразу переходить ко второй части статьи, где рассказывается как сделать свой сниппет и использовать его в студии.

Что такое snippet"ы в Visual Studio.NET? Как показал опрос, более трети голосовавших не знают что это. Вполне возможно, впрочем, что они никогда не работали в этой среде и никогда не будут этого делать. Эта статья для тех двадцати процентов, кто заинтересовался и для всех остальных, кто хочет узнать, что такое snippet, как его создать и использовать.

На самом деле все просто: snippet - это механизм, позволяющий быстро добавить в код какой-то шаблонный текст, например определение свойства, выделение региона, определение класса. Но в отличие от примитивного шортката, который бы просто втыкал текстовую заготовку snippet позволяет определять код удобнее. Snippet имеет возможность определить однотипные поля в тексте, которые заполнятся указанным значением по завершении вставки snippet"а (далее "сниппета"). Приведу пример:


    [global::System.Serializable]
    public class MyException : Exception
    {
      public MyException() { }
      public MyException(string message) : base(message) { }
      public MyException(string message, Exception inner) : base(message, inner) { }
      protected MyException(
       System.Runtime.Serialization.SerializationInfo info,
       System.Runtime.Serialization.StreamingContext context)
        : base(info, context) { }
    }

Здесь приведен пример стандартного snippet'a "exception", который добавляет в код шаблон для определения класса пользовательского исключения. На примере выделены зеленым цветом области редактируемого текста, переход между ними происходит по нажатию tab. При изменении каждой из них, изменятся соответствующие значения текста в зависимых местах. К примеру, назови мы класс NewException и все конструкторы моментально переименуются. Кроме того, в некоторых случаях сниппет автоматически добавляет в код логику подходящую по смыслу. Например, сниппет для switch и при указании в поле ввода экземпляра типа enum автоматически сформирует case для каждого элемента enum и добавит default:


public enum USER_TYPE { UNKNOWN = 0, REGISTERED, NCF_CLERK, CLERK };
...
      switch (p_uType)
      {
        case CommonUtil.USER_TYPE.UNKNOWN:
          break;
        case CommonUtil.USER_TYPE.REGISTERED:
          break;
        case CommonUtil.USER_TYPE.NCF_CLERK:
          break;
        case CommonUtil.USER_TYPE.CLERK:
          break;
        default:
          break;
      }

Как работать со сниппетами? Для этого есть два пути: набрать известное имя сниппета и нажать tab или же нажать шорткат ctrl+k+x для вывода списка всех зарегистрированных сниппетов. Первый вариант удобнее: можно набрать, к примеру "prop", нажать tab и мгновенно получить шаблонное определение свойства класса.
Вполне естественно, что такой механизм чрезвычайно полезен. Он экономит время, позволяя определять заранее отформатированный код с возможностью удобной кастомизации. Возможно, это никак не повлияет на работу вашей программы, но добавит вам некоторую порцию удовольствия от процесса кодирования. Еще больше пользы можно получить делая свои сниппеты. Об этом во второй части статьи.

PS: "в статье нет ошибок!" - к сожалению утверждать этого невозможно, но я буду рад, если вы обратите мое внимание на найденную вами ошибку.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 22.03.2010 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Office 365 Профессиональный Плюс. Подписка на 1 рабочее место на 1 год
Microsoft 365 Business Basic (corporate)
Microsoft Windows Professional 10, Электронный ключ
Microsoft Office 365 Бизнес. Подписка на 1 рабочее место на 1 год
Microsoft 365 Apps for business (corporate)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Компьютерный дизайн - Все графические редакторы
Adobe Photoshop: алхимия дизайна
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100