Мобильный кот
2.71K subscribers
88 photos
3 videos
2 files
87 links
Все, что считаю важным про жизнь мобильного разработчика

Шкаф с материалами
https://t.me/cat_with_mobile_cabinet
Download Telegram
May 6, 2021
May 10, 2021
May 18, 2021
🔥 Хекслет и Podlodka Crew представляют: публичное собеседование для middle iOS-разработчика!

Старт 27 мая (сегодня) в 19:00 по МСК

Действующие лица:
- Глеб Лукьянец, iOS-разработчик из команды мобильной инфраструктуры ВКонтакте: уверенно проведет наш собес
- Николай Клубович, уже почти 3 года в мобильной разработке: смело прособеседуется
- Евгений Елчев, Software engineer в Taiga, с огоньком проведет эту сессию

Напоминаем, что публичное собеседование - это учебный формат интервью, а не трудоустройство в прямом эфире. Его проведут по формату классических публичных собеседований от Podlodka Crew: эфир разделён на логические блоки, а в паузах ведущий с интервьюером разбирают, как отвечает кандидат.

Полезные ссылки:
- Про Podlodka Crew: https://podlodka.io/ioscrew
- Youtube-канал Podlodka: https://www.youtube.com/channel/UCOei1E1Vqq10S913OEqTWGw
- Комьюнити Хекслета: https://slack-ru.hexlet.io
- Публичные собеседования Хекслета: https://www.youtube.com/playlist?list=PLo6puixMwuSOa_0EH6X4OXzFAmyQGS3a3
May 27, 2021
June 8, 2021
June 17, 2021
July 1, 2021
July 1, 2021
July 14, 2021
July 25, 2021
🔧LLDB - это низкоуровневый отладчик (debugger), входящий в состав базового элемента компилятора Swift - LLVM. Многие из нас создают программы не зная о том, что могут использовать его возможности при отладке, об этом мы сегодня и поговорим. LLDB имеет множество команд, которые можно использовать прямо в консоли Xcode.

Как только вы приостановили выполнение приложения (например по сработавшему брейкпоинту), в консоли появляется надпись (lldb), сообщаяющая, что вы можете вводить требуемые команды.

1️⃣Вывод значения параметра
Команды print и po, например
(lldb) po UIApplication.shared.delegate.someGlobalSet

При этом в консоли будет выведена полная структура объекта. Команды po и print имею немного отличающийся формат вывода.
po ...
▿ 2 elements
- 0 : 5
- 1 : 6

print ...
(Set<Int>) $R7 = 2 values {
[0] = 5
[1] = 6
}

2️⃣Изменение значение параметра прямо в ходе исполнения
Команды expression и e, например
(lldb) e parameterName = someValue

Эта команда позволит изменить значение параметра parameterName на someValue. При этом прямо в консоли присутсвует автодополнение, а также происходит проверка типов и изменяемости параметров.

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

3️⃣Текущий состав фрейма стека текущего потока
Команда frame, например
(lldb) frame variable

Просто выводит простыню-структуру текущего фрейма (если не помните, что это, то читайте про стек, кучу и память).

Эти команды лишь для затравки вашего интереса. LLDB предоставлет стооолько всего интересно, что я настоятельно рекомендую вам продолжить знакомтсво с ним самостоятельно. Например с помощью этой статьи или этого видео.

Другие полезные штуки по хэштегам #xcode #инструменты #пишемхорошийкод
July 25, 2021
August 17, 2021
Что такое универсальные приложения? У этого понятия, с точки зрения iOS-разработчика, есть два определения:

1) Приложения, которые могут работать не нескольких архитектурных решениях (различных устройствах, операционных системах и т.д.). Например, это единое для iOS, iPadOS и macOS приложение. Это круто, но об этом не сегодня.

2) Приложения, пользователем которого может стать человек вне зависимости от региональных и физических особенностей. И именно об этом я хотел бы сказать несколько слов.

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

При создании универсальных приложений вы решаете три вопроса:

Вопрос 1. Локализация - это поддержка приложением нескольких языков. Некоторые относят сюда и часовые пояса/календари, но нет, так как есть ...

Вопрос 2. Интернационализация - это поддержка региональных особенностей пользователя, например форматов чисел и валют, календаря, формата времени и т.д.

Решение двух этих вопросов позволит вам значительно расширить аудиторию приложения, а значит и потенциально повысит продажи.

Немного подробнее об этом можете прочитать в моем гите.

Вопрос 3 - Доступность (Accessibilities). На этом я бы хотел заострить ваше внимание. Крайне важно, чтобы вы создавали универсальные приложения, доступные людям с (не)ограниченными возможностями, например слепым. Более того, для этого достаточно лишь немного предварительно продумать структуру интерфейса и воспользоваться доступными из коробки средствами.

Более того, поддежка механизмов доступности позволит вам:
- исключить излишнюю перегруженность интерфейса (если вы не можете добраться до элемента с помощью встроенного в iOS механизма доступности, то вероятно структура интерфейса слишком перегружена);
- подготовить приложение к UI-тестам, так как для их реализации требуется использование механизмов Accessibilities.

И вот вам отличный выпуск подкаста Запуск завтра "Как незрячие люди пользуются технологиями и как сделать их доступнее" - о важности того, чтобы ваши приложения были доступными. Рассказывает незрячий пользователь о крутости Яндекс.Такси и ужасном состоянии Яндекс.Go.

Apple Подкасты
Яндекс Музыка
YouTube
August 17, 2021
🗺 Roadmap - карта тем для начинающего разработчика.

Отличный проект прекрасной статьи от @artyom_ivanov. Пока еще версия 0.1 (как говорит автор), но надеюсь на скорый релиз 1.0 😀

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

https://artyom.space/swift-roadmap/

#продуктивность
August 21, 2021
August 22, 2021
August 22, 2021
September 23, 2021
September 29, 2021
September 30, 2021