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

Xamarin *

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

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

Context Model Pattern via Aero Framework

Время на прочтение 26 мин
Количество просмотров 9.6K
Context Model Pattern — концепция проектирования приложений, сочетающая черты архитектурных паттернов MVVM, MVP, MVC и основанная на наборе достаточно свободных, прогрессивных, отлично согласованных между собой положений. Краеугольными камнями являются представления, медиаторы, контекстные объекты и их коллекции, а основополагающая рекомендация — принцип прямых инжекций.

Aero Framework — открытая библиотека на языке C#, содержащая всю необходимую инфраструктуру для создания xaml-ориентированных приложений, соответствующих рассматриваемому паттерну. При её грамотном использовании исходный код получается беспрецедентно лаконичным, высокопроизводительным и интуитивно понятным даже начинающим разработчикам.

Следование идеям паттерна позволяет красивым и естественным образом решить множество рутинных задач от навигации и локализации в приложении до реализации механизмов валидации данных, сохранения визуального состояния интерфейса и логического у вью-моделей. Но самое важное — помогает заложить понятную, удачную и очень простую архитектуру. Причём, ощутимо возрастают скорость и качество разработки, а объём написанного кода сокращается в несколько раз, что успешно проверено на различных проектах.

Внимательный и терпеливый читатель будет щедро вознаграждён знаниям.

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

Как мы разрабатывали свое первое приложение на Xamarin.Forms и что из этого вышло

Время на прочтение 3 мин
Количество просмотров 26K
В Xamarin утверждают, что использование Xamarin.Forms позволяет увеличить обем общего кода в приложения для трех мобильных платформ (iOS, Android и WP) с 70% до 90%. Мне на собственном опыте довелось проверить этот факт. О том почему это правда и неправда одновременно мой рассказ.
Читать дальше →
Всего голосов 26: ↑22 и ↓4 +18
Комментарии 8

Xamarin.Forms не готов к боевым условиям?

Время на прочтение 2 мин
Количество просмотров 14K
Xamarin — продукт, дающий возможность используя .NET писать приложение сразу под 3 мобильные платформы — Android, iOS и Windows Phone. Не так давно в продукт добавлена новая технология — Xamarin.Forms, позволяющая писать один XML-файл с разметкой на все платформы сразу. Но насколько эта технология готова к использованию в продакшене?
Читать дальше →
Всего голосов 32: ↑22 и ↓10 +12
Комментарии 15

Разработка приложения на Android с помощью Xamarin и F#

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

Привет!

Недавно Xamarin объявил конкурс на разработку мобильного приложения на функциональном языке программирования F#.
Это было связано с выходом Xamarin 3 с полной поддержкой F#. Я решил отвлечься от повседневных задач и попробовать поучаствовать, тем более что я давно смотрю на F#, но шансов познакомиться с ним подробнее у меня не было. Для участия в соревновании я решил разработать приложение идея которого была предложена кем-то в процессе обсуждения внезапного взлета мобильного приложения Yo. Вот цитата:
Идея для стартапа, рабочее название «ты где?».

Смысл прост, девушка устанавливает приложение, указывает в нем номер своего молодого человека и после этого появляется большая гнопка отправки сообщения «ты где?» #startup #idea

Почему бы и нет?

Примечание
Я писал этот пост параллельно работая над приложением. Поэтому он большой и местами не очень логичный.

Читать дальше →
Всего голосов 24: ↑17 и ↓7 +10
Комментарии 8

Истории

Лечим SQLite в Monotouch или практическая польза рефлексии

Время на прочтение 7 мин
Количество просмотров 3.9K
Работа с детищем Xamarin интересна и полна сюрпризов, как в хорошем смысле слова, так и в плохом. Одни проблемы решаются при помощи гугла и StackOverflow, другие же требуют нестандартного подхода. В данной статье я хочу рассказать историю о том, как можно с помощью исходников, рефлексии и трех кружек чая решить одну пренеприятнейшую проблему.

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

Обзор 7 самых популярных кроссплатформенных мобильных фреймворков

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

На работе меня попросили сделать сравнительную характеристику нескольких продуктов для создания кроссплатформенных мобильных приложений: Appcelerator Titanium, Kony Platform, Adobe PhoneGap, IBM Worklight, Telerik Platform, Verivo Akula, Xamarin. Потратил немало времени, поэтому решил, что лучше поделиться с хабрасообществом полученными данными, вдруг кому покажется полезным. Сразу скажу, что кроме PhoneGap я до этого не сталкивался и не работал ни с каким из этих фреймворков, поэтому уверен, что что-то упустил, где-то, возможно, не так понял, а в чем-то оказался не прав. Но в комментариях надеюсь услышать ваше мнение и исправить недочеты.

