3 греха мобильной разработки на Mobius 2016

в 15:33, , рубрики: android, android development, iOS, ios development, java, kotlin, mobile development, swift, Блог компании JUG.ru Group, конференция, разработка мобильных приложений, Разработка под android, разработка под iOS, разработка под windows phone

До Mobius 2016 осталось 3 дня, и программа уже готова. Получилось 24 доклада о мобильной разработке: Android, iOS и кроссплатформенной. Чтобы внимательно изучить их все, надо потратить почти час времени, поэтому мы подготовили небольшой гайд по программе, которая сама собой разделилась на три направления, не привязанных к платформе:

  • On the Edge;
  • Hardcore;
  • Software Craftsmanship;

Однако этот пост не только о конференции – каждый из докладов попадает в программу из-за того или иного «грешка», распространенного среди программистов. Давайте посмотрим подробнее…

3 греха мобильной разработки на Mobius 2016 - 1



Грех 0: Поклонение silver bullet.

3 греха мобильной разработки на Mobius 2016 - 2

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

Правда новые версии iOS приносят не только приятные сюрпризы, а дедлайн не дождется Java 9 в Android (а ведь мы подобного и ждем) – работать надо здесь и сейчас. Правда в том, что у нас уже есть полная обойма пусть не серебряных, но убийственно эффективных патронов, и именно им мы решили посвятить львиную долю наших докладов: зачем ждать, когда все уже готово? Бери и пиши код.

Будет лучше, скажете вы? И будете совершенно правы! Однако и сейчас у нас есть инструменты для тех, кто жаждет безопасного, reusable и maintainable кода в iOS-разработке, прямая дорога в Swift – на примере дженериков и Application Coordinators мы рассмотрим инструментарий iOS-разработчиков, который не используется в новых проектах из-за того, что его попросту не было в Objective-C или о нем не так много говорят. Подробное интервью о том, какие плюшки и грабли разложены в Swift, можно прочитать здесь.

То же самое и с Android: только главная проблема платформы – ее фрагментированность. И Google давно выкатил свое решение в виде концепции Material Design – совокупности подходов, которые дают нам возможность сделать красивое, живое приложение, не будучи гением в дизайне. При чем здесь разработчик, спросите вы? При том, что 77 процентов приложений получают плохие оценки из-за того, что выглядят ужасно, независимо от оптимизации, правильного бэкенда или широкого функционала. Как с этим справляться, расскажут Wiebe Elsinga (Android GDE/Эксперт по UX) и Владимир Иванов, на практике внедряющий Material Design в свои приложения. Кстати, большое интервью на эту тему можно почитать здесь.

Также поговорим об актуальных (а главное, уже работающих!) фреймворках:

Егор Толстой (Rambler&Co) расскажет о Typhoon;
Игорь Василенко (Yota) – о ReactiveCocoa;
Кирилл Попов (Одноклассники) – о том, когда готовые библиотеки лучше своих родных «велосипедов» на примере Fresco;
Денис Кретов и Максим Евтух (Нотиссимус) – о том, как им удалось добиться сокращения времени разработки под несколько платформ с помощью Xamarin и MvvmCross.

Грех 1: Знания «высокого уровня».

3 греха мобильной разработки на Mobius 2016 - 3

Есть как минимум 2 типа разработчиков: те, кто любит строить высокоуровневые архитектурные «воздушные замки» и те, кто закапывается по самое «не хочу» в дебри низкоуровневых оптимизаций. Программисты первого типа часто забывают о том, что разбираться в низкоуровневых нюансах следует не только разработчикам драйверов: всегда следует понимать, как ваш код будет вести себя на той или иной платформе, с той или иной VM. И это весьма распространенный «косяк», хотя среди участников наших конференций много разработчиков второго типа: тех, что любят работать поближе к ОС. Среди спикеров тоже – в этот раз у нас четверть докладов проходят под меткой «хардкор»: о «кишочках», виртуальных машинах, языках и подходах в программировании.

