iOS разработчик, который делится фишками, своим опытом и опытом других.
В этом канале вы сможете найти истории из жизни, подходы к реализации а также новости и тренды из мира iOS-разработки
Авторский канал, iOS разработка
А вы используете dump()?
Например, в данном случае print() выведет только имя класса.
А вот dump() покажет всю иерархию.
На самом деле, у него гораздо больше возможностей (и параметров).
value
Значение для вывода в целевой поток.
name
Метка, которую следует использовать при записи значения. По умолчанию используется nil.
indent
Количество пробелов, используемых в качестве отступа для каждой строки вывода. По умолчанию равно 0.
maxDepth
Максимальная глубина, на которую следует опускаться при записи содержимого значения, имеющего вложенные компоненты. По умолчанию Int.max.
maxItems
Максимальное количество элементов, для которых следует записывать всё содержимое. По умолчанию Int.max.
#dump #print
Работа с Diffable data source и table views с использованием UIKit
🛠 В этом туториале автор приводит пример использования на примере таблицы с двумя секциями.
Несложное руководство, которое точно можно использовать в качестве знакомства и инструмента альтернативного подхода к созданию таблиц. Хотя не исключаю, что у вас оно уже давно в используется в проде)
📖Свой перевод статьи (уже по традиции) опубликовал тут.
Какое там разрешение у iPhone 13 Pro Max?
Если вы иногда забываете, какие скриншоты нужны для App Store или ваш дизайнер, например, спрашивает, какое разрешение у Apple Watch, чтобы реализовать новое приложение, то могу порекомендовать крутой ресурс со сравнением девайсов по огромному количеству характеристик.
Устройства
iPhone, iPad, iPod Touch, Apple Watch, Apple TV.
В общем, достаточно один раз взглянуть, чтобы сохранить себе в закладки.
Кстати, тут есть наглядное сравнение, на каком девайсе какая максимальная ось, что может быть полезно, если вы поддерживаете широкую линейку устройств.
Всё, что нужно знать об утечках памяти
В статье c громким названием автор старается ответить на следующие вопросы.
— Что такое утечка памяти в iOS?
— Почему происходит утечка памяти?
— Из-за чего ARC не может освободить память?
— Утечки памяти в closure?
— Возможные решения.
— Некоторые особые сценарии (утечки памяти в синглтонах и статических классах).
— Closures без эскейпинга.
— Разница между weak и unowned памятью.
— Идентификация утечек с помощью отладчика.
— Некоторые правила.
👏 1.1K
Ресурс, на котором можно сравнить среднее время проверки приложений
Иногда можно заглядывать на эту страницу, если вдруг появится вопрос, неужели у всех так долго? Или, например, а они вообще проверяют сейчас?
Сами же Apple заявляют, что в среднем 50% приложений рассматриваются в течение 24 часов, а более 90% - в течение 48 часов. Если ваша заявка неполная, время рассмотрения может еще больше затянуться или ваше приложение может быть отклонено.
Но мы можем и сами проверить!
Сегодня суббота, поэтому поделюсь с вами историей о разработке, напрямую связанной с iPhone.
Возможно ли, что 26-летний программист за 2 года создаст приложение стоимостью в миллиард долларов?
Этот человек закончил Стэнфорд и принял оффер от Google на одну из самых низкооплачиваемых должностей. Маркетинговый отдел не то чтобы предел мечтаний для технаря, но ради этой работы он отклонил целый ряд предложений от различных стартапов.
Он говорил потом, что ему не была важна должность, главное было попасть в Google.
Он работал в отделе корпоративного развития. На этой должности нужно было постоянно общаться с предпринимателями. Сама же роль в Google заключалась в том, чтобы помогать покупать компании.
В 2008 году экономика пришла в упадок. Его босс посоветовал просто пойти поиграть в гольф, поскольку они больше не собирались покупать компании. И в итоге наш герой покинул Google расстроенным.
Он хотел что-то создать, но не знал, что именно. Он задался вопросом, как сделать лучшую версию другого приложения Foursquare. Затем к нему присоединился ещё один человек, и уже вместе они решили создать что-то интересное и забавное. Но когда они зарелизили первую версию, оказалось, что пользователи посчитали приложение вторичным и неинтересным.
Люди хотели делиться тем, что они делают и тем, где они находятся в любой момент времени, и наши герои всерьёз ухватились за эту идею.
🛠 Команда нового приложения использовала Objective-C, и делала приложение только для iPhone. Они также использовали Python и Django для всей внутренней работы, Postgres и MySql для работы с базами данных.
Ну что, вы уже догадались, о ком я хотел рассказать?
Да, этими героями были Кевин Систром и Майк Кригер и в тот момент они начали работать над Instagram. А уже через пару лет лет Facebook купил Instagram за 1 миллиард долларов.
В этом канале я также планирую делиться качественными опенсорсными решениями.
Сегодня вашему вниманию две либы для создания графиков (диаграмм и так далее).
Charts (CocoaPods/Carthage/Swift Package Manager)
⭐️ 25.2k
SwiftUICharts (SPM - минимальная версия Xcode 11 и iOS 13)
⭐️ 4.2k
Туториал по Core Data
Как признаётся автор, его основная цель заключается в том, чтобы показать, как Core Data работает под капотом, а не в решении какой-то конкретной задачи.
Реализация инкрементных и атомарных хранилищ - одна из увлекательных тем, которые необходимо изучить при погружении в Core Data.
Это отличная возможность расширить свое видение на разработку iOS и посмотреть со стороны, например, в роли создателя фреймворка.
Невероятная жизнь Уолтера Митти (2013)
Рубрика #whattosee
Уолтер Митти — сотрудник отдела иллюстраций журнала Life. Его работа — сплошная рутина, хотя в своих мечтах он уносится очень далеко. В присланных фотографом Шоном О’Коннелом негативах для обложки журнала не хватает одного кадра. Единственный шанс получить фотографию — найти самого Шона. И Уолтер отправляется в долгое путешествие.
При чем тут IT?
Всем полезно иногда выходить из плоскости, чтобы найти решение.