В конце статьи поместил несколько опросов, которые помогут понять популярность и рейтинг этих фреймворков.
Здорово, хочу дальше
Всего голосов 55: ↑48 и ↓7 +41
Комментарии 53

Xamarin. За и против

Время на прочтение 4 мин
Количество просмотров 61K
image

Наверное, каждый .NET разработчик, знакомясь с monodroid и monotouch, хочет узнать, что его ждет. Стоит ли тратить свои силы и время на изучение, какой потенциал платформы, не превратится ли разработка в тестирование фреймворка?

Уже больше года моей основной задачей является разработка на C# под Android и IOS, и я постараюсь ответить на основные вопросы, возникающие при выборе monotouch и monodroid. В статье будет много личного мнения и описания костылей, так как ответы по техническим вопросам можно легко найти на официальном сайте Xamarin: docs.xamarin.com

Поскольку Xamarin 3 вышел только недавно, мне не удалось полностью прощупать новые возможности и изменения в платформе. Тем не менее, почти все «особенности» разработки в monotouch и monodroid по-прежнему актуальны.
Читать дальше →
Всего голосов 48: ↑42 и ↓6 +36
Комментарии 31

Ciklum Speakers’ Corner на тему «Mobile development with Xamarin», 6 июня, 18.30

Время на прочтение 1 мин
Количество просмотров 1.8K
Первая пятница лета порадует всех киевских мобильных разработчиков Ciklum Speakers’ Corner на тему «Mobile development with Xamarin». Специальный гость из Днепропетровска Александр Леущенко расскажет что такое Xamarin и как с ним жить 6 июня, 18.30 в офисе компании Ciklum.



Об докладчике: Xamarin-евангелист. Участник и организатор мероприятий, посвященных кросс-платформенной мобильной разработке.

О докладе: Александр расскажет о мобильной разработке на Xamarin — что это вообще такое, как выглядит и зачем это нужно. А так же покажет как он тестирует свои приложения, написанные на Xamarin. Для самых морально стойких слушателей будет небольшой пример мобильной разработки не на C#.

Мероприятие бесплатное по предварительной регистрации: goo.gl/5E0K3m

Ждем всех желающих по адресу Киев, ул.Амосова 12, БЦ Горизонт, вторая башня, 20-й этаж в 18.30.
Всего голосов 14: ↑5 и ↓9 -4
Комментарии 4

Как подружить Android, Visual Studio и Parallels Desktop

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

Введение


Несколько месяцев назад, прочитав на Хабре статьи про кросплатформенную разработку с помощью Mono и Xamarin, вдохновился написанием собственных приложений на платформы Android, iOS и Windows Phone. Через некоторое время, найдя работу в компании, которая как раз и занимается разработкой приложений с помощью Xamarin, стал гордым обладателем iMac и понял, что хорошо бы кроме девайса с Android’ом на борту (да, у меня прекрасно уживается продукция Apple и Google, хотя предпочтение я отдаю первым) иметь на iMac эмулятор Android (так как держать весь зоопарк устройств для своих проектов не представляется возможным).
Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 5

Обмануть Мигеля?

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

Как-то раз Мигель…
(Хотя нет, история не совсем о нем, попробую начать иначе)
Однажды в мире Open Source…
(Тоже мимо, OSS в истории затронуто лишь частично)
Когда жажду наживы называют здравым смыслом, начинается обман.
(Почти афоризм)

Предыстория

Стукнуло мне в голову написать программу под Мак на C#. Я поблагодарил Мигеля де Икасу за отличный Open Source проект Mono, воздал хвалу за его же библиотеку MonoMac, чуть ругнулся на сыроватый MonoDevelop и принялся за работу. Через некое время был оплачен аккаунт в AppStore, программа была в шаге от завершения, когда начался большой проект по основной работе и ее пришлось отложить. И вот через год пришло сообщение, что пустующий аккаунт в AppStore будет закрыт через 30 дней — это был знак, что надо что-то делать. MonoDevelop, обновившийся сам до Xamarin Studio, предложил сразу проект MonoMac преобразовать в Xamarin.Mac и повел меня на сайт, где было предложено купить этот самый Xamarin.Mac всего за $999, иначе деплоймент в AppStore будет невозможен.
Читать дальше →
Всего голосов 122: ↑105 и ↓17 +88
Комментарии 50

Кросс-платформенная разработка на Xamarin