Два доклада, по одному на каждую платформу, выделены под реактивный подход: Матвей Мальков уже делал «вводный доклад» о реактивщине под Android в прошлом году, в этот раз речь пойдет о тех ошибках, которые допускают разработчики и о том, что такое правильное реактивное программирование на Android (кстати, на эту тему есть недавнее интервью). В стане iOS о реактивном подходе расскажет Евгений Ртищев (Сбербанк-Технологии) в докладе «Реактивный MVVM»

Про Swift мы говорили в прошлом разделе, так как там в мире iOS особо не разгуляться. А вот Android с точки зрения выбора доступных языков разработки предоставляет обширное «меню»: кроме Java 7 и 8 (в обозримом будущем), в продашн уходят приложения написанные на Kotlin и Scala. О плюсах и минусах мобильной разработки на этих языках расскажут Ян Жуланов (JetBrains) и Матвей Мальков (уже больше года пишущий на Scala).

Ну и последние два доклада в этой категории посвящены Android internals: доклад Дмитрия Полищука о тонкостях и граблях в работе с мультимедийной подсистемой Android и выступление Михаила Розумянского «Bytecode weaving 101», в котором речь пойдет про кодогенерацию на уровне байткода, про патчинг байткода в целом и преимущества и недостатки по сравнению со стандартным annotation processing’ом.

Грех 2: Лень и консерватизм.

3 греха мобильной разработки на Mobius 2016 - 4

«Что за чушь? Первый пункт про серебряные пули, а третий – про консерватизм?» Да, именно так! Мы ждем каких-то решений, изучаем их с энтузиазмом и радостью, но все это работает только там, где нам интересно. Однако судьба любого разработчика полна сюрпризов: все время происходит множество изменений, которые приходится изучать. И никто не хочет этого.

Впрочем, технологический стек мобильного разработчика обновляется еще быстрее: Material Design, Swift 3.0, React, Kotlin, новые версии виртуальных машин и операционных систем – только успевай смотреть и осваивать: все это отнимает силы и время. На Mobius мы подготовили для вас выжимку важных новостей так, чтобы вы не тратили десятки часов на серфинг в интернетах и попытки отфильтровать полезные вещи из тонн информационного «шума».

Простейший пример: Google i/o 2016 – сотни разношерстных статей и анонсов, один повторяет другой, а третий перевирает второй – при этом большая часть всего этого рассчитана на гиков и сочувствующих. Если честно, нам так и не удалось найти единого источника со всей важной для программиста информацией с конференции, поэтому лично я с удовольствием пойду слушать доклад с «горячими новостями» для разработчиков. из первых уст Дениса Неклюдова, Android GDE. А в качестве затравки можно почитать интервью с Денисом про Android N.

Второй пример: очень сложно оценить перспективы тех или иных технологий самостоятельно. В конце концов, мы все верили в успех Google Glass, и где они теперь? С другой стороны, тема VR или Android вне-телефонов растет и развивается, становясь индустрией. Пора ли двигать в этом направлении? Об этом будет пара докладов:

  • Коршак Александр о практическом применении и разработке под Cardboard
  • Алексей Рыбаков про Android TV Gaming (Vulkan API, Nvidia Gameworks и т.д.)

Третья тема, которую следует знать, но в которую не очень хочется вникать, это безопасность: о последних фичах iOS и Android в этой области расскажет Борис Рютин.

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

Грех 3: Никто не любит кодить.

3 греха мобильной разработки на Mobius 2016 - 5

Да-да, кодить никто не любит – все любят решать интересные задачи и ломать голову над алгоритмическими задачами или оптимизацией. А писать-то кто будет? В любом случае, на Mobius у нас есть несколько докладов о написании тестируемого кода, о практическом «ускорении» ваших приложений, о быстром управлении набором «фич» и их конфигураций, а также о практической типографике в iOS.

А что в итоге?

Индульгенции не будет, однако на каждый грешок у нас есть, что сказать. Если же вы знаете что-то, о чем стоит говорить на конференции, а в программе этого нет – смело пишите нам, в следующий раз мы снова будем стараться сделать все на высшем уровне.

До встречи на конференции!

P.S. если вам хочется на Mobius, но до Питера не доехать, у нас есть онлайн-трансляция.
P.P.S. Если вы хотите посмотреть на доклады прошлых Mobius, они уже все выложены на нашем YouTube-канале.

Автор: JUG.ru Group

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js