7 мар. 2007 г.

Весна разработчика 2007

Посетил очередной семинар Microsoft. Был на последних трех семинарах, этот мне показался наиболе полезным. Было рассказано про новые возможности IIS7:
  1. .NET обработчики теперь могут использоваться не только в .NET страницах, но и при обработке авторизации и на др. стадиях, где раньше работали только ISAPI-фильтры
  2. При установке ограниченного доступа к папке защищаются не только asp.NET файлы. но и статические элементы, например .jpeg картинки
  3. вместо общей метабазы настроек для каждого сайта все свои настройки IIS хранятся в корневой папке сайта в xml-файле, так что развертывание WEB-приложения с настройкой параметров IIS теперь выполняется простым копированием папки сайта на сервер.
  4. WEB-службы теперь могут работать не только по протоколу HTTP, но и по TCP.

Visual Studio "Orcas":

  1. Можно работать с разными версиями Framework (2.0, 3.0, 3.5), интерфейс и компоненты полностью подстраиваются под указанную версию Framework
  2. Поддержка LINQ... то, что показывали было впечатляюще: запрос пишется прямо в коде. причем запрос можно делать не только к БД или DataSet или даже XML-файлу, но и к обычному массиву! Причем все типизировано идля объектов, возхвращаемых из БД работает автодополнение!
  3. Поддержка XAML внутри студии
  4. в WEB-приложениях шикарно быстрое переключение между представлением кода и дизайнера, появление режима предпросмотра получаемой страницы с синхронизацией с кодом5. в ASP.NET: для каждого элемента можно не только настроить CSS стили, но и посмотреть какие стили применены, и какие именно параметры будут применены (допустим на <body> задан красный цвета, а на <p> - зеленый - будет показано, что есть и красный и зеленый, но цвет <body> недействителен, т.к. переопределен в <p>
"Visual studio 2005, OpenMP и Intel threading tools":на сайте Microsoft и в прогаммках была допущена опечатка: пропущена запятая между Visual studio 2005 и OpenMP - это две большие разницы. OpenMP - стандарт для полуавтоматического распараллеливания приложения. Грубо говоря ставишь #pragma распераллелить то или сё и оно распараллеливается, кроме того было расказано про vTune, Thead Checker, Thread Profiler для быстрого поиска нужного места распараллеливания и обнаружения возникших при распараллеливании ошибок/проблем. ASP.NET 2.0 и ASP.NET AJAX Все как обычно - все удобней, в сё круче, снова показывали обновление содержания без перезагрузки страницы, ничего принципиально нового. Цикл разработки безопасного кода Было рассказано о методологии разработки SDL (Security Development Livecircle), используемой в Microsoft и показаны графики снижения количества уязвимостей при применениии этой технологии. Еще узнал про фузз-тестирование это когда во все возможные точки входа (формы, открытые порты, файлы) подается мусор и мусор с правильными заголовочными файлами, находится куча ошибок.

3 мар. 2007 г.

Оператор ?? в C#

Думал, что уже совсем знаю базовый синтаксис C#, ан-нет... вчера раскопал интересную штуку: Оператор ?? (в книге описан как оператор поглощения null): оператор бинарный, возвращает левый операнд, если он не null и правый операнд, если левый null. Пример использования: int? a = 2; int b = a ?? -1; // b = 2; int? a = null; int b = a ?? -1; // b = -1 string str1 = "hello"; string str2 = str1 ?? ":-)"; // str2 = "hello" string str1 = null; string str2 = str1 ?? ":-)"; // str2 = ":-)" Если кто не знал - пользуйтесь на здоровье :)