Время на прочтение 12 мин
Количество просмотров 20K
Добрый вечер, хабравчане! Сегодня хотелось бы написать о кросс-платформенной разработке в целом. Ведь по сути люди сейчас делят десктоп, сервер и мобильных клиентов и стараются искать кросс-платформенные тулы внутри каждого сектора, не заглядывая за рамки каждого из секторов. Это бывает по различным причинам. Одна из причин — Вася знает как делать десктоп на Java, а Петя — как делать приложеньки под iPhone на Objective-C. И никто даже догадаться не может что есть технологии, объединяющие все платформы воедино.

За катом много текста и статистики.


Мое выступление на Apps4All Forum. Выступление первое, все ошибки подачи материала уже намотал на ус.

Читать дальше →
Всего голосов 23: ↑15 и ↓8 +7
Комментарии 19

Драма которая прошла мимо нас, или как Xamarin захотел 12000$ в год с клиента

Время на прочтение 3 мин
Количество просмотров 64K
image

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

Началось оно с непримечательной темы на официальном форуме где один из пользователей интересуется, почему в официальном FAQ изменились условия лицензирования.

До 1 ноября там было написано следующее
Your Xamarin license is perpetual. If you choose not to renew your subscription, you will no longer have access to new releases and support, and we will be very sad.
а после уже совсем другое…
Подробности
Всего голосов 121: ↑108 и ↓13 +95
Комментарии 65

История создания кроссплатформенного мобильного приложения

Время на прочтение 8 мин
Количество просмотров 14K
Жесткая конкуренция на рынке мобильных платформ уже не позволяет выпускать приложения ориентированные на одну операционную систему, что ставит разработчиков перед сложным выбором. Они должны выбирать между разработкой нативных приложений для каждой ОС (на родных языках программирования для каждой из них), разработкой в виде сайта для мобильных устройств на HTML5 или же создавать приложения, используя фреймворки для кроссплатформенной разработки.

В данной статье хотим рассказать историю создания кроссплатформенного мобильного решения для аэропортов, а также привести интересные статистические данные.
Читать дальше →
Всего голосов 26: ↑22 и ↓4 +18
Комментарии 12

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

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн
PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн

Сравнение производительности Xamarin (monodroid) и Java (DalvikVM) на Android устройствах

Время на прочтение 5 мин
Количество просмотров 44K
image
Добрый день. Многие интересуются насколько сильно отличается производительность Xamarin на Android или iOS. Вопрос с iOS я пока оставлю открытым, а вот все вопросы по производительности monodroid предлагаю закрыть раз и навсегда.

Зачастую эти вопросы вызваны из-за неправильного понимания как устроен monodroid, мне например задавали вопросы типа «А Xamarin потом пересобирается под JVM?». Это конечно же не так. Важно понимать, что Xamarin выполняется на том же уровне Android где работает виртуальная машина Android Dalvik. Поэтому при сравнении производительности мы на деле имеем сравнение эффективности работы двух виртуальных машин: Mono VM и Dalvik VM.

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

Разработка мобильных приложений с Dropbox Datastore API

Время на прочтение 4 мин
Количество просмотров 9.3K
У Dropbox есть три API для мобильных приложений:
  • Drop-ins два простых UI компонента: Chooser для выбора файла из Dropbox-директорий пользователя и Saver для сохранения файлов в Dropbox. Никакой настройки, аутентификации. Вызываете компонент, взамен получаете ссылку на файл. Под iOS и Android доступен только Chooser, Saver появится позже.
  • Core API самый низкоуровневый API. Он позволяет читать и записывать файлы и директории на сервере Dropbox. Авторы называют API — RESTish. То есть он использует HTTP, читаемые URL, JSON ответы, но не следует REST принципам досконально. Для аутентификации используется OAuth 2.0.
  • Sync API работает поверх Core API и выглядит как доступ к файловой системе. Директории и файлы доступны даже без доступа к интернету и синхронизируются автоматически с серверами Dropbox. Самое удобное API для разработки мобильных приложений.

Sync API хорош, но по статистике, многие мобильные разработчики используют его для хранения структурированных данных. Сериализуют их в JSON, сохраняют в файлы, синхронизируют с облаком. Это работает до тех пор, пока не происходит одновременного изменения данных с разных устройств. Даже если вы поменяете не конфликтующие по смыслу данные, на уровне файла это будет конфликт и Dropbox не сможет его решить.

Поэтому мы выпустили Datastore API. Он синхронизируем не файлы, а данные, чем-то похож на удаленную NoSQL базу данных с кешированием.

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

