TGViewer
Channel Public Channel
iOS Dev

iOS Dev

@iosdev

👨‍💻Автор: Виктор Грушевский (@Viktorianec)

⚒️ База: https://boosty.to/ios_dev | 🤖 @iOSIQBot | https://iosiq.ru

🍏Канал об iOS-разработке, алгоритмах и архитектурах

⭐️ Подготовка к собесам

⭐️ Код. Много кода.

#ios #mobile #swift
Subscribers
7.93K
Photos
1.2K
Videos
153
Links
1.5K

Showing posts older than #1246 · Back to latest

Older Posts 20 shown
Post #1245 2.42K
Редизайн приложения Photos!

Фильтр по скриншотам (очень полезная фича при разработке), новый интерфейс для сортировки по времени, ввели Collections - можно искать фото по темам.

Коллекции можно сортировать, пинить и не только.

Добавили карусель с лучшими моментами и Featured Photos (всё можно кастомизировать).

😃 iOS Dev
  • 🔥 5
  • 👍 4
  • 👏 2
  • 😭 2
  • ❤‍🔥 1
  • ☃ 1
  • 💯 1
Post #1244 2.49K
Wallet

💰Tap to cash! - фича для оплаты, просто направив телефон друг на друга.

Где будет работать, Крейг? Где?!

😃 iOS Dev
  • 🏆 6
  • 💯 4
  • 🎅 2
  • 🔥 1
  • 👏 1
  • 👌 1
  • 🎄 1
Post #1243 2.39K
Можно скрывать приложения

🕺 Ну наконец-то!

Магические слова: Lock an app.

😃 iOS Dev
  • 🔥 7
  • 👍 3
  • ❤‍🔥 1
  • 👏 1
  • 🎉 1
  • 💯 1
  • 🏆 1
  • 😎 1
Post #1242 2.46K
Control Center

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

Для этого появится новый Control API.

😃 iOS Dev
  • ❤‍🔥 10
  • 👍 6
  • 🎉 2
  • 🔥 1
  • 👏 1
  • 👌 1
  • 💯 1
Post #1241 2.65K
iOS 18

Расширили работу с иконками на домашнем экране (в андроиде уже тысячу лет?).

😎 Иконки можно красить, привет, tintColor!

😃 iOS Dev
  • 👍 15
  • 🔥 7
  • 😭 3
  • 👏 1
Post #1240 2.65K
Начали с показа обновлений Vision OS 2

Из крутых фич, теперь технологии позволят создавать из 2D фото с погружением.

Пообещали упростить работу с технологиями, добавили новые API. Volumetric APIs, TabletopKit, Enterprise APIs.

Добавили 8 новых стран, где можно купить.

😃 iOS Dev
  • 🔥 12
  • 👏 8
  • 👍 5
  • ⚡ 2
  • ❤‍🔥 1
  • 🎉 1
  • 👌 1
Post #1238 3.12K
Алгоритмы: терминология и примеры

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

Например, если код использует один цикл, в котором мы проходим по всем n элементов входных данных, сложность O(n).
Если у нас есть два вложенных цикла, это O(n^2), и так далее.

📖 Конечно, в канале уже был пост про сложность алгоритмов.

Но бывают и далеко не самые очевидные моменты.

🧠 Пришло время новой секции в iOS IQ (добавлено две части, на теорию и на оценку кода). Есть и интерактивный формат в тестфлайте.

❤️Получить доступ можно сразу на год.

🐱 А в честь WWDC со скидкой 24% - вот тут (ссылка работает ровно неделю).

😃 iOS IQ
  • ✍ 6
  • 🔥 5
  • ☃ 2
  • ❤‍🔥 1
  • 👍 1
  • 💯 1
  • 🏆 1
  • 🎄 1
Post #1237 3.32K
Как справиться с секцией на написание кода?

Чтобы оценить кандидата, компании используют одну, либо сразу две итерации:

1️⃣ Лайв-кодинг. Нужно решить техническую задачу перед интервьюерами (от 0.5 до 1.5 часов).

2️⃣ Тестовое задание. Чаще всего на срок от одного-двух дней (иногда неделя).

📖 Вот тут можно ознакомиться с некоторыми полезными советами про прохождению этой секции. Среди них:

🔘 Прочтите условие несколько раз. Как известно в условии вопроса часто половина решения (особенно касается лайв-кодинга).
🔘 Разделите техническую задачу на следующие темы: обязательные требования и дополнительные требования.
🔘 Выпишите вопросы. Уточните их у интервьюера.
🔘 Убедитесь, можно ли юзать сторонние либы перед тем, как их добавлять.

