• О поддержке языковых фич C# в Visual Studio и в CodeRush for Roslyn

      C# постоянно развивается. Весной вышла уже седьмая версия. В этой статье будет обзор поддержки последних фич C# в CodeRush for Roslyn. Про C# 7.0 уже было несколько публикаций на хабре, поэтому основное внимание именно на то, как это поддерживается в CodeRush for Roslyn.


      Бонусом, в конце статьи, дадим рецепт для тех, кто по каким то причинам не хочет использовать новые языковые фичи.


      Читать дальше →
      • +17
      • 6.5k
      • 6
    • Возможности CodeRush for Roslyn для XAML

        Редактировать XAML-разметку в Visual Studio достаточно удобно благодаря таким фичам как IntelliSense, автозакрытие тэгов, сворачивание тэгов. Но при реальной работе с этими фичами приходит понимание, что XAML в чистой студии достаточно обособлен: например, плохо отслеживаются связи между кодом и разметкой. Это не позволяет чистой студии делать многие полезные вещи, которые умеет делать студия c CodeRush for Roslyn. Под катом подробности...



        Читать дальше →
      • CodeRush for Roslyn 16.1.6 — Official Release

          Сегодня выпущен первый релиз CodeRush for Roslyn (далее CRR).


          Теперь можно купить лицензию CRR. Есть 2 варианта покупки:

          • за 49$ включает бесплатные обновления в течение года, техническую поддержку через форумы.
          • за 249$ включает все что доступно в 49$ версии + CodeRush Classic с поддержкой старых версий Visual Studio и полноценную техническую поддержку.
          Через год можно либо продлить лицензию, либо продолжить работу без обновлений.
          Читать дальше →
        • CodeRush for Roslyn: Part 3 — обзор возможностей для изучения кода

            Каждый день в мире создаётся новый код. Много кода. Какая-то часть этого кода может быть полезна вам. Может снизить затраты на разработку или сэкономить ваше время. Но чтобы воспользоваться кодом, в нём необходимо разобраться, поэтому ленивые разработчики больше читают, чем пишут. Быстрое понимание как работает код – это ценный навык, который приобретается с годами практики. В этой статье мы расскажем как CodeRush for Roslyn (далее CRR) помогает быстрее читать код даже тем, кто еще не овладел в совершенстве этим навыком. Статья будет интересна хакерам и ленивым разработчикам.


            Читать дальше →
            • +28
            • 7.5k
            • 4
          • CodeRush for Roslyn: Part 2 — обзор фич для лучшего кода

              Мы выпускаем новый продукт — CodeRush for Roslyn (далее CRR).



              Первая часть была про Unit Test Runner, а в этой статье пойдет речь пойдет о фичах CRR, которые помогают улучшать качество кода:
              • Статический анализ (Static Analysis).
              • Проверка орфографии (Spell Checker).
              • Проверка именования (Naming Conventions).
              • Анализ покрытия кода тестами (Test Coverage).

              Все примеры в статье сделаны в Visual Studio 2015 на исходниках проекта OpenCover.
              Читать дальше →
              • +14
              • 6.6k
              • 4
            • CodeRush for Roslyn: Part 1 — полезные фичи для разработки через тестирование

                Мы выпускаем новый продукт — CodeRush for Roslyn (далее CRR). Уже более 10 лет у нас есть другой продукт, который называется просто CodeRush, или CodeRush Classic (сокращенно CRC). Главное отличие CRR от CRC в том, что Roslyn-версия использует парсинг и языковые сервисы встроенные в Visual Studio. CRR полностью написан с нуля, поэтому он быстрый, легкий и уже содержит всё необходимое для эффективной работы.

                В этой статье я расскажу о поддержке тестовых фреймворков в CRR. Почти во всех примерах будет использован проект github.com/dewe/Money. Этот проект использует NUnit Framework, но мы так же поддерживаем xUnit, MSpec и MS Test Framework. Все рассмотренные ниже практики работают одинаково вне зависимости от того, какой тестовый фреймворк вы используете.
                Читать дальше →
              • Monkey Do – необычный менеджер задач

                  Представляем вам самые красивые списки задач с уникальной функциональностью. Это не просто рекламный слоган, призванный привлечь внимание пользователя. Достаточно посмотреть на основной экран приложения — простой, аккуратный, ничего лишнего и при этом, все что нужно.



                  Для тех, кому не нравится читать а нравится смотреть – вот ссылочка на youtube:

                  Промо



                  Getting Started



                  Основная идея приложения — сохранить атмосферу записей на бумаге, то, чем мы пользуемся каждый день. Белые страницы, черные буквы, нарочито небрежное зачеркивание. По сути, пачка листов в нашем кармане.
                  Читать дальше →
                • Как выполнить анализ данных, написав всего одну строчку кода

                    В 14.2 версии мы полностью переписали механизм экспорта данных в форматы MS Excel. Теперь экспорт в Excel работает значительно быстрее и документ, который получается в результате, сохраняет группировку, фильтрацию, сортировку из грида, “живые” саммари на формулах, условное форматирование и много чего еще.

                    У пользователей появляются новые возможности детального анализа данных из грида в привычном им Excel. Менеджер, бухгалтер или финансовый аналитик теперь могут получить табличные данные из грида в Excel быстро и точно.
                    Много лет назад я начинал свою карьеру в IT с автоматизации предприятий, используя решения от 1C. У одного из крупных клиентов готовился годовой отчет и что-то не сходилось. Меня попросили написать несколько специальных запросов для локализации расхождений. Думаю, что бухгалтерия могла бы обойтись без приглашения специалиста и сэкономить время и деньги, если бы у них был хороший экспорт в Excel. Разумеется, у этого подхода есть ограничения. Например, объем анализируемых данных может быть слишком большим для Excel.

                    Благодаря новому экспорту у пользователей появляются новые возможности глубокого анализа и визуализации данных с использованием Excel. К сожалению, я не помню точно, что именно было не так, когда не сходился тот годовой отчет. Поэтому для демонстрации возможностей нового экспорта представим, что имеется приложение, в котором есть данные о продажах товаров магазина за определенный период в виде таблицы. Менеджер хочет узнать, какие товары приносят больший вклад в выручку, те выполнить ABC-анализ. Как вы догадались, в рассматриваемом приложении ABC-анализ не реализован, но зато есть кнопка, по нажатию которой зовется метод view.ExportToXls(..).
                    Читать дальше →
                    • +9
                    • 11.4k
                    • 8
                  • Применение XSLT преобразований для конвертации XAML между различными платформами

                      Платформы WPF и Silverlight используют язык разметки XAML для описания элементов пользовательского интерфейса, шаблонов и стилей. Если вы разрабатываете одновременно под разные XAML платформы, то естественно, возникает желание иметь общие файлы разметки для этих платформ.

                      Разметка в WPF и Silverlight очень схожа, но имеются досадные отличия, которые сильно осложняют ее шаринг. В нашей компании эта проблема была решена несколько лет назад в виде внутреннего инструмента, который называется WPF2SL.

                      WPF2SL слишком специфичен, чтобы быть полезным широкой публике, поэтому мы не планируем его публиковать. В этой статье я расскажу об особенностях XSLT преобразований применительно к разметке XAML и о некоторых сложностях и особенностях, с которыми мы столкнулись.
                      Читать дальше →
                    • Шаблоны в XtraLayoutControl 14.1.5

                        При создании пользовательских интерфейсов в WinForms приложениях разработчикам приходится делать неинтересную повторяющуюся работу. Страшно представить сколько человеко-часов во всем мире потрачено на фрагменты пользовательского интерфейса, показанные ниже. Сэкономленное время можно было бы провести с близкими людьми, например, на море…

                        Форма для редактирования адреса.


                        Login форма.

                        В этой статье мы рассмотрим существующие подходы к решению проблемы повторного использования элементов пользовательского интерфейса, предложим еще один и обсудим когда какой способ лучше. Статья предназначена для WinForms разработчиков, знакомых с нашей линейкой контролов.
                        Читать дальше →
                      • Применение утилиты PerfView в службе поддержки пользователей


                          Один из этапов обработки заявки от пользователя в нашей службе поддержки — воспроизведение проблемы. Сложности с воспроизведением возникают по разным причинам: пользователь не всегда может предоставить пример приложения, на котором проявляется некорректное поведение кода, или проблема может быть специфична для конкретного окружения. Сегодня используется огромное количество программных, аппаратных конфигураций и виртуальных сред, в которых работают программы, написанные с нашими компонентами. Ширина экрана в пикселах может различаться в пять раз (от 800 до 4к). А еще конфигурации могут отличаться другими параметрами: объемом памяти, количеством дисплеев, DPI, настройками безопасности, видеокартой и ее драйверами. Это разнообразие обеспечивает стабильный поток заявок от клиентов, специфичных для какой-то конфигурации. Например, проблема воспроизводится только на определенной версии Windows или только на определенных установках DPI или если у пользователя три монитора. Для решения этой проблемы уже несколько лет наша служба поддержки использует утилиту Microsoft PerfView. Если все остальные способы воспроизвести проблему исчерпаны, мы отдаем пользователю простую инструкцию, как запустить трассировку и прислать нам результирующий файл. Трассировочная информация помогает понять, что именно вызывает проблему.

                          В этой статье будут рассмотрены возможности применения PerfView в службе технической поддержки и ограничения этой утилиты.
                          Читать дальше →
                          • +32
                          • 18.4k
                          • 6