Разработка IM на конкурс Павла Дурова с помощью Xamarin

Время на прочтение 15 мин
Количество просмотров 24K
image
Добрый день.

Как многие наверное знают, Павел Дуров разрабатывает новый клон What's App и прочих популярных мессенджеров на базе своего собственного протокола MTProto.

Недавно американская компашка выпустила iOS клиент под этот протокол под названием Telegram. Параллельно с этим проводится — конкурс на разработку Android клиента.
Недавно завершился второй этап, народ отправил свои поделки и я в том числе. Скажу сразу, второй этап я не прошел.

В отличие от многих участников, для разработки я пользовался языком C# и Xamarin о чем и хочу рассказать подробнее ниже, так как по Xamarin в рунете информации скажем прямо немного.

Читать дальше →
Всего голосов 43: ↑38 и ↓5 +33
Комментарии 23

iOS 7 и Xamarin

Время на прочтение 2 мин
Количество просмотров 25K
18 сентября, одновременно с официальным релизом iOS 7, вышел Xamarin.iOS 7.

Xamarin подготовил обширную документацию (на английском), чтобы помочь разобраться с чего начать.

Под катом Мигель рассказывает о самых интересных, на его взгляд, изменениях в iOS 7 API с ссылками на примеры кода.




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

C# — лучший язык для мобильной разработки

Время на прочтение 2 мин
Количество просмотров 51K
Popularity of Programming Languages объявил C# лучшим языком программирования 2012 года. Его популярность выросла на 2.3% это больше чем рост годовой популярности любого другого языка. Возможно, все дело в выходе Windows 8, где C# используется для создания сторонних приложений. Нет Фридман, CEO Xamarin, считает, что дело не только в этом. В статье вы найдете восемь причин выбрать C# для мобильной разработки.


Читать дальше →
Всего голосов 67: ↑31 и ↓36 -5
Комментарии 28

Подробно о Xamarin

Время на прочтение 12 мин
Количество просмотров 441K
Вы неплохо владеете языком C# и платформой .NET в целом? Вам надоело стоять в стороне и смотреть, как кто-то другой пишет крутые мобильные приложения вместо вас? У меня есть для вас кое-что интересное! То, что поможет вам изменить сложившуюся ситуацию и позволит писать отличные мобильные приложения, не требуя отдельного изучения Objective-C и Java. Я расскажу вам о продукте Xamarin. Подробно и правдиво.

Что это?



Xamarin — это фреймворк для кроссплатформенной разработки мобильных приложений (iOS, Android, Windows Phone) с использованием языка C#. Идея очень простая. Вы пишете код на своем любимом языке, с применением всех привычных для вас языковых фич типо LINQ, лямбда-выражений, Generic`ов и async`ов. При этом вы имеете полный доступ ко всем возможностям SDK платформы и родному механизму создания UI, получая на выходе приложение, которое, строго говоря, ничем не отличается от нативных и (по крайней мере по заверениям) не уступает им в производительности.

Фреймворк состоит из нескольких основных частей:
Читать дальше
Всего голосов 83: ↑73 и ↓10 +63
Комментарии 63

HTML5 в мобильной разработке — что выбрать?

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

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

Устоявшиеся мнения о преимуществах кросс-платформенной разработки с использованием HTML5 или Native SDK:

HTML5
  • Лёгкое вхождение для веб-разработчиков
  • Дешево в разработке
  • Большое покрытие (браузер сейчас есть везде)
  • Единая база кода

При помощи таких средств как, например, Cordova, на HTML5 можно создавать гибридные приложения (которые размещены не в интернете, а в нативном контейнере). Такие приложения совмещают перечисленные выше плюсы и посредством плагинов позволяют выйти за пределы браузера, осуществляя тесную интеграцию с возможностями устройств. Гибридные приложения можно публиковать и распространять через AppStore, Google Play и другие магазины приложений.

Native
  • Нативные ощущения и внешний вид
  • Интеграция с аппаратной частью без ограничений
  • Интеграция с софт частью (например, вызвать твиттер или Facebook из приложения)
  • Нет привязки к браузеру
  • Полноценные IDE для разработки и отладки приложений

Естественно, это базовые утверждения, которые каждый может дополнить исходя из своего опыта. Так стоит ли выбирать HTML5 для разработки вашего приложения? Ответ не может быть однозначным — он зависит от множества факторов, которые мы и рассмотрим.

Читать дальше →
Всего голосов 70: ↑56 и ↓14 +42
Комментарии 50

Вклад авторов