iOS.Devs
5.52K subscribers
93 photos
4 videos
1 file
838 links
Всё самое актуальное из мира iOS разработки. По вопросам @suriksarkisyan

При поддержке qonversion.io

Чат: @ios_camp_chat.
Download Telegram
​​🍎 Каждый из нас немного дизайнер

Для тех, кто пропустил статью про то, как ведет себя Home Indicator в iPhone X. Было проведено исследование, когда он меняет цвет и в какой момент исчезает.

💡 Интересный факт — его можно найти на Debug View Heirarchy.

Так же предлагаем график зависимости цвета Home Indicator'а и background'а.

goo.gl/g6nTyA
🕶 Новости, Хайп, Де...

☄️ Шок, только что Apple представила нововведения iOS 11.3 до релиза бета-версии.
Из нового:
— ARKit 1.5
— «Здоровье» батареи
— Бизнес чаты в iMessage
— Новые Animoji

goo.gl/YFsVRN

🌎 Недавно появился Online Swift Playground, где вы можете скомпилировать ваш Swift код прямо в вебе.
Главная фича — возможность использовать сторонние фреймворки через Swift Package Manager.

goo.gl/o7NuZL
🐤 Рубрика «Полезные решения»

Мы собрали несколько утилит, которые позволят упростить и автоматизировать ряд рутинных процессов.

📐 IBLinter — это аналог SwiftLint, но, как вы поняли, для .xib и .storyboard файлов.
goo.gl/4GYK3E

🤖 SwiftGen — генератор кода для ресурсов вашего проекта: ассеты, цвета, строки и многое другое.
goo.gl/hp9QH3

🔌 Natalie — кодогенератор для сторибордов. Упрощает создание контроллеров и переходы между ними.
Storyboards.Main.instantiateInitialViewController()
goo.gl/XYsk5p
🦄 Совсем недавно команда Swift запустила форум для обсуждения всего, что связано с языком. Изучили структуру, она достаточно полная, от тем связанных с Server-Side разработкой до обсуждения низкоуровневой системы сборки LLBuild.

Выбрали несколько интересных, на наш взгляд, обсуждений.

🔹 Android Play Store и Swift
Ребята рассказывают о своём опыте публикации приложения в Google Play, о сложностях, с которыми столкнулись.

🔹Обсуждение SIMD типов
В обсуждении поднимается вопрос о том, почему simd типы не Hashable. Если коротко, всё сложно, неопределённо и simd не входит в stdlib.

🔹Ветка Swift 5
Swift 5 становится всё ближе.
🤘 Hard Code with Apple

🦊 Если вам когда-либо было интересно, как работает Swift форматирование в Xcode, то мы предлагаем прочитать про специальное API lib/Syntax, которое лежит в официальном репозитории Swift. Вы можете посмотреть на гайдлайны и структуру API.

Но самое главное — попробовать их своими руками в последнем Development Snapshot! Инструкция в README файле.

goo.gl/QMWvF5
🎬 Мы часто говорим про разработку, но редко про продукт. Отличная статья с 7 полезными советами, как повысить уровень продаж вашего приложения. Подготовили для вас тезисы, ссылка для детального изучения в конце поста.

🖼 Onboarding
Не просите у пользователя огромное количество ненужных данных, лучше познакомьтесь с ним.
Идеальная реализация у Slack.

🙋‍♂️ Social proof
Не забывайте про социальные пруфы, такие как отзывы, служба поддержки, различные интеграции и так далее. Пример – Airbnb.

Demonstrate real value
Преследуйте действительно важные задачи при создании проекта: сэкономить время пользователей, помочь с поиском жилья и так далее.

🏄‍♀️ Appeal to hearts and minds
Не забывайте, что зачастую мы совершаем эмоциональный выбор. Не бойтесь демонстрировать свои ценности и побуждать к действую.
Например, Runtastic.

Ask what’s not working, instead of making assumptions
Используйте обратную связь. Изучайте, что не работает и не ищите отговорок. Максимально быстро внедряйте пожелания и исправляйте ошибки, найденные пользователями.

✈️ Don’t forget to follow up
Есть правило маркетинга, которое гласит, что пользователь должен услышать ваше предложение 7 раз, прежде чем совершить покупку.

📱 Match your product to the platform
Следуйте гайдам вашей платформы.

goo.gl/zKX6Y6
🦇 Рубрика «Быстрый Взгляд»

Подготовили для вас немного разного и быстро читаемого материала. Фреймворк + Статья + Инструмент.

🚙 Google выпустил фреймворк со своими промисами в OpenSource для Swift и Objc.
goo.gl/FkMcgN

🚕 Полезная и короткая статья на тему того, чем отличается OpaquePointer от UnsafePointer в Swift. Спойлер: все зависит от изначального кода на C.
goo.gl/7uoT3i

🚗 Графический редактор для NSAttributedString онлайн с преобразованием в код на Swift или Objc.
goo.gl/VaDkhG
🙈 Осторожно! Russian.

Аналитика is here. Автор задает вопрос — как технический пиар влияет на узнаваемость компаний и желание в них работать?

📈 Самый быстрый рост, самое быстрое падение, самые частопосещаемые офисы, самые интересные доклады, самые технически сильные команды и многая другая аналитика для iOS и Android из 605 опрошенных разработчиков.

