Как стать автором
Обновить
0

Xamarin *

Инструменты для кросс-платформенной разработки

Сначала показывать
Порог рейтинга
Уровень сложности

Интервью с Мигелем де Икасой: Microsoft, Mono, смартфоны и многое другое

Время на прочтение26 мин
Количество просмотров5.5K

В эфире конференции DotNext 2020 Moscow выступил Мигель де Икаса, один из известнейших разработчиков, положивший начало множеству проектов, которыми многие пользуются по сей день. Мы расспросили его о некоторых вещах, включая взаимоотношения с Microsoft, зарождение Mono, мобильные устройства и многое другое. Рассказывая обо всем этом, Мигель припомнил множество интересных событий и фактов, о которых вам наверняка будет интересно прочитать.

Интервью брали Игорь Лабутин, разработчик на C# и архитектор, и Андрей Акиньшин, перформанс-лид Rider, мейнтейнер проекта BenchmarkDotNet.

Текст интервью и видео — под катом.

Читать далее
Всего голосов 36: ↑36 и ↓0+36
Комментарии5

Новости

Оживляем деревья выражений кодогенерацией

Время на прочтение8 мин
Количество просмотров12K

Expression Trees — это, пожалуй, самое удобное средство манипуляции кодом в run-time.

Расширять код метапрограммами в compile-time позволяют Roslyn Source Generators, с ними это стало проще, чем когда-либо.

Пора использовать одно во благо другого, даже если мир к этому еще не совсем готов.

Читать далее
Всего голосов 32: ↑32 и ↓0+32
Комментарии17

Мигель де Икаса: от Midnight Commander до Mono в .NET 5

Время на прочтение8 мин
Количество просмотров9.7K


Мигель де Икаса создал целый ряд громких проектов: GNOME, Mono, Xamarin, Midnight Commander… Для одних айтишников это человек-легенда, сделавший поразительно много для опенсорса и .NET-экосистемы. Другие ничего не знают о нём, но постоянно пользуются плодами его трудов.


На Хабре есть множество постов с его упоминанием, но не было поста о нём самом. А завтра Мигель выступит на нашей конференции DotNext, и я решил, что это отличный повод исправить ситуацию.


Как человек, создавший GNOME, мог оказаться в Microsoft? СЕО какого ключевого IT-проекта современности долго был его главным сподвижником? Почему Ричард Столлман назвал Мигеля «предателем сообщества свободного ПО», а некоторые другие говорят, что он всю жизнь занимается клонированием?

Читать дальше →
Всего голосов 71: ↑71 и ↓0+71
Комментарии12

[По докам] Flutter. Часть 5. Для Xamarin.Forms-разработчиков

Время на прочтение20 мин
Количество просмотров4.2K
Это заключительная часть лаконичной интерпретации документации по Flutter, которая будет полезна Xamarin.Forms-разработчикам. Учитывая текущую ситуацию, сейчас самое время изучать что-то новое! Под катом вы сможете найти для себя информацию, достаточную, чтобы оценить, стоит ли переходить с одного кросплатформенного фреймворка на другой и сколько времени это займёт.


Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии1

Истории

Подарок всем под Ёлочку

Время на прочтение2 мин
Количество просмотров12K
Или всё-таки под Елочку?

Нет, под Ёлочку! Теперь точно с Ё, потому что это статья про ёфикацию!

И не просто теория или скрипты из командной строки, а настоящая рабочая программа, которую можно использовать как на компе так и на телефоне.
Читать дальше →
Всего голосов 45: ↑41 и ↓4+37
Комментарии80

Как мы удвоили скорость работы с Float в Mono

Время на прочтение6 мин
Количество просмотров8.1K

Мой друг Aras недавно написал один и тот же трассировщик лучей на разных языках, в том числе на C++, C# и компиляторе Unity Burst. Разумеется, естественно ожидать, что C# будет медленнее, чем C++, но мне показалось интересным, что Mono настолько медленнее .NET Core.

Опубликованные им показатели были плохими:

  • C# (.NET Core): Mac 17.5 Mray/s,
  • C# (Unity, Mono): Mac 4.6 Mray/s,
  • C# (Unity, IL2CPP): Mac 17.1 Mray/s

Я решил посмотреть, что происходит, и задокументировать места, которые можно улучшить.

В результате этого бенчмарка и изучения этой проблемы мы обнаружили три области, в которых возможно улучшение:

  • Во-первых, необходимо улучшить параметры Mono по умолчанию, потому что пользователи обычно не настраивают параметры у себя
  • Во-вторых, нам нужно активнее знакомить мир с бекэндом оптимизации кода LLVM в Mono
  • В-третьих, мы улучшили настройку некоторых параметров Mono.

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

