Рубрика «.net» - 61

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

Достоинства и недостатки Xamarin - 1Читать полностью »

В этой серии статей вы познакомитесь с основными принципами функционального программирования и поймёте, что значит «мыслить функционально» и как этот подход отличается от объектно-ориентированного или императивного программирования.

Функциональное мышление. Часть 1 - 1

Читать полностью »

Привет! Сегодня я выпустил новую версию ThinkingHome.Migrator — инструмента для версионной миграции схемы базы данных под платформу .NET Core.
ThinkingHome.Migrator — версионная миграция схемы базы данных на платформе .NET Core - 1

Пакеты опубликованы в NuGet, написана подробная документация. Вы уже можете пользоваться новеньким мигратором, а я расскажу, как он появился, почему у него номер версии 3.0.0 (хотя это первый релиз) и зачем он нужен, когда есть EF Migrations и FluentMigrator.

Читать полностью »

В некоторых жизненных ситуациях нужно действовать очень быстро. Иногда это условие невыполнимо: например, просто невозможно без огромного везения за очень короткое время найти человека с редкой группой крови, так еще и готового ей поделиться. Ребята создали продукт под названием DonorUA, который действительно помогает спасать жизни при помощи чат-бота. Подробнее под катом.

Продукт на .NET, помогающий спасать жизни - 1Читать полностью »

image Всем привет, мы уже писали про новую книгу Марка Прайса, теперь публикуем отрывок из книги «Разработка мобильных приложений с помощью Xamarin.Forms»

Мы создадим мобильное приложение для управления списком клиентов в базе данных Northwind, которое может быть запущено на iOS либо Android.

Установка Android SDK

Для создания приложений под Android вы должны установить хотя бы один комплект средств разработки Android SDK. Установка Visual Studio для Mac по умолчанию уже включает один комплект Android SDK, однако зачастую это старая версия для поддержки наибольшего количества устройств Android. Для использования новейших возможностей Xamarin.Forms нужно установить более новую версию Android SDK.
Читать полностью »

Мне сообщили, что на новых компьютерах некоторые регрессиионные тесты стали медленнее. Обычное дело, такое бывает. Неправильная конфигурация где-то в Windows или не самые оптимальные значения в BIOS. Но в этот раз нам никак не удавалось найти ту самую «сбитую» настройку. Поскольку изменение значительное: 9 против 19 секунд (на графике синий — это старое железо, а оранжевый — новое), то пришлось копать глубже.

Почему процессоры Skylake иногда работают в 2 раза медленнее - 1
Читать полностью »

В данной статье речь пойдет о том, как расширить процесс сборки проекта с помощью MSBuild.

Меню

Читать полностью »

Доступ к данным в многопользовательских приложениях - 1 Вопрос ограничения доступа к данным встает при разработке многопользовательских систем почти всегда. Основные сценарии следующие:

  1. ограничение доступа к данным для пользователей не прошедших аутентификацию
  2. ограничение доступа к данным для аутентифицированных, но не обладающих необходимыми привелегиями пользователей
  3. предотвращение несанкционированного доступа с помощью прямых обращений к API
  4. фильтрация данных в поисковых запросах и списковых элементах UI (таблицы, списки)
  5. предотвращение изменения данных, принадлежащих одному пользователю другими пользователями

Сценарии 1-3 хорошо описаны и обычно решаются с помощью встроенных средств фреймворков, например role-based или claim-based авторизации. А вот ситуации, когда авторизованный пользователь может по прямому url получить доступ к данным «соседа» или совершить действие в его аккаунте случаются сплошь и рядом. Происходит это чаще всего из-за того что программист забывает добавить необходимую проверку. Можно понадеяться на код-ревью, а можно предотвратить такие ситуации применив глобальные правила фильтрации данных. О них и пойдет речь в статье.
Читать полностью »

Это перевод первой части статьи. Статья была написана в 2008 году. Спустя 10 лет почти не потеряла актуальности.

Детерминированное освобождение ресурсов — необходимость

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

Никогда не создавай язык с исключениями, в котором нет детерминированного освобождения ресурсов.

Угадайте какой рекомендации не следует рантайм .NET, и как следствие все языки на его базе?

Читать полностью »

Каждая компания, которая посещает IT-конференции, старается приковать внимание гостей к своему стенду. Способов для этого много, здесь срабатывает принцип “Кто во что горазд” — от интересных задачек для программистов и символических призов до розыгрыша какого-то серьезного приза, или просто веселых конкурсов с настолками.

Само собой, мы в Альфе все это время двигались в том же направлении. Но в этом году решили немного поменять стратегию: собрали единую команду из HR-департамента и департамента IT (центры компетенций .NET и Javascript) и совместно выдвинулись на DotNext и HolyJS соответственно.

IT-бренд. О чем говорить с людьми на конференциях - 1

Что из этого вышло — под катом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js