en
Feedback
iOS Dev

iOS Dev

Open in Telegram

👨‍💻Автор: Виктор Грушевский (@Viktorianec) ⚒️ База: https://boosty.to/ios_dev | 🤖 @iOSIQBot | https://iosiq.ru 🍏Канал об iOS-разработке, алгоритмах и архитектурах ⭐️ Подготовка к собесам ⭐️ Код. Много кода. #ios #mobile #swift

Show more
7 883
Subscribers
+324 hours
+27 days
-3530 days
Posts Archive
iOS Dev
7 883
А может ну его всё, и в TikTok пойти? 🛠 Ладно-ладно, у нас технический канал, а вы о чём подумали? Вот вам история о том, ка
А может ну его всё, и в TikTok пойти? 🛠 Ладно-ладно, у нас технический канал, а вы о чём подумали? Вот вам история о том, какие вопросы могут задать в крупных компаниях на собеседовании. Например, в TikTok. Пусть и не с хэппи-эндом, но история любопытная. Кандидат прошёл два интервью по Zoom, каждое по 45 минут — в течение одной недели. Первый этап состоял из двух частей. - Термины iOS. - Что нового в мажорной версии? На момент собеседования интервьюер хотел услышать про виджеты. - Попросили оптимизировать небольшой участок кода. - Спросили про разницу setNeedsLayout, layoutIfNeeded, layoutSubview. - Проверили знание того, как найти краши при нехватке памяти без использования Crashlytics. Во второй части попросили решить задачу, которая на скриншоте. Второй этап Целиком и полностью был посвящен проектированию. А также спросили про самый жёсткий баг, на поиски которого ушло больше всего времени. 📖 В конце статьи автор делится советами, как пройти собеседование, или хотя бы повысить шансы на успех.

iOS Dev
7 883
Анализ HTTP-трафика с помощью стандартных инструментов Xcode 👨‍🎓 На прошлогоднем WWDC было множество полезных сессий, одна
+4
Анализ HTTP-трафика с помощью стандартных инструментов Xcode 👨‍🎓 На прошлогоднем WWDC было множество полезных сессий, одна из недооценённых — объяснение работы с инструментом по анализу трафика. Michael Abadi Santoso кратко сформулировал принципы для использования Instruments Network для записи и анализа HTTP-трафика вашего приложения. Вот тут рассказывается, как исследовать и визуализировать поведение сеансов, задач и отдельных HTTP-запросов, чтобы обеспечить эффективную передачу данных и соблюдение конфиденциальности. 💻 Но можно и посмотреть картинки.

iOS Dev
7 883
Сохранение конфиденциальных данных с помощью кейчейна в Swift При разработке приложений для iOS часто возникает необходимость
Сохранение конфиденциальных данных с помощью кейчейна в Swift При разработке приложений для iOS часто возникает необходимость хранить конфиденциальные данные (пароль, токены, секретные ключи и т.д.) локально. Для начинающих разработчиков первое, что приходит на ум, это хранить их с помощью UserDefaults. Однако, как мы все знаем, хранение конфиденциальных данных с помощью UserDefaults - очень плохая идея, потому что данные, хранящиеся с помощью UserDefaults, не шифруются и крайне небезопасны. 🏦 Для безопасного хранения конфиденциальных данных локально, мы должны использовать keychain (связку ключей), предоставляемую Apple. Это довольно старый фреймворк, поэтому, как вы увидите позже, его API недостаточно Swifty, как у других современных фреймворков Apple. 📖 В этой статье рассказывается, как создать универсальный хелпер, работающий как в iOS, так и в macOS, который сохраняет, обновляет, читает и удаляет данные с помощью keychain.

iOS Dev
7 883
Три золотых правила для weak self 🙈 A strong-retained self не всегда retain cycle. 🐵 A weakly retained self никогда не буде
+2
Три золотых правила для weak self 🙈 A strong-retained self не всегда retain cycle. 🐵 A weakly retained self никогда не будет retain cycle. 🙉 Обновите self до strong в верхней части замыканий для избежания странного поведения. Chris Downie в своём разборе показывает, почему это действительно так на примерах. Эти правила могут повторяться, но они приведут к более безопасному коду, о котором гораздо легче рассуждать. 😉А ещё эти правила проще заретейнить, бррр, простите, запомнить.

