Делаем code-background-color persistance в Visual Studio 2010
Сегодня утром пришло письмо с connect.microsoft.com, куда я запостил баг о том, что VS2010 не умеет сохранять настройку цвета фона. И вот что, данный баг пофиксен:
Цитирую:
“For now, there is an extension written by a member of the VS Editor team as a patch that will allow custom background colors to persist. You can find it in VS by going to Tools->Extension Manager and searching for the "BackgroundPatchExtension," or download it from a web browser at this link: http://visualstudiogallery.msdn.microsoft.com/en-us/d53e0db3-6c41-4cf5-8ca1-339aeef1ac30. Once you install it, just make sure it is enabled in the Extension Manager, and your background color should be applied correctly.”
Надеюсь для кого-нибудь это будет полезным.
На моём HP Mini запустилась Visual Studio 2010
Перед моей поездкой в Индию я купил нетбук HP Mini 2140. Это прекрасная вещь. Он весит всего 1,8 кг. Поддерживает максимальное разрешение 1024 x 576 (нормальный по ширине но укороченный по высоте). Он обладает клавиатурой почти нормального размера. Моей любимой особенностью является то, что он может работать порядка 8 часов – что довольно таки долго.
Он поставляется с предустановленной Windows XP. Но я скачал и установил на него Windows 7RC. В мини нет DVD или компакт-дисков. Я скопировал образ Windows 7 на USB-флешку с помощью Daemon Tools. И установил Windows 7 с USB-флешки.
Далее я установил Windows Live Sync (так же известный как foldershare). Windows Live Sync синхронизирует файлы из папки My Documents\Everywhere между моим лаптопом, десктопом и нетбуком. Я могу изменять документы на моём нетбуке в автобусе Microsoft двигаясь на работу, позже они автоматически синхронизируются с компьютером на моём рабочем месте.
И наконец, я поставил на свой нетбук Visual Studio 2010. Я взял послений билд. Скорее всего мой нетбук не подходит даже под минимальную требуемую конфигурацию, однако Visual Studio 2010 работает прекрасно.
Я не уверен, что при работе Visual Studio на нетбуке процессор Atom моего HP Mini, выжимает из нетбука всё. И, определенно, не стоит запускать несколько приложений при работе Visual Studio. Однако данный пример показывает, что можно довольно-таки продуктивно потратить время, проведенное в самолёте или автобусе, за разработкой.
Во время установки VS2010 был даже такой момент, когда мне показалось, что она закончится неудачей, т.к. инсталлятор сообщил о том, что мой нетбук не подходит под минимальные требования разрешений (высота оказалась на 3 пикселя меньше требуемой), однако, я проигнорировал предупреждение, и установка успешно продолжилась.
От меня
Ну что же, радует тот факт, что Visual Studio 2010 запустилась на нетбуке, с нетерпением жду Пн, 18 мая, чтобы слить beta 1.
Данная статья является переводом:
http://stephenwalther.com/blog/archive/2009/05/14/my-hp-mini-runs-visual-studio-2010.aspx
Рассуждения о производительности объектной модели SharePoint
Введение
Основными сущностями, с которыми приходится работать в рамках объектной модели SharePoint являются списки (SPList). Поэтому, считаю, что необходимо, в очередной раз, сделать акцент на способах работы с ними. Поэтому, если вас беспокоят такие вопросы, как:
- Получение количества строк в списке
- Получение значений записей в списках
- Использование запросов (SPQuery) и представлений (SPView)
- Пейджинг (постраничное разбиение) (довольно-таки не тривиальная реализация, поверьте)
- Обновление большого числа записей
- Обнаружение “медленных” списков
прошу прочесть, внимательно, данный текст:
SPVisualDev – инструмент Sharepoint разработчика
Введение
Я, как разработчик под платформу Sharepoint, постоянно сталкиваюсь с такими задачами, как создание большого количества однообразного XML-кода (к примеру для описания Feature, WePart, Content Type, List Template и т.д.) что не совсем удобно. Для облегчения выполнения этих задач есть несколько инструментов:
- один из них это Visual Studio Extensions for SharePoint (VSeWSS), я так и не смог привыкнуть к работе сним, в связи с непрозрачностью генерируемых на выходе решений, что значительно уменьшало гибкость разрабатываемых решений
- следующий инструмент STSDev – фактически это набор шаблонов для проектов в Visual Studio, является внешней утилитой, удобен в использовании, но полезен лишь на начальной стадии знакомства с платформой
- ну и последний, на котором хотелось бы заострить внимание, это SPVisualDev
Подробнее
Данный продукт представляет собой расширения для Visual Studio, из чего следует тип проектов и прочие удобства, о которых подробнее:
- Синхронизация в режиме реального времени локальной копии и папки 12
- Простой способ добавления новых фич в проект, а так же редактирование их свойств и элементов в графических формах (а не XML-файлах)
- Легкость в активации/деактивации фич из контекстного меню в проекте VS
- Автоматическая генерация и синхронизация обработчиков фич
- Набор стандартных проектов и элементов, включая веб-части, обработчики событий, шаблонные страницы и т.д.
- Отладка фич для страниц приложения с возможностью присоединения дебагера VS к просмотриваемой странице
- Интеграция с отличных инструментом для создания WSP-пакетов WSPBuilder
Так же приложение имеет исчерпывающее количество сопроводительной документации и даже Visual How-to.
Настоятельно рекомендую поставить и попробовать в деле и почувствовать насколько приятно работать с этим инструментом.
Однако это не панацея, а следовательно всё, что не предусмотрено инструментом, придется делать самостоятельно.
Новая возможность .NET Reflector™
Вступление
Какой же всё-таки отличный этот Codeplex, чего там только нет. Сегодня обнаружил очень полезный плагин для рефлектора – он генерирует проекты для Visual Studio из сборки, загруженной в рефлектор, думаю переоценить насколько это полезно очень сложно.
Демонстрация
Так выглядит этот плагин в рефлекторе
Установка
Для того, чтобы воспользоваться этим замечательным дополнением нужно:
- Скачать поселднюю версию плагина по адресу http://www.codeplex.com/FileGenReflector
- Извлечь содержимое архива в папку с рефлектором
- Добавить FileGenerator.dll в Add-In’ы
- Попробовать и удивиться, что это работает
Всем приятного кодинга!
Обзор языка Boo! – как средства организации DSL Вашего приложения
Одна из вещей, как известно, способная помочь вам стать лучше в качестве разработчика, заключается в изучении нового языка. Даже если Вы никогда не будете пользоваться этим языком в Вашей повседневной трудовой деятельности, он поможет Вам лучше понять языки, с которыми Вы работаете.
В последнее время меня так и тянет насесть на какой-нибудь новенький язык программирования, особенно что-нибудь на типа Ruby или Python, но в связи с моей привязанностью среде разработки (Visual Studio, неверно это не очень хорошо – зависеть от IDE
) и затруднительной ситуацией с разработкой на ней на динамических языках (надеюсь это временное затруднение) от них пока пришлось отказаться. В то же время меня интересуют такие области как метапрограммирование и реализация DSL (Domain-Specific Language == проблемно-ориентированный язык приложения), и в этой связи видится мне, что Boo является весьма интересным языком. К тому же Boo – язык CLR, что очень даже не плохо для изучения.
Поэтому я решил, что когда я узнаю Boo и когда почувствую уверенность в Boo, я попробую реализовать DSL и реализовать именно на Boo для своего ближайшего проекта.
Что такое Boo?
Boo представляет собой open-source объектно-ориентированный статически типизированный язык программирования для CLR с Python’о-подобным синтаксисом, язык увидел свет в 2004 году из-под рук Rodrigo B. de Oliveira. В настоящее время последняя версия 0.8.2, но даже если нет еще версии 1.0, это действительно очень стабильной и зрелый язык, который можно использовать на производстве.
Основные концепции в Boo:
- Дать компилятору сделать большую часть работы, для того чтобы помочь языку выглядеть более динамическим с автоматическим объявлением переменных, выводом и приведением типов.
- В то же время он предоставляет возможности для выполнения статической компиляции, проверку ошибок во время компиляции.
- Boo также предоставляет функциональную составляющую в том, что функции могут использоваться в качестве возвращаемого значения, как аргументы, хранимые в переменных, а так же как объекты.
- Boo имеет первоклассные генераторы, это конструкций, способные производить более одного значения при использовании итерации цикла (“return a for a in apples if a.IsRipe”).
- Boo также поддерживает утиную типизацию (Duck Typing), которая позволяет отказаться от обеспечения безопасности статических типов и принимать любой объект, который просто имеет соответствующие методы и свойства, определяемые во время выполнения.
- Boo также имеет расширения методов и свойств (extension methods and extension properties).
Одним из наиболее интересных функций Boo является расширяемость процесса компиляции, которая позволяет управлять компиляцией и изменять или добавлять функции. Можно добавить подпрограмм для проверки конвенции кода, генерирования отчётов или преобразовывания кода. То, что Вы сможете сделать в C# с помощью тулзы посткомпиляции такой, как PostSharp и только ограниченный набор действий. В Boo Вы могли бы например автоматически преобразовать класс в одноэкземплярный (pattern Singleton), просто добавив атрибут следующим образом:
[singleton]
class MySingleton: pass
PostSharp просто не смог бы сделать этого, свойство экземпляра было бы обработано поздно. Это действительно открывает множество возможностей и Вы ограничиваетесь только Вашим пониманием внутренней функциональности компилятора и набора его возможностей.
В Boo пробелы имеют важное значение как в python, но есть возможность включить режим “Whitespace Agnostic”, позволяющий оканчивать выражение с помощью “end”, который избавит Вас от возможных проблем с пробелами.
Что нужно для начала работы с Boo?
Главным образом если Вы хотите узнать Boo, достаточно иметь последнюю версию Boo . В папке bin, Вы найдете файл “Booish.exe”, являющийся интерпретатором командной строки Boo, которая позволяет проиграться с синтаксисом языка.![]()
Для разработки нам необходима IDE, и следовательно у нас два варианта.
Большинство Boo разработчиков работают с SharpDevelop , и если Вы скачаете последнюю версию, в ней будет Boo полностью готовый к использованию. Эта IDE имеет преимущество, с точки зрения создания DSL, так как в ней легче добавить функции автозавершения кода и подсветки синтаксиса, в Visual Studio же потребуются написать лексер и парсер; в SharpDevelop можно сделать это с помощью XML-файла.
Но с другой стороны Visual Studio является зрелой IDE, и с BooLangStudio вы получите Boo интегрированный в Visual Studio. Люди жалуются, что проект является нестабильным и это лишь альфа выпуск, так же я встретился в нём с проблемами уникода (UTF8), которые пока не смог разрешить, но у меня пока нет весомых замечаний.
В настоящее время я буду пользоваться Visual Studio в силу привычки, но я могу изменить свой взгляд при продолжении этой статьи.
При написании данного поста я руководствовался данной работой, можно даже сказать переводил, но перевод очень личный и свободный.
Продолжение следует…
Musthave: NArrange – органайзер кода для .NET
Отличная внешняя утилита (не интегрируется с VS), позволяющая довольно таки быстро и корректно (~90%
) привести код приложения к формализму, описаному в конфигурационном файле, что является полезным приобритением для разработчиков, работающих в команде.
Скачать. (на данный момент последняя версия 0.2.7)
