SlideShare une entreprise Scribd logo
1  sur  26
КРОССПЛАТФОРМЕННАЯ
РАЗРАБОТКА МОБИЛЬНЫХ
ПРИОЛЖЕНИЙ. XAMARIN.
СТАНИСЛАВ СИДРИСТЫЙ
stanislav.sidristyi@touchin.ru
touchin.ru
@sidristij
2
ГОДА

20+
ПРИЛОЖЕНИЙ

40
ЧЕЛОВЕК
Stream
дочерняя

МТС

Мегалабс
дочерняя

Мегафона
ВАЖНОСТЬ ВЫБОРА
ПРАВИЛЬНОГО
ИНСТРУМЕНТА.
КОГДА РАЗРАБОТЧИК
СЧАСТЛИВ?
— На работе интересно, коллектив гордится
— Дети первые в рейтингах WOT, вышел Half Life 3
— Жена понимает, когда говоришь «отрефакторил»
— ???
КОГДА РАЗРАБОТЧИК
СЧАСТЛИВ?
— На работе интересно, коллектив гордится
— Дети первые в рейтингах WOT, вышел Half Life 3
— Жена понимает, когда говоришь «отрефакторил»
— Правильные инструменты разработки!
ВЛИЯНИЕ НА РАЗРАБОТКУ

ДЕШЕВО

ДЕШЕВО
БЫСТРО

БЫСТРО

КАЧЕСТВЕННО
КАЧЕСТВЕННО

Плохие – мешают жить

Хорошие – улучшают продукт
XAMARIN
Позволяет разработывать iOS, MAC и Android
приложения на C#, используя почти всю мощь
.Net Framework
Имеет множество тулов для удобства