iOS Dev
7 883
Ранее публиковал результаты исследования зарплат для iOS-разработчиков в РФ. Сегодня прочитал о похожем отчёте в другом мире.
Ранее публиковал результаты исследования зарплат для iOS-разработчиков в РФ. Сегодня прочитал о похожем отчёте в другом мире. Решил поделиться с вами структурированными цифрами по данным сайтов PayScale, Glassdoor, ZipRecruiter и Indeed. А больше деталей, в том числе и по начальным зарплатам при входе в профессию, можно прочесть здесь.

iOS Dev
7 883
Как подключиться к Wi-Fi в iOS с помощью Swift? 🛠 Для этого нужно добавить немного capabilities. Это "Hotspot Configuration"
Как подключиться к Wi-Fi в iOS с помощью Swift? 🛠 Для этого нужно добавить немного capabilities. Это "Hotspot Configuration" и "Network Extensions". В коде мы создаём экземпляр нашего конфига, а затем подключаемся. Должен быть показан системный диалог, после которого и произойдет подключение. Иногда может занять несколько секунд. #интересное

iOS Dev
7 883
Как добавлять и обрабатывать действия для push и local notifications в iOS Вероятно, вы знаете, что многие приложения предоставляют такую опцию для своих уведомлений. 💻 Делюсь с вами способом, как создавать такие действия для своих проектов. 😉Кстати, ранее писал о способе тестирования пуш-уведомлений на симуляторе.

iOS Dev
7 883
Ещё один материал про поиск утечек памяти Тема остаётся актуальной и сложной, поэтому по возможности продолжу делиться с вами
+3
Ещё один материал про поиск утечек памяти Тема остаётся актуальной и сложной, поэтому по возможности продолжу делиться с вами найденной информацией. В статье Vitor рассказывает не об одной, а сразу о трёх техниках для поиска утечек в iOS. Что ж, что-то из этого точно стоит взять на заметку! 👏 212

iOS Dev
7 883
Разобрал структуру Swift Package. Не исключаю, что многие уже несколько раз их создавали по тем или иным причинам. 🛠 Хочу верить, что остальным этот разбор может пригодиться или покажется любопытным.

iOS Dev
7 883
Работа с файлами конфигурации Xcode 🛠 Узнайте, как управлять различными окружениями iOS с помощью файлов .xcconfig. В прошло
Работа с файлами конфигурации Xcode 🛠 Узнайте, как управлять различными окружениями iOS с помощью файлов .xcconfig. В прошлом руководстве можно ознакомиться со способом, использующим вкладку настроек Xcode для сборок develop, staging и release в нашем iOS-приложении. В этой статье рассматривается альтернативный способ достижения тех же результатов — с помощью файлов конфигурации Xcode .xcconfig. 📖 Давайте почитаем.

iOS Dev
7 883
Написал о примере использования Network для отслеживания сетевого соединения 😉А ещё там можно найти вариант для использовани
Написал о примере использования Network для отслеживания сетевого соединения 😉А ещё там можно найти вариант для использования Network Link Conditioner на маке. 🤔Наверное, пора уж наконец избавиться от Reachability в некоторых проектах.

iOS Dev
7 883
Сравнение системных настроек на Mac 1984 года с современнным интерфейсом. 😳Это не уменьшенная картинка, это её реальный разм
Сравнение системных настроек на Mac 1984 года с современнным интерфейсом. 😳Это не уменьшенная картинка, это её реальный размер пиксель-в-пиксель.