goo.gl/3W4C2z
🍃 Swift Package Manager до сих пор остается достаточно сложным в интеграции новых зависимостей, в отличии от альтернатив. И не гарантируется, что ничего не сломается с выходом новой версии Xcode.

🖐 Однако всем любопытным предлагается недавно вышедшая статья с настройкой зависимостей Swift PM.

goo.gl/J2p78M
(Время чтения ~ 3 минуты)
​​⛵️ Интересное в Воскресный вечер

🍭 Задумывались ли вы, почему дизайн в Sketch файле и в вашем iOS приложении часто различаются, если приглядеться? Обычно типографика, градиент и тени не такие, как у дизайнера, хотя все параметры одинаковые.

Автор проводит анализ, показывает разницу и объясняет, почему так.

goo.gl/kvcddE
(Время чтения ~ 4 минуты)
​​🐬 Исчерпывающая статья про клиент-серверный фреймворк Moya. Или про то, как, наконец, перестать использовать Alamofire напрямую.

🕸 Плюсы, минусы использования каждого компонента, подводные камни и подсказки.

goo.gl/s7N8Ry
(Время чтения ~ 10 минут)
🔥 Топ тема

💧 Swift Evolution proposal SE-0195 принесет изменения, близкие к поведению скриптовых языков в Swift 5.

Аттрибут @dynamicMemberLookup позволит брать properties через subscript, когда сам класс этих properties не содержит.

А безопасно ли это? На этот, и другие вопросы, вы найдете ответ в статье ниже.

goo.gl/PXF6AR
(Время чтения ~ 10 минут)
​​🎒 Очевидно, что есть разница в скорости и размере занимаемой памяти среди разных способов сериализации данных. Но что лучше использовать?

Автор следующей статьи сравнил JSON, MessagePack, Plist и KeyedArchiver, подробно расписав сильные стороны каждого. Но решение остается за вами 😉

📈 Тест-код сравнения:
goo.gl/rzbMEH

📉 Статья:
goo.gl/cqBSLM
(Время чтения ~ 5 минут)
🗼Учиться всю жизнь...

🥝 Нашли репозиторий с roadmap'ом для изучения тем в iOS разработке.

После того, как смогли объяснить тему вашему коту, включаете чекбокс в репозитории, который предварительно форкнули. Очень полезно для понимания своего уровня и перспектив дальнейшего роста!

▫️ Сам репозиторий:
goo.gl/Rjhnpd

▫️ Пояснительная статья:
goo.gl/Jzjao2
(Время чтения ~ 2 минуты)
🦂 Доклады с конференции dotSwift.

Самые интересные на наш скромный взгляд:
▫️ Protocols All the Way Down
▫️ Extending the Standard Library
▫️ Supporting Objective-C in a Swift codebase

Приятного просмотра!

goo.gl/pXJX19
(Всего 10 докладов)
🕵️‍ Альфа-Банк ищет iOS UI Engineer. Его особые приметы:
▫️ Обожает создавать качественный UI
▫️ Делает просто нереальные анимации
▫️ Пишет чистый код

Если это вы – поспешите откликнуться
bit.do/ios-ui-engineer
⛳️ Рубрика «Быстрый Взгляд»

Собрали для вас немного интересных фактов и новостей, которые недавно появились.

🍓 Apple выпустила свой кросс-платформенный фреймворк SwiftNIO для event-driven сетевых приложений. Аналог Netty на Swift.
goo.gl/ujtFfp

🍈 Еще 22 февраля Apple разрешила добавлять до 10 скриншотов на страницу вашего приложения в App Store.
goo.gl/L9xmdS

🥑 В Google Summer of Code участвует Swift. С 12 по 27 марта принимают заявки.
goo.gl/jgW295
🦁 А теперь думаем о пользователях

🦑 GDPR (General Data Protection Regulation) — это европейский регламент о персональной информации. Он очень сильно расширит зону ответственности за сбор персональных данных и опишет рамки их использования. Начинает действовать с 25 мая.

🌋 Что интересно, в России об этом не говорят, хотя это очень важно (конечно, если у вас есть пользователи из Европы).
Штраф за нарушение регламента может достигать 20.000.000€ или 4% от денежного оборота компании.

Выделите время, и почитайте про то, как же GDPR повлияет на вас. И главное — на ваших пользователей.

goo.gl/di7gvT
(Время чтения ~ 10 минут)
​​🕊 Пользователи iOS часто замечают визуальные проблемы системы и приложений. Их еще называют Glitches.

☘️ Нашли статью, где автор рассказывает про один из видов Glitch'а — Jank. А также, как стоит с ним бороться не только разработчику, но и дизайнеру.

Статья написана с огромным количеством визуальных примеров этих самых Jank'ов.

goo.gl/n5FzPv
(Время чтения ~ 8 минут)
​​🤽‍♂️ Каждый из нас немного дизайнер

🍡 Нашли статью, где показана разница 7 «Хороших» и «Отличных» анимаций.
Простое сравнение взаимодействий с одинаковыми целями посредством гифок и небольшого количества текста.

goo.gl/4wypPf
(Время чтения ~ 3 минуты)