разработки
XAMARIN – НЕ НОВАЯ
ПЛАТФОРМА
Основана на mono runtime
Которая развивается с 2001 года
Свободная реализация ECMA-334 (C#) и ECMA335 (CLI)

Основатель – Miguel de Icaza (GNOME, mc)
Исходники, комьюнити, свой стор, партнеры,…
XAMARIN. НЕМНОГО О
КОМПАНИИ
Продает и осуществляет поддержку Monotouch/Monodroid
Цены от $299 для Indie (раньше было $399, приятно)
На сайте компании есть все для старта и работы
Огромное количество примеров на github.com/xamarin

Выпущено несколько книг
MONOTOUCH
Mono для iOS c AOT компиляцией и bindings к API
Код – на C#, UI – родной, через удобные обѐртки
Обертки делают API iOS понятным на C#
Среда разработки – Xamarin Studio (MAC, Windows) + XCode
КОМПИЛЯЦИЯ
Все как в настоящем .NET, компилируется в сборки
Поэтому теоретически можно заюзать любой язык .NET
(сейчас можно F#, но есть Nemerle, Ruby, Python, JS)
IL превращается в машинный код при помощи AOT

копиляции
Программа воссоединяется с Mono Runtime, GC, BCL, …
КОМПИЛЯЦИЯ
ЛИНКОВКА
Когда все линкуется, берется только то, что используется
Если Вам все-таки что-то необходимо, но напрямую не
используется, можно пометить атрибутом
Сильно уменьшает размер приложения

Чем больше используем, тем больше приложение.
ЧТО ОБЩЕГО С НАТИВНЫМ API
Абсолютно идентичная работа с UI
AppDelegate, UIWindow,ViewControllers, ... на iOS
Activities, Fragments, … на Андроиде
Платформенное API с железом такое же как родное

Отличается только то, что можно C#-изировать
ОТЛАДКА
Честная отладка, с breakpoints
Можно просматривать в Watches, Immediate Window
Наводить курсор на переменные
Среда разработки – Xamarin Studio
iOS UI
Android UI
МИНУСЫ
Потираем ручки 
Xamarin Studio прекрасна, но имеет проблемы с отладчиком
Bindings не всегда строятся правильно
Runtime неплохо нагружает приложение (+2-3 метра)
Немного страдает производительность

Нельзя Emit'тить
Нет Generic Virtual Methods / p/invokes в Generic Types
ПЛЮСЫ
Шарится много кода между всеми .NET платформами
Не обязательно знать Objective-C и Java
Проще и быстрее разработывать (особенно общие части)
Тонны библиотек для .NET на github, codeplex, …
Тонны нативных библиотек, которые можно юзать

Огромное сообщество .NET, и быстро растущее (400 тысяч
акков) сообщество Xamarin.
ПЛЮСЫ ДЛЯ КОМПАНИИ
Меньше программистов для тех же задач
Можно хантить как с iOS/Android так и .NET разработчиков,
уставших от корпоративного сектора
Сокращение стоимости разработки конечного продукта и как
следствие – довольные заказчики.
ЛИЧНЫЙ ОПЫТ И ВПЕЧАТЛЕНИЯ
Опыт прекрасен, отказываться не собираемся никогда
CoinKeeper… Да везде: быстрее кодим, меньше багов
Общая логика: не пишем все заново. 30-60%% шарим
Когда вышла iOS 7, API с Ксамарина был готов практически
сразу.
ВОПРОСЫ!
Fb: @touchinstinct
Twitter: @sidristij, @touchin_ru

Email: hello@touchin.ru
touchin.ru

Contenu connexe

Similaire à Станислав Сидристый Xamarin

Константин Кичинский, Microsoft
Константин Кичинский, MicrosoftКонстантин Кичинский, Microsoft
Константин Кичинский, MicrosoftDiana Dymolazova
 
Выложи это в wiki
Выложи это в wikiВыложи это в wiki
Выложи это в wikiyaevents
 
Метрики в бизнесе или алгебра для гармонии
Метрики в бизнесе или алгебра для гармонииМетрики в бизнесе или алгебра для гармонии
Метрики в бизнесе или алгебра для гармонииNikolay Kochnev
 
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в store
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в storeМастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в store
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в storeVolha Banadyseva
 
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2Diggers
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2DiggersIT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2Diggers
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2DiggersDataArt
 
Создание и продвижение социальных проектов в интернете. Виктория Вирта
Создание и продвижение социальных проектов в интернете. Виктория ВиртаСоздание и продвижение социальных проектов в интернете. Виктория Вирта
Создание и продвижение социальных проектов в интернете. Виктория Виртаoprfforum
 
Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...
 Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк... Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...
Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...stakhanovets
 
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLabМастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLabInternet-Burzhui Andrei Ryabykh
 
Cv &First Steps (by vivanova)
Cv &First Steps (by vivanova)Cv &First Steps (by vivanova)
Cv &First Steps (by vivanova)Valentina Ivanova
 
Academy1.ru Business Efficiency
Academy1.ru Business EfficiencyAcademy1.ru Business Efficiency
Academy1.ru Business EfficiencyNordic Agency AB
 
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014it-people
 
Игровые приложения для мобильных платформ
Игровые приложения для мобильных платформИгровые приложения для мобильных платформ
Игровые приложения для мобильных платформTatiana Aulachynskaya
 
Academy1.ru Business Efficiencty 3.2 for OdessaCamp
Academy1.ru Business Efficiencty 3.2 for OdessaCampAcademy1.ru Business Efficiencty 3.2 for OdessaCamp
Academy1.ru Business Efficiencty 3.2 for OdessaCampLeonid Buran
 
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_нейYandex
 
Meet up postanovka_zadach
Meet up postanovka_zadachMeet up postanovka_zadach
Meet up postanovka_zadachssuser9c807c
 
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...HappyDev
 
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработке
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработкеSECON'2016. Лексунин Евгений, Как не запутаться в веб-разработке
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработкеSECON
 
Cps 2014 cinesoft
Cps 2014 cinesoftCps 2014 cinesoft
Cps 2014 cinesoftCineSoft
 

Similaire à Станислав Сидристый Xamarin (20)

Константин Кичинский, Microsoft
Константин Кичинский, MicrosoftКонстантин Кичинский, Microsoft
Константин Кичинский, Microsoft
 
Выложи это в wiki
Выложи это в wikiВыложи это в wiki
Выложи это в wiki
 
Метрики в бизнесе или алгебра для гармонии
Метрики в бизнесе или алгебра для гармонииМетрики в бизнесе или алгебра для гармонии
Метрики в бизнесе или алгебра для гармонии
 
[Add 4] crossplatform .net
[Add 4] crossplatform .net[Add 4] crossplatform .net
[Add 4] crossplatform .net
 
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в store
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в storeМастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в store
Мастер-класс Ильи Красинского и Елены Столбовой. Жизнь до и после выхода в store
 
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2Diggers
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2DiggersIT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2Diggers
IT talk Spb #34 «Performance Based Hiring» Саша Зверев, сооснователь 2Diggers
 
Создание и продвижение социальных проектов в интернете. Виктория Вирта
Создание и продвижение социальных проектов в интернете. Виктория ВиртаСоздание и продвижение социальных проектов в интернете. Виктория Вирта
Создание и продвижение социальных проектов в интернете. Виктория Вирта
 
Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...
 Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк... Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...
Запись вебинара: «Объективная оценка объемов печати в вашей организации и эк...
 
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLabМастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
Мастер-класс в Сколково: "Юзабилити для стартапа", Суворова Юлия, UsabilityLab
 
Hamster Robotics
Hamster RoboticsHamster Robotics
Hamster Robotics
 
Cv &First Steps (by vivanova)
Cv &First Steps (by vivanova)Cv &First Steps (by vivanova)
Cv &First Steps (by vivanova)
 
Academy1.ru Business Efficiency
Academy1.ru Business EfficiencyAcademy1.ru Business Efficiency
Academy1.ru Business Efficiency
 
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014
И.Красинский, Е.Столбова "Мобильная резня приложений, DUMP-2014
 
Игровые приложения для мобильных платформ
Игровые приложения для мобильных платформИгровые приложения для мобильных платформ
Игровые приложения для мобильных платформ
 
Academy1.ru Business Efficiencty 3.2 for OdessaCamp
Academy1.ru Business Efficiencty 3.2 for OdessaCampAcademy1.ru Business Efficiencty 3.2 for OdessaCamp
Academy1.ru Business Efficiencty 3.2 for OdessaCamp
 
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней
«Яндекс_внутри»: немного_о_компании_и_организации_внутренней_жизни_в_ней
 
Meet up postanovka_zadach
Meet up postanovka_zadachMeet up postanovka_zadach
Meet up postanovka_zadach
 
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...
2015-12-06 Юрий Мельничек - Руководство для разработчиков по маркетингу мобил...
 
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработке
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработкеSECON'2016. Лексунин Евгений, Как не запутаться в веб-разработке
SECON'2016. Лексунин Евгений, Как не запутаться в веб-разработке
 
Cps 2014 cinesoft
Cps 2014 cinesoftCps 2014 cinesoft
Cps 2014 cinesoft
 

Plus de Apps4All

Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Apps4All
 
Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Apps4All
 
Аудитория мобильного Интернета
Аудитория мобильного ИнтернетаАудитория мобильного Интернета
Аудитория мобильного ИнтернетаApps4All
 
Goal number one
Goal number oneGoal number one
Goal number oneApps4All
 
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...Apps4All
 
Александра Кочеткова Touch'anka
Александра Кочеткова Touch'ankaАлександра Кочеткова Touch'anka
Александра Кочеткова Touch'ankaApps4All
 
Измерение мобильной аудитории: в поисках валюты рынка
Измерение мобильной аудитории: в поисках валюты рынкаИзмерение мобильной аудитории: в поисках валюты рынка
Измерение мобильной аудитории: в поисках валюты рынкаApps4All
 
Ваща аудитория в мобильных социальных сетях
Ваща аудитория в мобильных социальных сетяхВаща аудитория в мобильных социальных сетях
Ваща аудитория в мобильных социальных сетяхApps4All
 
Использование мобильных приложений
Использование мобильных приложенийИспользование мобильных приложений
Использование мобильных приложенийApps4All
 
Аудитория мобильного Интернета
Аудитория мобильного ИнтернетаАудитория мобильного Интернета
Аудитория мобильного ИнтернетаApps4All
 
Сурен Макарян Mobile Info
Сурен Макарян  Mobile InfoСурен Макарян  Mobile Info
Сурен Макарян Mobile InfoApps4All
 
Игорь Еремен iVengo
Игорь Еремен iVengoИгорь Еремен iVengo
Игорь Еремен iVengoApps4All
 
Елена Пикунова Opera Mediaworks
Елена Пикунова Opera MediaworksЕлена Пикунова Opera Mediaworks
Елена Пикунова Opera MediaworksApps4All
 
Андрей Шатров WapStart
Андрей Шатров WapStartАндрей Шатров WapStart
Андрей Шатров WapStartApps4All
 
Cергей Джейгало Major Domo
Cергей Джейгало Major DomoCергей Джейгало Major Domo
Cергей Джейгало Major DomoApps4All
 
Григорий Ситнин Z-Wave.me
Григорий Ситнин Z-Wave.meГригорий Ситнин Z-Wave.me
Григорий Ситнин Z-Wave.meApps4All
 
Сергей Коренев Zoomby
Сергей Коренев ZoombyСергей Коренев Zoomby
Сергей Коренев ZoombyApps4All
 
Сергей Быков ivi.ru
Сергей Быков ivi.ruСергей Быков ivi.ru
Сергей Быков ivi.ruApps4All
 
Аркадий Левин Антология русской поэзии
Аркадий Левин Антология русской поэзииАркадий Левин Антология русской поэзии
Аркадий Левин Антология русской поэзииApps4All
 
Алена Соснина Enaza
Алена Соснина EnazaАлена Соснина Enaza
Алена Соснина EnazaApps4All
 

Plus de Apps4All (20)

Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013
 
Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013Презентация хакатона Apps4All 13-14 декабря 2013
Презентация хакатона Apps4All 13-14 декабря 2013
 
Аудитория мобильного Интернета
Аудитория мобильного ИнтернетаАудитория мобильного Интернета
Аудитория мобильного Интернета
 
Goal number one
Goal number oneGoal number one
Goal number one
 
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...
Лучшие практики подготовки к переводу мобильных приложений к выпуску качестве...
 
Александра Кочеткова Touch'anka
Александра Кочеткова Touch'ankaАлександра Кочеткова Touch'anka
Александра Кочеткова Touch'anka
 
Измерение мобильной аудитории: в поисках валюты рынка
Измерение мобильной аудитории: в поисках валюты рынкаИзмерение мобильной аудитории: в поисках валюты рынка
Измерение мобильной аудитории: в поисках валюты рынка
 
Ваща аудитория в мобильных социальных сетях
Ваща аудитория в мобильных социальных сетяхВаща аудитория в мобильных социальных сетях
Ваща аудитория в мобильных социальных сетях
 
Использование мобильных приложений
Использование мобильных приложенийИспользование мобильных приложений
Использование мобильных приложений
 
Аудитория мобильного Интернета
Аудитория мобильного ИнтернетаАудитория мобильного Интернета
Аудитория мобильного Интернета
 
Сурен Макарян Mobile Info
Сурен Макарян  Mobile InfoСурен Макарян  Mobile Info
Сурен Макарян Mobile Info
 
Игорь Еремен iVengo
Игорь Еремен iVengoИгорь Еремен iVengo
Игорь Еремен iVengo
 
Елена Пикунова Opera Mediaworks
Елена Пикунова Opera MediaworksЕлена Пикунова Opera Mediaworks
Елена Пикунова Opera Mediaworks
 
Андрей Шатров WapStart
Андрей Шатров WapStartАндрей Шатров WapStart
Андрей Шатров WapStart
 
Cергей Джейгало Major Domo
Cергей Джейгало Major DomoCергей Джейгало Major Domo
Cергей Джейгало Major Domo
 
Григорий Ситнин Z-Wave.me
Григорий Ситнин Z-Wave.meГригорий Ситнин Z-Wave.me
Григорий Ситнин Z-Wave.me
 
Сергей Коренев Zoomby
Сергей Коренев ZoombyСергей Коренев Zoomby
Сергей Коренев Zoomby
 
Сергей Быков ivi.ru
Сергей Быков ivi.ruСергей Быков ivi.ru
Сергей Быков ivi.ru
 
Аркадий Левин Антология русской поэзии
Аркадий Левин Антология русской поэзииАркадий Левин Антология русской поэзии
Аркадий Левин Антология русской поэзии
 
Алена Соснина Enaza
Алена Соснина EnazaАлена Соснина Enaza
Алена Соснина Enaza
 

Станислав Сидристый Xamarin