При подготовке также важно определиться, какой именно архитектурный паттерн вам нужен.

✅Другие советы и задачи можно найти вот тут.

😃 iOS Dev
  • 👍 5
  • 🔥 4
  • 👏 3
  • ❤‍🔥 1
  • ☃ 1
  • 💯 1
  • 🎅 1
  • 🆒 1
Post #1236 3.66K
iOS Dev Вопрос из приложения iOS IQ 🐱 Попробуйте догадаться, какая временная сложность у алгоритма для решения задачи «Ханойские башни». Это пример из приложения, доступного на бусти (кстати, есть хардкор-режим для настоящих профессионалов). ✅Уже сейчас можно…
  • 👍 8
  • 👏 3
  • ☃ 1
  • 🔥 1
  • 💯 1
  • 🫡 1
  • 😎 1
Post #1235 3.55K
Вопрос из приложения iOS IQ

🐱 Попробуйте догадаться, какая временная сложность у алгоритма для решения задачи «Ханойские башни».

Это пример из приложения, доступного на бусти (кстати, есть хардкор-режим для настоящих профессионалов).

✅Уже сейчас можно попробовать возглавить таблицу лидеров.

😃 iOS Dev
  • ✍ 13
  • 🔥 3
  • ⚡ 2
  • 👏 2
  • 💯 2
  • ❤‍🔥 1
  • 👍 1
  • 🆒 1
Post #1233 3.57K
Post #1232 3.72K
Протоколы в iOS: назначение и примеры

Даже при частом использовании протоколов начинающие разработчики могут не знать все особенности.

Например, Identifiable постоянно нужен в SwiftUI, но почему он обычно применяется для списков? Или CustomStringConvertible, который вполне подойдёт для более удобного дебага наших моделей.

📖 В этой статье разбираются популярные протоколы на примерах кода.

🧠 Ах да, кстати, приложение уже в тестфлайте и вы можете получить ранний доступ.

Кстати, проголосовавшие в опросе будут приятно удивлены списку тем внутри.

😃 iOS Dev
  • 👍 15
  • 🔥 5
  • ❤‍🔥 1
  • ✍ 1
  • 👏 1
  • 🏆 1
  • 🆒 1
Post #1231 3.45K
iOS Dev Те, кто подписан на бусти, знают, что кроме ведения канала по мере наличия свободного времени я разрабатываю приложение-компаньон для iOS-разработчиков. С покрытием важных тем, источниками и, надеюсь, интересными вопросами. Сегодня пришло время анонсировать…
  • 👍 6
  • 🔥 4
  • ✍ 3
  • ☃ 2
  • ❤‍🔥 1
  • 👏 1
  • 🎉 1
  • 🆒 1
Post #1230 4.36K
Настраиваемая кнопка с разными состояниями в SwiftUI

Конечно, задача мобильных разработчиков далеко не только в покраске кнопок, но знать несколько подходов и обладать арсеналом таких навыков необходимо.

SwiftUI в несколько раз упрощает создание переиспользуемой кнопки (и добавление конфигов).

📖 Вот тут можно увидеть подходы к созданию такого элемента на реальных примерах.

😃 iOS Dev
  • 👍 4
  • 🔥 4
  • ☃ 2
  • ✍ 2
  • 👏 2
  • 💯 2
  • 👌 1
  • 🏆 1
Post #1229 4.14K
Объяснение использования @preconcurrency в Swift

Если включить -strict-concurrency для своих существующих проектов, то, вероятнее всего, при первой компиляции проекта Xcode выдаст множество предупреждений и/или ошибок.

Этого можно избежать с использованием @preconcurrency, можно использовать для:

📼 functions
📼 types
📼 protocols
📼 imports

С помощью @preconcurrency появляется возможность импортировать старые модули в новый код.

Это отличный способ начать постепенно внедрять строгий параллелизм по мере приближения выпуска Swift 6.

📖 В этом посте рассмотрены примеры использования и ошибки, которые могут встретиться.

😃 iOS Dev
  • 🔥 4
  • 👍 3
  • ☃ 2
  • ❤‍🔥 1
  • 👏 1
  • 💯 1
  • 🏆 1
Post #1228 4.38K
Как сделать иконку приложения анимированной?

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

Bryce Bostwick, разработчик, знакомый по великолепным постам о реверс-инжиниринге, попробовал покопать глубже, и написал большое исследование о том, как создать иллюзию анимации (на самом деле для этого нужно достаточно часто менять эти иконки).

📖 Почитать увлекательную статью можно здесь (и рекомендую посмотреть остальные статьи блога).