Результаты на моём домашнем iMac для Mono и .NET Core были следующими:

Рабочая среда Результаты, MRay/sec
.NET Core 2.1.4, отладочная сборка dotnet run 3.6
.NET Core 2.1.4, релизная сборка dotnet run -c Release 21.7
Ванильный Mono, mono Maths.exe 6.6
Ванильный Mono с LLVM и float32 15.5
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии10

Распространение приложения под iOS внутри компании (Enterprise Distribute iOS App in-house)

Время на прочтение7 мин
Количество просмотров26K
(Осторожно, под катом трафик)
Подготовка и распространение приложения IOS внутри компании весьма непростая задача, особенно когда приложение написано на Windows с использованием Visual studio, а большинство туториалов в интернете описывают исключительно MacOS с использованием Xcode. Однако после часов сражения с детищем Apple, нам удалось свершить казалось бы невозможное, а именно: скрестить жирафа с носорогом собрать IOS приложение на Xamarin в архив Xcode, сразу на MacOS, после получить нужные файлы для распространения, и в завершении создать ссылку, по которой будет распространяться приложение.

Да, на слух вроде не очень сложно. Однако когда дело касается разработки приложений под устройства Apple, всё становится в несколько раз непонятней и сложней. И после триумфальной, но нелёгкой победы, нам захотелось оставить свой след в истории, написав сей туториал.

Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии12

Kivy. Xamarin. React Native. Три фреймворка — один эксперимент (часть 2)

Время на прочтение10 мин
Количество просмотров13K

Это вторая статья из цикла, где мы проводим сравнение Kivy, Xamarin.Forms и React Native. В ней я постараюсь написать такой же планировщик задач, но с использованием Xamarin.Forms. Посмотрю, как у меня это получится, и с чем мне придется столкнуться.

Повторять ТЗ я не буду, его можно посмотреть в первой статье: Kivy. Xamarin. React Native. Три фреймворка — один эксперемент

Третья часть про React Native: Kivy. Xamarin. React Native. Три фреймворка — один эксперимент (часть 3)
Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии21

Расширяем узкие места Xamarin.Forms

Время на прочтение5 мин
Количество просмотров8.1K
При создании мобильных приложений возникает множество различных хотелок в духе «как было бы хорошо, если бы…» И можно подставлять пункты, которые требуют улучшения. У начинающих разработчиков в этот список с высокой вероятностью войдет и пункт «если бы работало быстрее …» В данной статье будут собраны рекомендации, которые помогут начинающим разработчикам Xamarin.Forms обойти узкие места фреймворка и инструментов сборки. А начнем мы с железа.


Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии5

Архитектуры ReactNative, Xamarin, PhoneGap и Qt. Часть 1

Время на прочтение8 мин
Количество просмотров18K
Дорогой друг, если ты готов узнать больше про архитектуры популярных кроссплатформенных мобильных фреймворков, именно в этой статье мы проведем их сравнение и определим, для какого класса задач или команд подходит тот или иной инструмент. В первой части рассмотрим общие архитектурные паттерны кроссплатформенных фреймворков, а также архитектуры PhoneGap и ReactNative. Во второй части — фреймворки Xamarin и Qt.


Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии13

Что разработчики Xamarin должны знать на начало 2017 года

Время на прочтение8 мин
Количество просмотров34K
Представляем вам пятничную подборку полезных гайдов и шпаргалок от Джеймса Монтемагно для разработчиков разного уровня.


Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии41

Модульное приложение на Xamarin

Время на прочтение17 мин
Количество просмотров14K

В этой статье вы узнаете про интересные проблемы и их решения, которые возникали в процессе разработки «конструктора» приложений, построенного на модульной архитектуре, в компании Notissimus. Проект находится в стадии активной разработки, поэтому будем рады узнать ваше мнение в комментариях, а также приглашаем на заключительный в 2016 году митап для разработчиков на Xamarin. Всех заинтересовавшихся просим под кат.


Читать дальше →
Всего голосов 41: ↑37 и ↓4+33
Комментарии7

Connect(); // 2016: Программа, онлайн-трансляция и бонус

Время на прочтение2 мин
Количество просмотров5.4K
Уже завтра начинается онлайн-трансляция одного из ключевых технологических событий от Microsoft — Connect();. Событие будет проходить несколько дней, 16 — 18 ноября, и соберет в себе все ключевые новости для разработчиков. Под катом вы найдете подробную программу, небольшой бонус для Xamarin-разработчиков, а также узнаете, где будет проводиться текстовая трансляция и онлайн-трансляция на русском языке.


Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии0

Ближайшие события

Анонс .NET Standard 2.0

Время на прочтение2 мин
Количество просмотров40K

Не так давно в сети появился пост Immo Landwerth, который рассказывает о .NET Standard 2.0
Если вкратце, то это унификация .NET для следующих веток .NET Framework, .NET Core и Xamarin. Выражаясь понятными словами это набор API, который будет реализован всеми платформами.

И сразу значительное изменение: .NET Standard заменит библиотеки PCL. Хотя для разработчиков суть и останется прежняя, реализация будет другой. Ездить машина будет, как и раньше, но изменится название и содержимое под капотом (пожалуй, в лучшую сторону).
Читать дальше →
Всего голосов 51: ↑40 и ↓11+29
Комментарии24

Подборка полезных материалов по разработке на Xamarin

Время на прочтение3 мин
Количество просмотров14K
Делимся полезным контентом по разработке на Xamarin: видео The Xamarin Show на Channel 9, базовый курс Microsoft Virtual Academy для новичков, список обучающих материалов и первый в России Moscow Xamarin Meetup.


Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии8

Microsoft открыла исходники Xamarin.Forms. Мы не могли упустить шанс проверить их с помощью PVS-Studio

Время на прочтение11 мин
Количество просмотров21K


Не так давно, как вы наверняка знаете, корпорация Microsoft купила компанию Xamarin. Даже несмотря на то, что в последнее время Microsoft начала постепенно открывать исходные коды своих продуктов, открытие кода Xamarin.Forms стало большим сюрпризом. Я не смог пройти мимо такого события, и решил проверить исходный код этого проекта с помощью статического анализатора кода.

Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии11

Текстовая трансляция конференции Build 2016

Время на прочтение1 мин
Количество просмотров15K


Всем привет! В этом году мы решили организовать текстовую трансляцию открытия нашей ежегодной конференции Build. Поэтому заходите в пост, следите за обновлениями и комментируйте вместе с нами.

Для тех кто предпочитает видео-ряд, мы также сделали перевод трансляции на русский (оригинал на английском).
Читать дальше →
Всего голосов 36: ↑34 и ↓2+32
Комментарии13

DotNext — Конференция по .NET-технологиям, Москва, 11 декабря

Время на прочтение2 мин
Количество просмотров5.3K
Уже через 2 недели в Москве пройдет очередная .NET-конференция DotNext. И для нас стало уже доброй традицией принимать в ней активное участие, чтобы иметь возможность поделиться приобретенным опытом, рассказать о своих новинках и заодно просто пообщаться с одним из самых больших сообществ .NET-разработчиков на постсоветском пространстве.

Вообще, очень здорово, что есть такая конференция, где можно послушать интересные технологические доклады и прочувствовать настоящий хардкор в самых разных областях .NET-а.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Комментарии0

Бесплатный грид контрол для Xamarin от DevExpress

Время на прочтение5 мин
Количество просмотров15K
В предыдущей статье (Особенности разработки под Xamarin.Forms) я рассказал о нашем опыте разработки под фреймворк Xamarin.Forms, который позволяет создавать нативные пользовательские интерфейсы под три мобильные платформы (iOS, Android, Windows Phone), используя общий С# код и разметку XAML.

Сегодня посмотрим на результат проделанной нами работы, наш первый компонент для Xamarin.Forms – Data Grid. Этот компонент можно использовать бесплатно, скачав здесь. Вместе с ним вы получите приложение, демонстрирующее основную функциональность GridControl-а.



Итак, под катом вас ждет обзор всего того, что умеет Grid на данный момент, а также небольшой Getting Started.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии9

Особенности разработки под Xamarin.Forms

Время на прочтение9 мин
Количество просмотров24K
Около года назад появился кросс-платформенный фреймворк под названием Xamarin.Forms. Он позволяет создавать мобильные приложения под разные платформы, используя C# и .NET. По сути он является надстройкой над уже существовавшими до него Xamarin.iOS, Xamarin.Android и Xamarin.WinPhone. И, в отличие от них, он позволяет создавать лишь один проект, в котором можно описать всю логику работы приложения и его UI. А затем просто компилить его под разные платформы. В итоге, все это сильно экономит время.

Мы считаем, что эта платформа имеет свои перспективы и, потому не смогли пройти мимо нее. По традиции, мы начали с разработки Data Grid контрола. За время работы над ним у нас накопился интересный опыт разработки под Xamarin.Forms, и мы хотим с вами им поделиться.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии6
1