TGViewer
Channel Public Channel
iOS Mobile | YeaHub

iOS Mobile | YeaHub

@yeahub_ios_mobile

Теория, подготовка к интервью и курсы для iOS разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Subscribers
251
Photos
403
Videos
36
Links
583

Showing posts older than #710 · Back to latest

Older Posts 20 shown
Post #709 40
#Собес #factory #pattern
🤔 Что такое паттерн «Фабрика»?

💬 Кратко:

Паттерн «Фабрика» отвечает за создание объектов и скрывает детали их инициализации. Клиентский код не знает, какой именно класс создаётся. Вместо этого он работает с абстракцией. Это уменьшает связанность и упрощает расширение системы. Фабрика часто используется вместе с протоколами.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #707 47
#Собес #rest #asynchronous
🤔 Можно ли сделать REST-запросы асинхронными? Если да, то как?

💬 Кратко:

Да, REST-запросы можно сделать асинхронными. Ключевая идея — не заставлять клиента ждать завершения долгой операции на сервере. Вместо этого сервер сразу подтверждает получение запроса и возвращает клиенту специальный идентификатор (например, 202 Accepted и Location: /tasks/123). Клиент может позже использовать этот идентификатор для проверки статуса выполнения задачи и получения готового результата. Такой подход часто называют "асинхронным REST" или "Polling Pattern".

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #706 46
#Собес #massive #view #controller
🤔 Какие признаки указывают на плохую структуру view controller?

💬 Кратко:

Плохая структура обычно проявляется в слишком большом контроллере с разными обязанностями. Часто внутри смешаны UI, бизнес-логика, сеть и навигация. Методы становятся длинными, появляется дублирование и много условий. Тестировать такой код трудно, а изменения приводят к регрессиям. Хороший сигнал — когда контроллер «знает слишком много».

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #705 39
#Собес #performance #risk
🤔 Какие риски возникают при длительной обработке данных на клиенте?

💬 Кратко:

Длительная обработка данных может блокировать главный поток и приводить к зависанию интерфейса. Возрастает риск превышения лимитов памяти и времени выполнения. Пользователь может столкнуться с лагами или закрытием приложения. Также сложнее корректно обрабатывать отмену операций и изменение состояния экрана. Поэтому тяжелые вычисления нужно выносить в фон и делать их управляемыми.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #704 46
#documentation #конференции #тренды
📚 Конференции WWDC

WWDC — это ежегодная конференция, проводимая Apple, на которой представляются последние технологии, новые версии операционных систем (iOS, macOS, watchOS, tvOS) и инструменты для разработчиков.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #703 45
#Собес #Nexus_Repository_Manager #artifact_repository #dependency_management
🤔 Что такое Nexus Repository Manager и какую роль он играет в инфраструктуре?

💬 Кратко:
Nexus Repository Manager — это хранилище (репозиторий) для артефактов сборки, таких как библиотеки, пакеты и Docker-образы. Он выступает центральным прокси-сервером между разработчиками и публичными репозиториями, кэшируя зависимости для ускорения сборок. В инфраструктуре он обеспечивает контроль версий, безопасность и единый источник истины для всех артефактов, что критично для воспроизводимости сборок и непрерывной интеграции.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #702 45
#Собес #urlsession #network #layer
🤔 Как организовать сетевой слой на URLSession без сторонних библиотек?

💬 Кратко:

Создают обёртку вокруг URLSession, выделяют Router для формирования запросов (URLRequest), NetworkManager для выполнения задач и парсинга JSON через Codable. Вынесение common-логики (таймаут, заголовки, обработка ошибок) в один класс упрощает поддержку.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #701 50
#Собес #tuple #destructuring
🤔 Можно ли поменять местами две переменные без третьей переменной-помощника?

💬 Кратко:

Да, это возможно с помощью кортежей (tuple). В Swift можно использовать так называемое "tuple destructuring", чтобы обменять значения между двумя переменными без необходимости создания третьей переменной. Это можно сделать так:
var a = 1
var b = 2
(a, b) = (b, a)


📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #700 55
#documentation #интерфейс
📚 Human Interface Guidelines

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

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #699 46
#Собес #Grafana #monitoring #visualization
🤔 Для чего используется Grafana?

