iOS Такой 🍏
3.39K subscribers
420 photos
10 videos
2 files
301 links
IT | Подкасты | Apple | iOS Материалы | Swift

Реклама: @new_repository

Тёплый чат: https://t.me/+tzWmsOMTPpFjMzAy

Бусти: boosty.to/dimov_ios
Download Telegram
Инжиниринг больше про людей, чем про технологии

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

Мы отсняли для вас большое количество выпусков и скоро их будем выпускать. Один из них уже в пятницу.

1. Процесс онбординга
2. Подготовка к собеседованиям через Outtalent
3. Senior Androind делает фичу в iOS проекте


И еще много чего интересного. Всем спасибо🙂🔥
Инсайдеры показали ранние версии Dynamic Island для iPhone

До выпуска Dynamic Island в iPhone, Apple рассматривала несколько альтернативных дизайнерских идей.

Одна из концепций включала в себя всплывающее меню у правого края дисплея для отображения времени, уровня сигнала связи, Wi-Fi, заряда батареи, а также уровня яркости и громкости.

Другая предполагала использование чёрного цвета для верхней части экрана, чтобы скрыть вырез, делая его практически невидимым на контрастных OLED-дисплеях.

Но в итоге выбрали Dynamic Island — интерактивный интерфейс, который адаптируется к различным событиям в iOS. Это позволило Apple эффективно интегрировать вырез в интерфейс пользователя, превратив его из потенциального недостатка в уникальную особенность дизайна.
Идеальный онбординг в IT компанию

Всем привет! Сегодня у нас в гостях - Вадим, iOS разработчик с большим стажем. И мы поговорим про тему онбординга.

Что такое онбо́рдинг? Это знакомство нового сотрудника или клиента с организацией, её продукцией или услугами. Узнаем как измерять эффективность онбординга, плюсы и минусы онбординга, поймем что такое плохой онбординг, а какой хороший.

Всем приятного просмотра.
Ссылка на телеграм канал гостя.
Continuations для взаимодействия асинхронных задач с синхронным кодом

В Swift были представлены новые функции, которые помогают нам адаптировать старые API в стиле completionhandler к современному асинхронному коду.

Continuations позволяют нам создать обертку над обработчиком завершения (completion handler) и асинхронными функциями, чтобы мы могли обернуть старый код в более современный API. Например, функция withCheckedContinuation() создает новое continuation, которое может запускать любой код, который мы хотим, а затем вызывает resume(returning:), чтобы отправить значение обратно, даже если это часть обработчика завершения (completion handler).

Предлагаю вместе посмотреть на реализацию в данной статье.

#digest
🍏Вышла iOS 17.4 с поддержкой сторонних магазинов приложений для ЕС.
Please open Telegram to view this post
VIEW IN TELEGRAM
Оптимальный архитектурный шаблон iOS

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

Автор: Олег Бахарев. iOS - тимлид.
Как создать приложение для чата iOS

Используя SwiftUI и Firebase, мы создадим основу для приложения для чата. С его помощью вы сможете добавить функциональность чата в свое приложение. Руководство разбито на следующие разделы:

00:00 Вступление
04:17 Дизайн
07:42 Предположения
08:58 Аутентификация
13:37 Авторизация
23:02 Модель
31:23 Просмотров
47:32 Заключение
🍏Apple разрабатывает MacBook с гибким экраном

• Запуск планируется к 2027 году
Please open Telegram to view this post
VIEW IN TELEGRAM
🍏Еврокомиссия потребовала от Apple объяснений, почему она заблокировала учетную запись Epic Games в App Store.
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие дамы канала, поздравляем вас с 8 марта! Желаю большого счастья, любви и исполнение всех желаний❤️

Так же отдельно хочу поздравить нашу ведущую Екатерину @Neifmetus с женским днём! Катя, всех благ 💥☀️
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🍏Новые iPad 2024 будут иметь фронтальную камеру, расположенную на длинной грани.
Please open Telegram to view this post
VIEW IN TELEGRAM
Обработка URL-адресов Deeplink в SwiftUI

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

Вы можете использовать модификатор view в SwiftUI или метод AppDelegate для обработки входящих URL-адресов и соответствующей навигации. При разумной настройке вы можете открывать URL-адреса внутри приложения и перемещаться к местам назначения в любом месте приложения.

Настройка, реализация и пример кода в статье.
Лучшие практики управления состояниями в SwiftUI

Эффективное управление состояниями — ключ к созданию стабильных и отзывчивых приложений в SwiftUI. Ниже приведены некоторые лучшие практики управления состоянием в ваших приложениях SwiftUI:

1. Используйте State и Binding для простых локальных состояний.
2. Для сложных состояний используйте ObservedObject и Published.
3. Используйте EnvironmentObject для совместного использования состояния в несвязанных представлениях.
4. Избегайте больших State переменных.
5. Отложите сложные вычисления и побочные эффекты
Разработка, управляемая тестами (TDD), для исправления ошибок

Test-Driven Development (TDD) — это техника, которая требует, чтобы вы сначала написали тест, прежде чем приступать к реализации решения. Хотя разработчики используют эту методику и в целом во время разработки, есть способ применять ее только для исправления ошибок.

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

Разработка, управляемая тестами — это отличная техника, позволяющая увеличить покрытие кода тестами и одновременно повысить качество кода

В статье примеры кода, плюсы и минусы данного подхода.
Что такое состояние гонки (race condition)

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

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

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

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

#digest
Swiftfin: видеоплеер Jellyfin для iOS и tvOS

Swiftfin — это современный видеоклиент для медиасервера Jellyfin (от этой же компании — альтернатива проприетарным Emby и Plex, позволяющая передавать медиа с выделенного сервера на устройства конечных пользователей через множество приложений). Плеер написан на Swift, что позволяет максимально использовать возможности VLC для прямого воспроизведения и выглядеть нативно на всех классах устройств Apple.
JTAppleCalendar: библиотека календаря на Swift

JTAppleCalendar — календарь для iOS на Swift. Полностью настраиваемый, с настройками ячеек и общего вида, горизонтальным и вертикальным режимом, изменяемыми заголовками, выбором диапазонов и всем прочим.
В пятницу в Москве в концертном зале «Крокус Сити Холл» произошел чудовищный теракт.

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

В ближайшее время мы не будем публиковать материалы.

Берегите себя и своих близких.