iOS (до 24 июня 2010 года — iPhone OS) — операционная система для смартфонов, электронных планшетов и носимых проигрывателей, разрабатываемая и выпускаемая американской компанией Apple.

Основная информация

iOS (до 24 июня 2010 года — iPhone OS) — операционная система для смартфонов, электронных планшетов и носимых проигрывателей, разрабатываемая и выпускаемая американской компанией Apple. Была выпущена в 2007 году; первоначально — для iPhone и iPod touch, позже — для таких устройств, как iPad и Apple TV. В отличие от Windows Phone (Microsoft) и Android (Google), выпускается только для устройств, производимых фирмой Apple.

В iOS используется ядро XNU, основанное на микроядре Mach и содержащее программный код, разработанный компанией Apple, а также код из ОС NeXTSTEP и FreeBSD. Ядро iOS почти идентично ядру настольной операционной системы Apple macOS (ранее называвшейся OS X). Начиная с самой первой версии, iOS работает только на планшетных компьютерах и смартфонах с процессорами архитектуры ARM.

Рейтинг: 0
Создана 4 года назад
Владелец root

Стена группы

Загрузка...
2 года назад
#

Как стать тимлидом и не взорваться





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



  • Нехватка опыта менеджмента.

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

  • Нестабильность общих процессов в компании из-за её молодого возраста на тот момент.



Если вы стали лидом и первоначальная эйфория сменилась небольшим горением и унынием, то пара советов не будет лишней.



Источник
2 года назад
#

Как HBO делала приложение Not Hotdog для сериала «Кремниевая долина»





Сериал HBO «Кремниевая долина» выпустил настоящее приложение ИИ, которое распознаёт хотдоги и не-хотдоги, как приложение в четвёртом эпизоде четвёртогого сезона (приложение
сейчас доступно для Android, а также для iOS!)

Чтобы добиться этого, мы разработали специальную нейронную архитектуру, которая работает непосредственно на вашем телефоне, и обучили её с помощью TensorFlow, Keras и Nvidia GPU.

Источник
2 года назад
#

О чем говорили на Avito.iOS? Отчет, отзывы гостей и видеозаписи



Интерфейсы, тестирование, метрики… Если вам интересно узнать, о чем ещё говорили на регулярном мероприятии Avito для профессионалов iOS-разработки, смотрите видеозаписи под катом. Докладчики — представители ведущих российских интернет-сервисов Mail.Ru, Yandex и, конечно, Avito. Также к нам присоединился спецгость из Минска, тимлид проекта Juno — Сергей Анищенко.



Источник
2 года назад
#

Эффективная DI библиотека на Swift в 200 строк кода



Библиотека
EasyDi содержит контейнер зависимостей для Swift. Синтаксис этой библиотеки был специально разработан для быстрого освоения и эффективного использования. Она умещается в 200 строк, при этом умеет все, что нужно взрослой Di библиотеке:

— Создание объектов и внедрение зависимостей в существующие

— Разделение на контейнеры — Assemblies

— Типы разрешения зависимостей: граф объектов, синглетон, прототип

— Разрешение циклических зависимостей

— Подмена объектов и конктесты зависимостей для тестов

В EasyDi нет разделения на register/resolve. Вместо этого зависимости описываются вот так:

var apiClient: IAPIClient {
  return define(init: APIClient()) {
    $0.baseURl = self.baseURL
  }
}


Cocoapods / EasyDi

Github / EasyDi

Под катом очень краткое описание «Зачем DI и что это», также примеры использования библиотеки:

  • Как использовать и типы зависимостей

  • Как тестировать c подменой объектов

  • Как можно это использовать для A/B тестов

  • Как собрать VIPER-модуль



Источник
2 года назад
#

Дайджест интересных материалов для мобильного разработчика #209 (19 июня — 25 июня)



В новом дайджесте плохой бэкенд, плохие магазины Apple и Google, плохие креативы, смерть гамбургера. Зато хорошие SDK, качественный код, самодостаточные контроллы, будущее еды и сельского хозяйства. Добро пожаловать!



Источник
2 года назад
#

Интегрируем Copy-Paste-Detector для Swift в Xcode





DRY Principle

Одним из основных мета-принципов программирования является DRY (Don’t Repeat Yourself). Суть данного мета-принципа проста и должна являться негаснущим маяком для любого разработчика. Она гласит, что в разрабатываемой системе не должно быть кусков кода, имеющих одинаковый код. Выражаясь более простым языком, в программе не должно быть копипасты!



Для начала, давайте точно определим, что будем считать за копипасту. Если в проекте если одинаковые файлы — это грубейшая копипаста. Если есть одинаковые классы с разным названием и выполняющие одно и тоже — грубейшая копипаста. Даже если 10 строк одинакового кода — это тоже является копипастой. Возможно вы возразите, что 10 строк кода продублировать иногда позволительно. Из моего опыта, проект в 100000 строк вполне реально писать без подобной копипасты.
Какие же минусы несёт нам копипаста?



  • Один и тот же дублирующийся код в разных местах программы ведет к тому, что найденный и поправленный баг в одном месте автоматически не исправит баг в другом месте. Это ведет к тому, что ваша программа будет работать в целом непредсказуемо.

  • Общее увеличение кодовой базы. Как известно, чем меньше кодовая база, тем меньше ошибок в ней.

  • При изменении функциональности необходимо изменять сразу все места с копипастой. Для этого их сначала нужно найти, а потом изменить. В итоге, время работы увеличивается кратно.



Источник
2 года назад
#

CocoaHeads Russia. Прямая трансляция