📺 В формате видео вот тут.

🛠 Демо-проект (посмотреть и попробовать повторить) доступен на github. Напоминаю про этот пост, если захотите выложить в стор.

✅Больше крутых эффектов можно увидеть здесь или тут.

😃 iOS Dev
  • 🔥 13
  • 🤯 8
  • 👍 4
  • 👏 3
  • 🏆 2
  • ✍ 1
  • 🆒 1
Post #1227 3.95K
Подготовка к собеседованиям: Swift Concurrency

Подготовил вопросы, которые помогут новичкам и опытным разработчикам, знакомым с концепциями параллелизма и заинтересованным в изучении синтаксиса и API Swift Concurrency.

Можно узнать что-то новое о приоритетах, выполнении нескольких задач одновременно и многом другом. Задачи постарался по максимуму покрыть примерами с кодом. Некоторые из вопросов уже добавлены в приложение.

✅Доступ можно получить здесь или тут сразу на год.

Больше важных тем:
🔗 Блок вопросов: многопоточность (и бонус)
🔗 Собеседования: вопросы на понимание кода
🔗 DispatchQueue: практические вопросы

😃 iOS Dev
  • 👍 8
  • 🔥 5
  • 👏 2
  • 🎉 2
  • ✍ 1
  • 👌 1
Post #1226 3.61K
Что означает spacing = nil в SwiftUI?

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

Как можно видеть на гифке, когда используется nil, расстояние между Text и соседними элементами больше не равны.

Из документации Apple:

При установке nil расстояние должно быть дефолтным по умолчанию для каждой пары subviews.

Но, как оказывается, это значение не фиксировано.

📖 В этой статье объясняется, что на самом деле означает значение nil по умолчанию для параметра Spacing.

Кроме того, рассматриваются и другие аспекты, связанные с этим свойством.

😃 iOS Dev
  • 🔥 8
  • 👍 4
  • ☃ 1
  • ✍ 1
  • ❤‍🔥 1
  • 👏 1
  • 💯 1
  • 🏆 1
  • 🆒 1
Post #1225 4.24K
Почему загрузка пакетов с помощью Swift Package Manager занимает слишком много времени?

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

Суть проблемы тут.

Но почему?

На вопрос ответил инженер по инфраструктуре GitHub (обратите внимание на дату комментария), схожая проблема была и в Cocoapods:

Поверхностное клонирование по какой-то причине обходится намного дороже, чем клонирование всего репозитория. К тому же GitHub ограничивает скорость в таких репах, что приводит к значительному увеличению времени.

Хуже того, фетч может вообще завершиться ошибкой по таймауту.

Так в чем же заключается решение?

Очевидно, многие компании используют такой подход. Они создают отдельный реп с предварительно скомпилированным .xcframework, при этом пользователь получит только нужную часть исходного репозитория.

Например airbnb/lottie применила этот подход и уменьшила размер своего репозитория с +300 МБ до менее 500 КБ!

Signal сделал то же самое: отсюда OneSignal-iOS-SDK пришли к оптимизированной версии OneSignal-XCFramework.

📖 Про другой интересный кейс можно прочитать на хабре.

😃 iOS Dev
  • 🔥 33
  • 👍 9
  • ☃ 2
  • ✍ 1
  • ❤‍🔥 1
  • 👏 1
  • 💯 1
  • 🎄 1
Post #1223 4.76K
iOS Dev 🎉 У меня День Рождения [-Onone] Быть профессионалом, безусловно, важно. Желание, а вместе с ним и стремление смотреть вглубь — необходимое качество не только на нашей работе, но и в жизни. Без оптимизации источников за кажущейся ширмой лёгкого контента…
Те, кто подписан на бусти, знают, что кроме ведения канала по мере наличия свободного времени я разрабатываю приложение-компаньон для iOS-разработчиков.

С покрытием важных тем, источниками и, надеюсь, интересными вопросами.

Сегодня пришло время анонсировать разработку официально.

🧠 IQ — приложение-компаньон для iOS-разработчиков скоро в тестфлайте.

Приложение изначально будет доступно только для подписчиков бусти (достаточно уровня База), поэтому если вы хотите поддержать канал, подпишитесь:

❤️❤️❤️❤️❤️ Поддержать канал и получить ранний доступ.

🚀 Дать буст каналу

😃 iOS Dev
  • 🏆 37
  • 🔥 15
  • 👍 3
  • 🆒 3
  • 🤩 2
  • ☃ 1
  • ⚡ 1
  • ❤‍🔥 1
  • 👏 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →