SlideShare a Scribd company logo
Разработка мобильных
приложений на С#
с использованием Xamarin
Vsevolod Ivanov
Touch Instinct, CTO
Что такое Xamarin?
Возможность разрабатывать
мобильные приложения
под все платформы
на одном языке
Целевая аудитория
1. Верят, что можно писать код один
раз сразу под все платформы
2. Знают C# и хотят мобильное
приложение
Xamarin inside
1. Обертки для нативных классов
2. Весь GUI платформо-зависимый
iOs Android
Windows
Phone
Общая
логика
Переиспользование
кода в Xamarin —
реальность или вымысел?
Только для общей логики:
1. Ее меньше 20%
2. Логика зависит от жизненного
цикла UI
Выигрыш от Xamarin
1. Сложная бизнес-логика 

пишется действительно 1 раз
2. Ваш любимый C#
Проблемы от Xamarin
1. Разрабатывается на одной
платформе, работает на другой
2. Баги Xamarin
3. Печальная IDE
4. Выпадение из экосистемы платформы
5. Больший размер приложения
6. Отсутствие поддержки новых ОС
Когда разумно
использовать Xamarin?
1. Много логики
2. Простой дизайн
3. Xamarin.Forms/MvvmCross
Вопросы?
Touch Instinct
Vsevolod Ivanov
CTO
vi@touchin.ru
touchin.ru

More Related Content

Similar to Разработка мобильных приложений на С# с использованием Xamarin

Зачем компаниям нужны новые мобильные приложения?
Зачем компаниям нужны новые мобильные приложения?Зачем компаниям нужны новые мобильные приложения?
Зачем компаниям нужны новые мобильные приложения?
Michael Kozloff
 
[Add 4] crossplatform .net
[Add 4] crossplatform .net[Add 4] crossplatform .net
[Add 4] crossplatform .net
Stanislav Sidristy
 
Ценность платформы Octopod для разработчиков мобильных приложений
Ценность платформы Octopod для разработчиков мобильных приложенийЦенность платформы Octopod для разработчиков мобильных приложений
Ценность платформы Octopod для разработчиков мобильных приложений
Michael Kozloff
 
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
JSC “Arcadia Inc”
 
Разработка кросплатформенных приложений
Разработка кросплатформенных приложенийРазработка кросплатформенных приложений
Разработка кросплатформенных приложений
barbariska89
 
Vacancy testing engineer
Vacancy testing engineerVacancy testing engineer
Vacancy testing engineer
Vadim Khrustalev
 
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
CEE-SEC(R)
 
Михаил Черномордиков
Михаил ЧерномордиковМихаил Черномордиков
Михаил Черномордиков.toster
 
Артем Кумпель, Кому лучше работается?
Артем Кумпель, Кому лучше работается?Артем Кумпель, Кому лучше работается?
Артем Кумпель, Кому лучше работается?
EYevseyeva
 
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
DataArt
 
Предыстория, Тенденции, Платформа и Начало. Павел Башмаков
Предыстория, Тенденции, Платформа и Начало. Павел БашмаковПредыстория, Тенденции, Платформа и Начало. Павел Башмаков
Предыстория, Тенденции, Платформа и Начало. Павел Башмаков
Stanfy
 
Разработка в Vs2015
Разработка в Vs2015Разработка в Vs2015
Разработка в Vs2015
Tatiana Smetanina
 
Вячеслав Черников (Binwell) | Xamarin на практике
Вячеслав Черников (Binwell) | Xamarin на практике Вячеслав Черников (Binwell) | Xamarin на практике
Вячеслав Черников (Binwell) | Xamarin на практике
RIF-Technology
 
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
SpbDotNet Community
 
Android передовая мобильная платформа
Android передовая мобильная платформаAndroid передовая мобильная платформа
Android передовая мобильная платформа
korovyansk
 
Windows Mobile Development with Compact Framework 2
Windows Mobile Development with Compact Framework 2Windows Mobile Development with Compact Framework 2
Windows Mobile Development with Compact Framework 2DarkestMaster
 
Кроссплатформенная разработка
Кроссплатформенная разработкаКроссплатформенная разработка
Кроссплатформенная разработкаValery
 
Тигран Худавердян, "Телефон и интернет"
Тигран Худавердян, "Телефон и интернет"Тигран Худавердян, "Телефон и интернет"
Тигран Худавердян, "Телефон и интернет"
yandex-ua
 
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TKConf
 

Similar to Разработка мобильных приложений на С# с использованием Xamarin (20)

Зачем компаниям нужны новые мобильные приложения?
Зачем компаниям нужны новые мобильные приложения?Зачем компаниям нужны новые мобильные приложения?
Зачем компаниям нужны новые мобильные приложения?
 
[Add 4] crossplatform .net
[Add 4] crossplatform .net[Add 4] crossplatform .net
[Add 4] crossplatform .net
 
Ценность платформы Octopod для разработчиков мобильных приложений
Ценность платформы Octopod для разработчиков мобильных приложенийЦенность платформы Octopod для разработчиков мобильных приложений
Ценность платформы Octopod для разработчиков мобильных приложений
 
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
2015-12-12 | AzovDevMeetup 2015 | Мобильная разработка: Native, Hybrid, Cross...
 
Разработка кросплатформенных приложений
Разработка кросплатформенных приложенийРазработка кросплатформенных приложений
Разработка кросплатформенных приложений
 
Vacancy testing engineer
Vacancy testing engineerVacancy testing engineer
Vacancy testing engineer
 
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
 
Михаил Черномордиков
Михаил ЧерномордиковМихаил Черномордиков
Михаил Черномордиков
 
Артем Кумпель, Кому лучше работается?
Артем Кумпель, Кому лучше работается?Артем Кумпель, Кому лучше работается?
Артем Кумпель, Кому лучше работается?
 
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
«Кроссплатформенная разработка мобильных приложений для бизнеса» Александр Еп...
 
Предыстория, Тенденции, Платформа и Начало. Павел Башмаков
Предыстория, Тенденции, Платформа и Начало. Павел БашмаковПредыстория, Тенденции, Платформа и Начало. Павел Башмаков
Предыстория, Тенденции, Платформа и Начало. Павел Башмаков
 
Разработка в Vs2015
Разработка в Vs2015Разработка в Vs2015
Разработка в Vs2015
 
4-urii
4-urii4-urii
4-urii
 
Вячеслав Черников (Binwell) | Xamarin на практике
Вячеслав Черников (Binwell) | Xamarin на практике Вячеслав Черников (Binwell) | Xamarin на практике
Вячеслав Черников (Binwell) | Xamarin на практике
 
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
Павел Федотовский «Как мы разрабатывали приложение для DotNetRu на Xamarin.Fo...
 
Android передовая мобильная платформа
Android передовая мобильная платформаAndroid передовая мобильная платформа
Android передовая мобильная платформа
 
Windows Mobile Development with Compact Framework 2
Windows Mobile Development with Compact Framework 2Windows Mobile Development with Compact Framework 2
Windows Mobile Development with Compact Framework 2
 
Кроссплатформенная разработка
Кроссплатформенная разработкаКроссплатформенная разработка
Кроссплатформенная разработка
 
Тигран Худавердян, "Телефон и интернет"
Тигран Худавердян, "Телефон и интернет"Тигран Худавердян, "Телефон и интернет"
Тигран Худавердян, "Телефон и интернет"
 
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
 

More from Mikhail Shcherbakov

Delegates and events in C#
Delegates and events in C#Delegates and events in C#
Delegates and events in C#
Mikhail Shcherbakov
 
Mythbusters - Web Application Security
Mythbusters - Web Application SecurityMythbusters - Web Application Security
Mythbusters - Web Application Security
Mikhail Shcherbakov
 
Михаил Щербаков "WinDbg сотоварищи"
Михаил Щербаков "WinDbg сотоварищи"Михаил Щербаков "WinDbg сотоварищи"
Михаил Щербаков "WinDbg сотоварищи"
Mikhail Shcherbakov
 
Apache Ignite.NET в действии
Apache Ignite.NET в действииApache Ignite.NET в действии
Apache Ignite.NET в действии
Mikhail Shcherbakov
 
Архитектура Apache Ignite .NET
Архитектура Apache Ignite .NETАрхитектура Apache Ignite .NET
Архитектура Apache Ignite .NET
Mikhail Shcherbakov
 
Знакомство с In-Memory Data Grid
Знакомство с In-Memory Data GridЗнакомство с In-Memory Data Grid
Знакомство с In-Memory Data Grid
Mikhail Shcherbakov
 
сценарии использования статического анализатора
сценарии использования статического анализаторасценарии использования статического анализатора
сценарии использования статического анализатора
Mikhail Shcherbakov
 
WCF. Легко или проблемно
WCF. Легко или проблемноWCF. Легко или проблемно
WCF. Легко или проблемно
Mikhail Shcherbakov
 
Поиск ошибок в программах на языке C#
Поиск ошибок в программах на языке C#Поиск ошибок в программах на языке C#
Поиск ошибок в программах на языке C#
Mikhail Shcherbakov
 
Когда в C# не хватает C++ . Часть 3.
Когда в C# не хватает C++. Часть 3. Когда в C# не хватает C++. Часть 3.
Когда в C# не хватает C++ . Часть 3.
Mikhail Shcherbakov
 
Project Rider
Project RiderProject Rider
Project Rider
Mikhail Shcherbakov
 
WinDbg в руках .NET разработчика
WinDbg в руках .NET разработчикаWinDbg в руках .NET разработчика
WinDbg в руках .NET разработчика
Mikhail Shcherbakov
 
Structured logging
Structured loggingStructured logging
Structured logging
Mikhail Shcherbakov
 
RESTful API: Best practices, versioning, design documentation
RESTful API: Best practices, versioning, design documentationRESTful API: Best practices, versioning, design documentation
RESTful API: Best practices, versioning, design documentation
Mikhail Shcherbakov
 
Простой и кросс-платформенный WEB-сервер на .NET
Простой и кросс-платформенный WEB-сервер на .NETПростой и кросс-платформенный WEB-сервер на .NET
Простой и кросс-платформенный WEB-сервер на .NET
Mikhail Shcherbakov
 
Использование Visual Studio Tools for Apache Cordova в реальных проектах
Использование Visual Studio Tools for Apache Cordova в реальных проектахИспользование Visual Studio Tools for Apache Cordova в реальных проектах
Использование Visual Studio Tools for Apache Cordova в реальных проектах
Mikhail Shcherbakov
 
Sandboxing in .NET CLR
Sandboxing in .NET CLRSandboxing in .NET CLR
Sandboxing in .NET CLR
Mikhail Shcherbakov
 
Когда в C# не хватает C++ . Часть 2.
Когда в C# не хватает C++. Часть 2.Когда в C# не хватает C++. Часть 2.
Когда в C# не хватает C++ . Часть 2.
Mikhail Shcherbakov
 
Распространённые ошибки оценки производительности .NET-приложений
Распространённые ошибки оценки производительности .NET-приложенийРаспространённые ошибки оценки производительности .NET-приложений
Распространённые ошибки оценки производительности .NET-приложений
Mikhail Shcherbakov
 
Когда в C# не хватает C++
Когда в C# не хватает C++Когда в C# не хватает C++
Когда в C# не хватает C++
Mikhail Shcherbakov
 

More from Mikhail Shcherbakov (20)

Delegates and events in C#
Delegates and events in C#Delegates and events in C#
Delegates and events in C#
 
Mythbusters - Web Application Security
Mythbusters - Web Application SecurityMythbusters - Web Application Security
Mythbusters - Web Application Security
 
Михаил Щербаков "WinDbg сотоварищи"
Михаил Щербаков "WinDbg сотоварищи"Михаил Щербаков "WinDbg сотоварищи"
Михаил Щербаков "WinDbg сотоварищи"
 
Apache Ignite.NET в действии
Apache Ignite.NET в действииApache Ignite.NET в действии
Apache Ignite.NET в действии
 
Архитектура Apache Ignite .NET
Архитектура Apache Ignite .NETАрхитектура Apache Ignite .NET
Архитектура Apache Ignite .NET
 
Знакомство с In-Memory Data Grid
Знакомство с In-Memory Data GridЗнакомство с In-Memory Data Grid
Знакомство с In-Memory Data Grid
 
сценарии использования статического анализатора
сценарии использования статического анализаторасценарии использования статического анализатора
сценарии использования статического анализатора
 
WCF. Легко или проблемно
WCF. Легко или проблемноWCF. Легко или проблемно
WCF. Легко или проблемно
 
Поиск ошибок в программах на языке C#
Поиск ошибок в программах на языке C#Поиск ошибок в программах на языке C#
Поиск ошибок в программах на языке C#
 
Когда в C# не хватает C++ . Часть 3.
Когда в C# не хватает C++. Часть 3. Когда в C# не хватает C++. Часть 3.
Когда в C# не хватает C++ . Часть 3.
 
Project Rider
Project RiderProject Rider
Project Rider
 
WinDbg в руках .NET разработчика
WinDbg в руках .NET разработчикаWinDbg в руках .NET разработчика
WinDbg в руках .NET разработчика
 
Structured logging
Structured loggingStructured logging
Structured logging
 
RESTful API: Best practices, versioning, design documentation
RESTful API: Best practices, versioning, design documentationRESTful API: Best practices, versioning, design documentation
RESTful API: Best practices, versioning, design documentation
 
Простой и кросс-платформенный WEB-сервер на .NET
Простой и кросс-платформенный WEB-сервер на .NETПростой и кросс-платформенный WEB-сервер на .NET
Простой и кросс-платформенный WEB-сервер на .NET
 
Использование Visual Studio Tools for Apache Cordova в реальных проектах
Использование Visual Studio Tools for Apache Cordova в реальных проектахИспользование Visual Studio Tools for Apache Cordova в реальных проектах
Использование Visual Studio Tools for Apache Cordova в реальных проектах
 
Sandboxing in .NET CLR
Sandboxing in .NET CLRSandboxing in .NET CLR
Sandboxing in .NET CLR
 
Когда в C# не хватает C++ . Часть 2.
Когда в C# не хватает C++. Часть 2.Когда в C# не хватает C++. Часть 2.
Когда в C# не хватает C++ . Часть 2.
 
Распространённые ошибки оценки производительности .NET-приложений
Распространённые ошибки оценки производительности .NET-приложенийРаспространённые ошибки оценки производительности .NET-приложений
Распространённые ошибки оценки производительности .NET-приложений
 
Когда в C# не хватает C++
Когда в C# не хватает C++Когда в C# не хватает C++
Когда в C# не хватает C++
 

Разработка мобильных приложений на С# с использованием Xamarin