Трансляция идёт:

Привет, хабраюзеры!

Сегодня (23 июня 2017) в офисе Туту.ру пройдет очередной митап iOS разработчиков. Мы организуем
прямую трансляцию митапа. Если вы не смогли к нам попасть, то у вас есть шанс увидеть все online.

Программа

  • 19:10 Открытие

  • 19:15 Анимация как средство самовыражения.
    Александр Зимин

  • 20:00 Перерыв

  • 20:25 Team Lead. Структурирование мыслей.
    Николай Ашанин

  • 21:00 Перерыв

  • 21:15 Викторина

  • 21:35 Реактивный VIPER.
    Дмитрий Котенко

  • 22:00 Автепати (трансляция в личные соцсеточки)



Источник
Den
2 года назад
#

Уроки, извлечённые из трёх миллионов загрузок на AppStore



В январе 2011 года у меня были летние каникулы [разработчик из южного полушария, а именно из Новой Зеландии — прим.пер.], но вместо поиска работы на день или общения с людьми я много времени скрывался от всех в своей комнате, где писал первую версию iOS приложения под названием Class Timetable. Годом ранее я искал простое, лёгкое в использовании приложение для учебных расписаний, и ничего в AppStore не подходило под мои нужды — всё было сложно и трудно использовать. Идея состояла в том, чтобы создать простое, без суматохи, прямолинейное решение, нечто более простое и более убедительное, чем бумажное расписание. За несколько месяцев я потратил около 500 часов, проектируя и кодируя его. На сегодня у программы более трёх миллионов загрузок, много положительных отзывов, а временами оно было моим основным источником дохода. Не слышали о приложении? Да, оно ещё не взлетело в США, но довольно популярно в Австралии/Новой Зеландии/Великобритании, по крайней мере, среди студентов колледжей и школьников.



Источник
2 года назад
#

Google и Apple против инди-разработчиков





TL;DR: технологические гиганты Google и Apple доминируют на рынке магазинов приложений, ведь у них практически нет конкурентов. Поэтому они предоставляют инди-разработчикам очень слабую поддержку. Вашу игру или приложение могут внезапно удалить, и вы почти ничего не можете с этим сделать.

Нашу игру
Fake Slap! засуспендили в Google Play за нарушение
Политики в отношении насилия. Мы получили автоматическое письмо, сообщающее, что игра засуспенжена, и — бам! Она исчезла. Для нас это стало серьёзным шоком, игра находилась в Google Play и App Store уже больше месяца без каких-либо проблем. Политика в отношении насилия гласит: «Запрещается публиковать приложения, изображающие безнаказанное насилие или другие опасные действия». Ниже приводится несколько примеров, таких как: инструкции по причинению себе вреда, документирование своих атак террористическими группами, изготовление взрывных устройств и другого оружия и реалистичные изображения или подробные описания насильственных действий. Наша игра точно ничему из этого НЕ соответствует. Да, наша игра про политику, и её персонажем является президент США, но она определённо не относится к перечисленным видам насилия.

Источник
2 года назад
#

Тринадцатый опрос Developer Economics



Developer Economics — это самое большое в мире исследование, посвященное мировым трендам в области экономики приложений и разработки. Основано оно на опросе разработчиков и компаний, который проводит британская компания VisionMobile раз в полгода.



Источник
2 года назад
#

Как написать максимально хреновый бэкенд для мобильного приложения





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



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



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



Приятного чтения.



Источник
2 года назад
#

Самодостаточные контроллы на Xamarin.Forms: «Переиспользуй код на максимум!». Часть 2





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

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

Источник
2 года назад
#

CocoaHeads Russia в офисе Туту.ру





23 июня Туту.ру и CocoaHeads Russia проведут очередную встречу сообщества iOS-разработчиков в Москве. В программе 3 доклада, викторина и афтерпати после встречи.

Источник
2 года назад
#

Механическая Коробка и моя Success Story



Читая Хаб о разработке игр, я часто натыкаюсь на топики в духе «А вот мы делали-делали игру, конечно, она не пошла, но главное опыт, первый блин комом...» и все в таком ключе. Да я и сам грешил этим, чего уж скрывать. И знаете что? К черту это! Хочется прочитать, как у автора все получилось, про миллионы восторженных игроков, про манящие вершины топов, про то, ради чего мы и читаем «постмортемы». Чтобы черпать вдохновение, чтобы с удвоенной энергией преодолевать свои собственные трудности, в конце концов.



Этим мы сегодня и займемся. Это будет рассказ о создании одной моей неоднозначной головоломки, с трудностями, победами, деньгами и прочими пикантными подробностями (для самых нетерпеливых я обвел на КДПВ сумму). Конечно, кто-то только улыбнется такому «успеху», но я считаю, что в современных реалиях, игра, сделанная 2 людьми в свободное от основной работы время, показала себя очень и очень неплохо! Но, обо всем по порядку.

Источник
2 года назад
#

Борьба за время сборки iOS-приложений



Чуть больше месяца назад мы выпустили iOS-приложение «Тинькофф Инвестиции». Приложение полностью написано на языке Swift, но имеет некоторые Objective-C-зависимости. Продукт быстро начал обрастать новой функциональностью, а вместе с тем время сборки проекта существенно увеличивалось. Когда мы пришли к тому, что после clean или значительных правок проект собирался дольше шести минут, мы осознали, что перемены необходимы.

image

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

Источник
8 9 11

Авторизация

Войдите, используя Ваш аккаунт

Войти с помощью

Пользователи

КАРКАМ

Нетология