💬 Кратко:
Grafana — это платформа с открытым исходным кодом для визуализации и анализа данных. Она используется для создания интерактивных дашбордов, которые отображают метрики из различных источников, таких как Prometheus, InfluxDB или Elasticsearch. Это позволяет командам DevOps и разработчикам в реальном времени отслеживать состояние приложений, инфраструктуры и бизнес-показателей. Grafana помогает быстро выявлять аномалии и проблемы, делая данные наглядными и понятными.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #698 41
#Собес #screen #decomposition
🤔 Как бы ты декомпозировал сложный экран на логические части?

💬 Кратко:

Декомпозиция начинается с понимания ответственности экрана и пользовательских сценариев. Экран разбивается на независимые логические блоки и состояния. Бизнес-логика выносится из view controller. Навигация и побочные эффекты отделяются от отображения. Цель — сделать каждый элемент экрана простым и изолированным.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #697 47
#Собес #let #var #constants
🤔 Let и Var в Swift.

💬 Кратко:

let используется для создания констант, значения которых нельзя изменить после присвоения. var используется для создания переменных, значения которых можно изменять в будущем. Константы подходят для данных, которые не должны изменяться, что повышает безопасность кода.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #696 47
#documentation #конференции #тренды
📚 Конференции WWDC

WWDC — это ежегодная конференция, проводимая Apple, на которой представляются последние технологии, новые версии операционных систем (iOS, macOS, watchOS, tvOS) и инструменты для разработчиков.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #695 46
#Собес #surrogate #primary #natural
🤔 Какие виды первичных ключей бывают?

💬 Кратко:

Первичный ключ — это уникальный идентификатор строки в таблице. Основные виды: простой ключ (состоит из одного столбца, например, ID пользователя) и составной ключ (состоит из нескольких столбцов, например, номер заказа + номер позиции в нем). По способу создания они делятся на естественные (имеющие реальный смысл, как номер паспорта, но их использование рискованно) и суррогатные (искусственные, созданные специально для таблицы, например, автоинкрементное число или GUID). Суррогатные ключи предпочтительнее, так как они неизменны и не зависят от бизнес-логики.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #694 49
#Собес #memory #collection #closure

🤔 Middle IOS разработчик в VK

Проект: VK дзен. Зима 2025. В начале собеседования были вопросы про опыт и лайвкодинг: задача на области видимости, реализация hitTest, point inside.

💬 Вопросы:

- Каковы три основных типа коллекций в Swift?

- Что используется для многопоточности в iOS-разработке?

- Как работает ARC (Automatic Reference Counting) в Swift?

- В чем разница между Array, Set и Dictionary?

- Чем отличается UIView от CALayer?

👉 Все вопросы из этого собеседования (31)

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #693 43
#Собес #designated #initializer #convenience
🤔 Чем отличается convenience от designated?

💬 Кратко:

Designated — это основной инициализатор, который полностью инициализирует все свойства объекта и вызывает инициализатор суперкласса (если это класс). Convenience — это вспомогательный инициализатор, который вызывает другой инициализатор того же класса, чтобы упростить создание объекта.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #692 54
#documentation #интерфейс
📚 Human Interface Guidelines

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

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #691 50
#Собес #rest #url #design
🤔 Почему в REST-API не рекомендуется использовать глаголы в URL и trailing slash?

💬 Кратко:

В REST URL должен описывать ресурс, а не действие над ним. Глаголы дублируют смысл HTTP-методов и делают API менее читаемым. Trailing slash создаёт неоднозначность и может приводить к разным URL для одного ресурса. Это усложняет маршрутизацию и кэширование.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #690 56
#Собес #architecture #mvvm #autolayout

🤔 Middle+ iOS-разработчик в компанию Открытые решения

Техническое собеседование. Вилка 200к+. Опыт в резюме — 4+ года. Было много вопросов по: SOLID, паттернам проектирования, архитектурам iOS (MVC, MVP, MVVM, VIPER), Clean Architecture

💬 Вопросы:

- Что такое рабочий процесс Gitflow?

- В чем разница между структурами и классами?

- Объясните архитектуру MVC

- Какая диспетчеризация используется для Extension-ов в Swift?

- Что такое диспетчеризация в контексте Swift?

👉 Все вопросы из этого собеседования (87)

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
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 →