iOS Dev
7 883
📖Подсчёт ссылок (reference counting) в Swift ❗️Внимание(!): Это не статья о подсчете ссылок на уровне новичка. Автор рассчит
📖Подсчёт ссылок (reference counting) в Swift ❗️Внимание(!): Это не статья о подсчете ссылок на уровне новичка. Автор рассчитывает, что у вас есть базовые представления об ARC в Swift. Далее автор сравнивает механизмы до swift 4 и позже, рассказывая, что именно поменялось. 🛠Для этого в статье приводится несколько примеров с разъяснением того, как и что работает. 🧐Советую добавить статью себе в избранное, чтобы почитать её позже, а не утром понедельника.

iOS Dev
7 883
📖Написал руководство по тестированию push-уведомлений на симуляторе. 🧑‍💻Вполне может пригодиться, если вам нужно быстро накидать конфиг кастомного уведомления и проверить его сразу же без использования внешних инструментов.

iOS Dev
7 883
Случайности не случайны? Вы все и так знаете, что алгоритмы в нашей жизни — неотъемлемая составляющая. Скорее всего замечали, что иногда, сказав что-либо вслух, потом в каком-то приложении вы видите объявление именно про это. В последних мажорных обновлениях iOS даже появились индикаторы, которые говорят о том, что включена камера, например, или микрофон. Для Android ситуация не то чтобы лучше. Когда мы выбираем фильм, например, мы ориентируемся также на алгоритмы. Оценки на кинопоиске, оценки на imdb, может даже запускаем что-то вроде «подобрать фильм по вкусу». А если заказываем еду — то смотрим на то, что совпадает с нашими предпочтениями, и уже потом делаем выбор. Конечно, это нормально, но что если мы что-то упускаем? Что, если существует и какой-то другой мир, за пределами рекомендаций? Он не будет лучше или хуже, он будет иным, не тем, что вы ожидали. Что, если вместо того, чтобы пойти на очередную премьеру в кинотеатре — просто прогуляться? Или выбрать заведение не с 5 звездами, а посмотреть, что там готовят в паре кварталов отсюда в случайном месте? Здесь не будет выводов, и уж тем более руководства к действию, но я хотел бы, чтобы вы попробовали задать вопрос из заголовка самим себе. Интересное рассуждение об этом можно послушать в одной из лекций TED на английском или на русском языке.

iOS Dev
7 883
MVC, MVP, MVI, MVVM и VIPER В своей статье Pınar Koçak рассказывает о том, зачем вообще нужны шаблоны проектирования. Кроме э
+5
MVC, MVP, MVI, MVVM и VIPER В своей статье Pınar Koçak рассказывает о том, зачем вообще нужны шаблоны проектирования. Кроме этого, на базовом уровне объясняется, что из себя представляет каждая из архитектур. 👏 164

iOS Dev
7 883
Sensor Tower опубликовал отчёт по использованию мобильных приложений Общий вывод Глобальный рост доходов от приложений в 1 кв
+2
Sensor Tower опубликовал отчёт по использованию мобильных приложений Общий вывод Глобальный рост доходов от приложений в 1 квартале 2022 года не изменился, в то время как использование выросло почти на 5%. Сохраняется двухкратный перевес доходов в App Store по сравнению с Google Play (вдруг вы решили, стоит ли менять платформу разработки). Вполне ожидаемый рост категории с приложениями, связанными с медициной. По сравнению с двузначным ростом, наблюдавшимся в обоих магазинах в 2021 году, в первом квартале 2022 года есть небольшое замедление. Это свидетельствует о нормализации рынка после резкого роста во время COVID-19, а также о влиянии нескольких факторов, например, повышения стоимости жизни.

iOS Dev
7 883
Как я вижу приближающийся дедлайн Все уже посмотрели «Разделение»?

iOS Dev
7 883
‼️«Альфа-Банк» в App Store - всё. Apple из-за санкций удалила приложение «Альфа-Банка» из магазина приложений App Store.
‼️«Альфа-Банк» в App Store - всё. Apple из-за санкций удалила приложение «Альфа-Банка» из магазина приложений App Store.

iOS Dev
7 883
📖 Теперь про сравнение map, filter и reduce с for-in можно почитать и на хабре.
📖 Теперь про сравнение map, filter и reduce с for-in можно почитать и на хабре.