Привет! Сегодня расскажем вам о том, что пользователям нравится в Xamarin, нашем инструменте для кросс-платформенной разработки мобильных приложений. Кроме того, затронем и недостатки платформы. Кстати, под катом вы найдете много кода и показательные примеры, а не только текст с перечислением. Присоединяйтесь!
Рубрика «.net» - 61
Достоинства и недостатки Xamarin
2018-07-04 в 7:52, admin, рубрики: .net, android, C#, dotnet, iOS, microsoft, mobile, xamarin, Блог компании Microsoft, разработка, Разработка под androidФункциональное мышление. Часть 1
2018-07-03 в 7:10, admin, рубрики: .net, F#, fsharp, fsharplangru, microsoft, Блог компании Microsoft, математика, Программирование, функциональное программированиеВ этой серии статей вы познакомитесь с основными принципами функционального программирования и поймёте, что значит «мыслить функционально» и как этот подход отличается от объектно-ориентированного или императивного программирования.
ThinkingHome.Migrator — версионная миграция схемы базы данных на платформе .NET Core
2018-06-29 в 9:48, admin, рубрики: .net, C#, database migrations, Microsoft SQL Server, mssql, mysql, postgres, postgresql, sqlite, базы данныхПривет! Сегодня я выпустил новую версию ThinkingHome.Migrator — инструмента для версионной миграции схемы базы данных под платформу .NET Core.
Пакеты опубликованы в NuGet, написана подробная документация. Вы уже можете пользоваться новеньким мигратором, а я расскажу, как он появился, почему у него номер версии 3.0.0 (хотя это первый релиз) и зачем он нужен, когда есть EF Migrations и FluentMigrator.
Книга «C# 7 и .NET Core. Кросс-платформенная разработка для профессионалов. 3-е издание»
2018-06-26 в 10:03, admin, рубрики: .net, C#, Блог компании Издательский дом «Питер», книги, Профессиональная литератураВсем привет, мы уже писали про новую книгу Марка Прайса, теперь публикуем отрывок из книги «Разработка мобильных приложений с помощью Xamarin.Forms»
Мы создадим мобильное приложение для управления списком клиентов в базе данных Northwind, которое может быть запущено на iOS либо Android.
Установка Android SDK
Для создания приложений под Android вы должны установить хотя бы один комплект средств разработки Android SDK. Установка Visual Studio для Mac по умолчанию уже включает один комплект Android SDK, однако зачастую это старая версия для поддержки наибольшего количества устройств Android. Для использования новейших возможностей Xamarin.Forms нужно установить более новую версию Android SDK.
Читать полностью »
Почему процессоры Skylake иногда работают в 2 раза медленнее
2018-06-24 в 19:54, admin, рубрики: .net, .net core, jit, Skylake, windbg, Windows Performance Analyzer, WPA, отладка, ПроцессорыМне сообщили, что на новых компьютерах некоторые регрессиионные тесты стали медленнее. Обычное дело, такое бывает. Неправильная конфигурация где-то в Windows или не самые оптимальные значения в BIOS. Но в этот раз нам никак не удавалось найти ту самую «сбитую» настройку. Поскольку изменение значительное: 9 против 19 секунд (на графике синий — это старое железо, а оранжевый — новое), то пришлось копать глубже.
Расширение процесса сборки с помощью MSBuild
2018-06-23 в 12:34, admin, рубрики: .net, continuous integration, devops, msbuildВ данной статье речь пойдет о том, как расширить процесс сборки проекта с помощью MSBuild.
Меню
- Основные понятия — что такое target и task в MSBuild
- Жизненный цикл сборки MSBuild — какая последовательность вызова таргетов
- Подготовка окружения для примеров
- Таргеты в MSBuild — пример использования некоторых таргетов MSBuild
- Создание собственного таргета MSBuild
- Таски в MSBuild — пример использования некоторых тасков MSBuild
- Переменные и макросы в .csproj
- Ссылки
Доступ к данным в многопользовательских приложениях
2018-06-22 в 14:06, admin, рубрики: .net, C#, всё равно никто не читает теги, Проектирование и рефакторинг, Разработка веб-сайтовВопрос ограничения доступа к данным встает при разработке многопользовательских систем почти всегда. Основные сценарии следующие:
- ограничение доступа к данным для пользователей не прошедших аутентификацию
- ограничение доступа к данным для аутентифицированных, но не обладающих необходимыми привелегиями пользователей
- предотвращение несанкционированного доступа с помощью прямых обращений к API
- фильтрация данных в поисковых запросах и списковых элементах UI (таблицы, списки)
- предотвращение изменения данных, принадлежащих одному пользователю другими пользователями
Сценарии 1-3 хорошо описаны и обычно решаются с помощью встроенных средств фреймворков, например role-based или claim-based авторизации. А вот ситуации, когда авторизованный пользователь может по прямому url получить доступ к данным «соседа» или совершить действие в его аккаунте случаются сплошь и рядом. Происходит это чаще всего из-за того что программист забывает добавить необходимую проверку. Можно понадеяться на код-ревью, а можно предотвратить такие ситуации применив глобальные правила фильтрации данных. О них и пойдет речь в статье.
Читать полностью »
IDisposable — что ваша мама не говорила об освобождении ресурсов. Часть 1
2018-06-21 в 23:35, admin, рубрики: .net, gc, idisposableЭто перевод первой части статьи. Статья была написана в 2008 году. Спустя 10 лет почти не потеряла актуальности.
Детерминированное освобождение ресурсов — необходимость
В течение более чем 20-летнего опыта кодирования я иногда разрабатывал собственные языки для решения задач. Они варьировались от простых имеративных языков до специализрованных регулярных выражений для деревьев. При создании языков есть множество рекомендаций и некоторые простые правила не должны нарушаться. Одно из них:
Никогда не создавай язык с исключениями, в котором нет детерминированного освобождения ресурсов.
Угадайте какой рекомендации не следует рантайм .NET, и как следствие все языки на его базе?
IT-бренд. О чем говорить с людьми на конференциях
2018-06-21 в 7:00, admin, рубрики: .net, dotnext, holyjs, Альфа-Банк, Блог компании «Альфа-Банк», конференцииКаждая компания, которая посещает IT-конференции, старается приковать внимание гостей к своему стенду. Способов для этого много, здесь срабатывает принцип “Кто во что горазд” — от интересных задачек для программистов и символических призов до розыгрыша какого-то серьезного приза, или просто веселых конкурсов с настолками.
Само собой, мы в Альфе все это время двигались в том же направлении. Но в этом году решили немного поменять стратегию: собрали единую команду из HR-департамента и департамента IT (центры компетенций .NET и Javascript) и совместно выдвинулись на DotNext и HolyJS соответственно.
Что из этого вышло — под катом.
Читать полностью »