Рубрика «ios development» - 11

image
За 9 лет работы фич в проектах роботов становилось все больше, запутаться в коде становилось все проще.

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

Главная проблема, которая возникает при долгосрочном развитии приложения – масштабируемость. Решить ее может переход на новую архитектуру или рефакторинг кодовой базы и добавление новых сущностей, которые разгружают объекты с большим количеством обязанностей.
Читать полностью »

Прошёл четвёртый по счёту традиционный iOS Meetup в Avito. Мы обсуждали Data Driven подход к разработке, практическое применение Mach-O, lldb и dSYM, возможности расширения lldb, методологию Type Driven и концептуальные различия архитектур. Если же вы не успели к нам на доклады и глинтвейн, или просто были не в Москве, то под катом мы выложили видеозаписи выступлений, слайды от докладчиков и немного фидбэка от участников встречи.

Avito iOS Winter Edition — видео, фото, слайды, отзывы - 1

Читать полностью »

Распознавание лиц. Создаем и примеряем маски - 1

Пока сообщество iOS-разработчиков спорит, как писать проекты, пока пытается решить, использовать ли MVVM или VIPER, пока пытается подSOLIDить проект или добавить туда реактивную турбину, я попытаюсь оторваться от этого и рассмотреть, как работает под капотом еще одна технология с графика Hype-Driven-Development.

В 2017 году на вершине графика хайпа — машинное обучение. И понятно почему:

  • Появилось больше открытых наборов данных.
  • Появились соответствующее аппаратные средства. В том числе облачные решения.
  • Технологии из этой области стали применяться в production-проектах.

Машинное обучение — широкая тема, остановлюсь на распознавании лиц и попытаюсь разобраться, какие технологии были до рождества христова CoreML, и что появилось после релиза фреймворка Apple.

Читать полностью »

Приглашаем 15 декабря на Moscow CocoaHeads Meetup в Mail.Ru Group - 1

Друзья, мы приглашаем iOS/macOS-разработчиков 15 декабря в московский офис Mail.Ru Group, где пройдёт очередная встреча сообщества CocoaHeads. Вас ждут три интересных доклада, традиционная викторина и, конечно, неформальное общение с докладчиками и остальными гостями. Программа встречи под катом.

Читать полностью »

Сегодня в 18:30 по московскому времени в офисе SuperJob состоится встреча iOS-разработчиков. Присоединяйтесь к прямой трансляции!

Спикеры и темы:

Алексей Коньшин, старший разработчик мобильных приложений SuperJob, с докладом «Построение iOS-приложения из переиспользуемых модулей».

Расскажет о том, как в SuperJob ускорили разработку экранов приложения, разделив их на самостоятельные блоки, как использовали для этого библиотеку IGListKit, как сделали её ещё лучше и как удалось ускорить разработку и унифицировать code style, внедрив генерацию кода.

Ольга Выростко, iOS-разработчик «Яндекса», с докладом «Адаптация приложений под iOS 11 и iPhone X».

Расскажет о том, какие вопросы встали перед разработчиками после недавней презентации Apple. Например, как сделать, чтобы приложение гармонично смотрелось в новой версии операционной системы и стабильно работало на iPhone X, какие новые возможности можно использовать, чтобы процесс разработки шёл быстрее, проще и приятнее. Ещё мы поговорим о том, как изменилось UI-тестирование после перехода на xCode 9 и что в нём нового.
Читать полностью »

What we have?

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

Как мы размещаем элементы на экране?

  • Qt предлагает использовать контейнеры, умеющие внутри себя располагать элементы определенным образом. Вкладывая эти контейнеры друг в друга, можно получить необходимую расстановку.
  • WPF/XAML предлагает аналогичные контейнеры.
  • Android предлагает аналогичные контейнеры + систему констреинтов.
  • iOS предлагает Autolayout. Нужно описать набор ограничений (уравнений), непротиворечиво и однозначно описывающих расположение элементов. Решив систему уравнений с этими ограничениями, движок получит координаты и размеры элементов.
  • У Delphi есть anchors: прибивание краев к контейнеру. Очень похоже на resizing masks в iOS.
  • В web на сколько я понимаю используется вкладывание друг в друга контейнеров, поведение которых описывается стилями.

What problem with this?

We need to use code for special cases

Описанные инструменты заточены под типовые случаи, зачастую мы не можем (или можем, но это сильно неудобно) описать расположение какого-то элемента с помощью этих инструментов. Приходится делать это в коде. Логика описания layout'а размазывается по нескольким местам.

Должен быть способ лучше.

Читать полностью »

image image image

Легендарный Стенфордский курс CS193P по разработке для ios сложен и очень популярен, но тем кто не особо «дружит» с английским нелегко приходится в его освоении.

Было решено попытаться озвучить данный курс на основе переводов неавторизованных конспектов лекций которые выкладывает Татьяна Корнилова на своем сайте.
Читать полностью »

Зима близко! Уже второго декабря мы встретимся в нашем московском офисе на традиционном Avito iOS Meetup. Обсудим Data Driven подход, практическое применение Mach-O, lldb и dSYM, возможности расширения lldb, методологию Type Driven, а также концептуальные различия архитектур. В мероприятии примут участие представители Avito, Badoo, Туту.ру и Яндекс. Под катом — подробное описание докладов, программа мероприятия и ссылка на канал, где будет организована прямая видеотрансляция.

Avito iOS Meetup: Winter Edition - 1

Читать полностью »

ARKit, Flutter, Core ML, анимации и многое другое на MBLTdev 2017 - 1

Привет! 27 октября состоялась 4-я Международная конференция мобильных разработчиков MBLTdev 2017.

25 спикеров из Google, Uber, Avito, Fyusion, Sharewire, Tinkoff, PSPDFKit, Agoda, Сбербанк и других компаний выступили с докладами о последних трендах мобильной разработки и поделились собственным опытом и практикой. Главными темами конференции стали скорость и поддержка работы приложений, AR-взаимодействия, Core ML, анимации, Audio Unit Extension, организация работы в команде и многое другое. Как это было — читай под катом.
Читать полностью »

Умные сети для рыбаков: как мы учили смартфоны распознавать рыбу - 1

На развитие компьютерного зрения в последние 10 лет не обращал внимание лишь отстраненный от мира человек. Технология распознавания образов своим процветанием обязана глубокому обучению. Достижения машин поражают воображение.
Читать полностью »


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