• Приглашаем на конференцию DotNext

      3 июня в Санкт-Петербурге состоится пятая по счету конференция DotNext для разработчиков на платформе .NET. О будущем платформы .NET рассказывают Ромуальд Здебский, руководитель направления Microsoft по играм в Центральной и Восточной Европе, который сделает на DotNext доклад на тему «Разработка игр на платформе Microsoft — технологический обзор», и технологический евангелист Microsoft Дмитрий Сошников, который выступит на DotNext с докладом «Сколько жизней у .NET: размышляем о судьбах любимой платформы, гибели Silverlight и тому подобном».



      Какими изначально были цели создания платформы .NET? Достигнуты ли они?


      Дмитрий Сошников: Появление .NET — это реакция на повышение сложности программных систем. Когда стало слишком трудно создавать серьезные приложения на C++, особенно с учетом существования различных вычислительных платформ, появилась цель радикально упростить процесс создания программного обеспечения, в том числе многоплатформенного. И в конце концов исследователи научились изолировать аппаратные сложности (а заодно и ряд трудоемких моментов, таких, как распределение памяти, многопоточность и т.д.) на уровне абстрактной виртуальной машины, а прикладному программисту давать возможность создавать код для этой машины. Так появились Java и .NET. Но основной целью языка Java была возможность запускать один и тот же байт-код на всех устройствах, в то время как платформа .NET гордилась многообразием поддерживаемых языков программирования.
      Надо сказать, что основные цели по сути были достигнуты уже по факту создания платформы. Теперь же мы продвинулись гораздо дальше. На основе .NET можно писать приложения под все основные мобильные платформы и под микроконтроллеры. В арсенале .NET-программиста — целый спектр языков от C# и F# до Python и Objective C. Код на базе .NET используется как на устройствах, так и в облаке. Мечта программиста сбылаcь — зная всего лишь один стек технологий, он может быть продуктивным, разрабатывая практически любой программный код.
      Читать дальше →
    • О приложениях UWP для разработчиков WPF


        Хотел бы закодировать разработчиков WPF от боязни чего-то нового, рассказав про отличия, которые ожидают их при разработке приложений под универсальную платформу Windows. Так что ставьте банки перед монитором, я начинаю давать установку.

        Какие-то изменения в языках программирования и платформах происходят постоянно. Представьте себе на минуту, что выйдет C# версии 10 и все. Это последняя версия. Представили? Я представил. И в моем представлении если это и случится когда-нибудь, то эта последняя версия языка будет регулярно обновляться.

        Были «чудесные» времена, когда у меня немного разбегались глаза от различий в коде (даже в коде XAML): WPF, Silverlight, Windows Phone, потом WinRT, а теперь еще и UWP. Сколько разработчиков никогда не путаются? Я думаю, что большинство разработчиков не держат все в памяти. Достаточно держать в памяти основные концепты работы. Когда дело касается кодирования, то используются вспомогательные инструменты вроде IntelliSense, Blend и т.п. Никуда не уйти и от использования сниппетов.
        Читать дальше →
        • +11
        • 24,7k
        • 2
      • Правильное оперирование XAML-ресурсами

        Привет, Хабр.

        Около недели назад прочитал статью «Как получить удобный доступ к XAML-ресурсам из Code-Behind» и был неслабо удивлен. Заранее прошу прощения у EBCEu4, автора вышеупомянутой статьи, потому что собираюсь немного раскритиковать изложенный им подход.

        Хочу заметить, что статья содержит только рекомендации по правильному использованию ресурсов и не претендует на полноту изложения. Моя статья будет состоять из трёх пунктов. В первом я приведу пример ситуации, когда вышеописанный подход оправдан, во втором — попробовать обьяснить, почему же неправильно тянуть ресурсы из XAML разметки в code-behind, в третьей — попробую дать пример кода, который помогает избежать подобных действий.
        Милости прошу под кат!
      • Как получить удобный доступ к XAML-ресурсам из Code-Behind



        Хочу рассказать, как максимально удобно работать с XAML-ресурсами из Code-Behind. В этой статье мы разберемся, как работают пространства имен XAML, узнаем о XmlnsDefinitionAttribute, используем Т4-шаблоны и сгенерируем статичный класс для доступа к XAML-ресурсам.
        Читать дальше →
      • Обновляем Windows Phone Silverlight 8.0 приложение до Windows Phone Silverlight 8.1


          Мы продолжаем цикл статей, посвященных обновлению Windows Phone 8.0 приложений до версии 8.1. Сегодня мы рассмотрим новые возможности Silverlight 8.1 и процесс обновления приложений Windows Phone Silverlight 8.0 до версии 8.1.
          Читать дальше →
          • +13
          • 7,4k
          • 7
        • WCF RIA Services. Внедряем паттерн Model-View-ViewModel (MVVM). Часть 4

          WCF RIA Services. Начало. Часть 1
          WCF RIA Services. Получение данных. Часть 2
          WCF RIA Services. Обновление данных. Часть 3
          WCF RIA Services. Внедряем паттерн Model-View-ViewModel (MVVM). Часть 4

          Вступление


          Паттерн Model-View-ViewModel (MVVM) используется для создания слабо связанных приложений на Silverlight и WPF. В данном курсе мы не будем рассматривать основы данного подхода, а просто узнаем как внедрить его в наш проект, который мы создавали на протяжении 3 уроков. Если не внедряться в дебри, то MVVM – это одна из альтернатив, которая является логическим развитием таких паттернов программирования как MVC и MVP и полностью поддерживает привязку данных, команды, и все возможности, которые предоставляют Silverlight и WPF. Модель вида (ViewModel) отвечает за предоставление виду (View) всех необходимых ресурсов. То есть предоставляются все необходимые свойства для того, что б вид мог легко осуществлять привязку данных, создание команд, а в модели вида тем временем присутствует и работает вся необходимая приложению логика. Структурно, устанавливаемый «DataContext» равен экземпляру модели вида, с которым происходит связывание данных (binding).

          Основным преимуществом такого подхода является практически полная независимость вида от модели вида, что грубо можно выразить, как независимую разработку каждой части программистом и дизайнером. Так же, приятным следствием такого разделения является достаточная легкость создания модульных текстов (unit test), так как логика абсолютно не связана с UI (интерфейсом пользователя).

          И по традиции, вступительной точкой в наш урок является проект, созданный на предыдущем этапе нашего обучения.

          Шаг 1: Создание модели вида


          Читать дальше →
        • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

          Подробнее
          Реклама
        • WCF RIA Services. Обновление данных. Часть 3

          WCF RIA Services. Начало. Часть 1
          WCF RIA Services. Получение данных. Часть 2
          WCF RIA Services. Обновление данных. Часть 3
          WCF RIA Services. Внедряем паттерн Model-View-ViewModel (MVVM). Часть 4

          В предыдущем уроке мы более подробно ознакомились с возможностями получения данных в WCF RIA Services. Сегодня поговорим о процессе обновления данных, который является более сложным.

          Вступительной частью является проект, созданный во втором уроке.

          IQueryable<T> и магия деревьев выражений

          Читать дальше →
        • WCF RIA Services. Получение данных. Часть 2

          WCF RIA Services. Начало. Часть 1
          WCF RIA Services. Получение данных. Часть 2
          WCF RIA Services. Обновление данных. Часть 3
          WCF RIA Services. Внедряем паттерн Model-View-ViewModel (MVVM). Часть 4

          Общие сведения


          В первой части мы ознакомились, что за зверь такой WCF RIA Services, и создали приложение, которое можно коротко назвать, как «Hello world». Все было очень просто, красиво, а так же «drag and drop». Однако для создания настоящих, больших и функциональных приложений нужно еще много чего выучить, например какие возможности доступны в клиентской части, и как их использовать. В этом уроке мы копнем немножко глубже в области получения данных на клиентской стороне. Так же Вы узнаете о конвенциях, которые используются для методов, получающих данные, определенные в серверной части, как их настраивать, используя атрибуты. Расскажу о некоторых программных реализациях, которые можно использовать для получения данных на стороне клиента и как использовать данные, которые используют отличные от Entity Framework источники.
          Читать дальше →
          • +6
          • 11,5k
          • 4
        • WCF RIA Services. Начало. Часть 1

          WCF RIA Services. Начало. Часть 1
          WCF RIA Services. Получение данных. Часть 2
          WCF RIA Services. Обновление данных. Часть 3
          WCF RIA Services. Внедряем паттерн Model-View-ViewModel (MVVM). Часть 4

          От переводчика


          В данном цикле переводов присутствует хорошая доля, добавленная лично мной, так как в оригинале используется устаревшая VS, а так же пропущены некоторые, на мой взгляд важные моменты, без которых усвоение материала сильно усложняется. Поехали.

          Осторожно. Много картинок!

          Вступление


          Представьте, что Вам необходимо создать серьезное бизнес приложение, клиент которого оперирует множеством данных, распределенных в различных местах, и которые должны каким-то образом собираться. Для реализации такой задачи Вам будет необходимо изучить ряд новых технологий и подходов, написать кучу кода, отладка. А что в итоге? Если грубо — то просто пересылка данных с серверной части приложения в клиентскую и обратно. Ну и работа с БД. А на что бы Вы хотели сфокусироваться в первую очередь? На реализации пересылки данных? Или на логике обработки, манипулирования, представления этих данных? Думаю, Вы выберете второе.

          WCF RIA Services предлагает автоматизацию пересылки данных и создания многоуровневых приложения на основе Silverlight, фокусируя внимание разработчика именно на логике работы. Вы пишите только один раз экземпляр серверного кода, а он автоматически переносится и становится доступным на клиентской стороне, без необходимости ручного дублирования или применения других ухищрений со стороны разработчика. Так же на клиенте остаются доступны все серверные возможности, такие как валидация, права доступа и многие др.

          В этом цикле статей Вы ознакомитесь с основными возможностями WCF RIA Services, увидите на практике какие преимущества предоставляет использование данного подхода. На диаграме ниже показано, за что именно отвечает WCF RIA Services:
          image
          Читать дальше →
          • +2
          • 35,1k
          • 6
        • Как мы приложение с Silverlight на Windows 8 портировали

          • Перевод
          Недавно мы портировали на Windows 8 относительно объемное бизнес приложение — редактор диаграмм, флоу чартов и другой деловой графики. Изначально этот редактор был написан под платформу Silverlight, но мы его переписали под Windows Runtime и успешно разместились с ним в Windows 8 Store. К сожалению, стандартных контролов нам очень не хватало, поэтому попутно пришлось ещё написать свою библиотеку контролов. И теперь мы готовы поделиться опытом. В этой статье собран ряд нюансов разработки приложений под Windows 8 — от проектирования интерфейса пользователя до технических деталей по работе с DirectX.

          Читать дальше →
        Самое читаемое