ErrorNil. iOS-разработка
616 subscribers
254 photos
51 videos
16 files
298 links
Пишем код, разрабатываем приложения, учимся

Сайт школы https://error-nil.namari.ru/
YouTube https://www.youtube.com/@errornil
VK Видео - https://vk.com/video/@errornil

По всем вопросам пишите мне @ibatyrgereev
Download Telegram
К слову про новую функцию сбера
1
Forwarded from postPhys
This media is not supported in your browser
VIEW IN TELEGRAM
Все еще не Apple Pay

Сегодня появилась новость о том, что Сбер запустил приложение для бесконтактной оплаты с iPhone, используя технологию Bluetooth Low Energy (BLE)

Технология, которую использует Сбер, похожа на механизм оплаты «Волна», анонсированная ещё осенью 2024 года, который тоже предлагает оплату по BLE.
Он подразумевает передачу по Bluetooth платёжной QR-ссылки и последующее проведение оплаты по ней через Систему быстрых платежей.

Если кратко: та же оплата по QR, только вы не сканируйте код, а передаете по Bluetooth

Но у меня есть вопросы к этой технологии, особенно с точки зрения безопасности:

- Apple Pay использует NFC, у которого короткий радиус действия (около 3-5 см), что снижает риск перехвата сигнала.

Еще карта не передается терминалу напрямую, используется токенизированный номер (Device Primary Account Number) и уникальный криптокод для каждой транзакции

- Сбер применяет Bluetooth (BLE), который действует на значительно большем расстоянии.
Это теоретически повышает риск, что злоумышленник может попытаться перехватить сигнал

Не универсально и не удобно: работает только на терминалах Сбера и нужно каждый раз запускать приложение
И да, вопрос на повестке дня: сможет ли работать без интернета и как будет работать при сбоях запуска приложения?

Решение от Сбера позволяет оплачивать с iPhone, но это компромисс: ограниченная инфраструктура и зависимость от приложения.
По мне, лучше использовать Qr-коды для бесконтактных платежей
41👍1
Немного свежих отзывов от ребят) всегда приятно получать хороший отзыв о своей работе, пусть тут тоже повисит
6👏6
По закону с 1 сентября на всех смартфонах продоваемых в РФ должен быть предустановлен RuStore, но по понятным причинам на айфонах такого не сделать, и был не слабый такой кипишь, что айфоны перестанут продавать (не знаю кто в это верил), но в итоге ничего не изменилось, как продавали так и будут, просто с определенной пометкой и ВСЕ.

Это конечно накладывает опредлеленную ответственность на продавцов, но с точки зрения покупателей в сущности ничего не поменялось, и слабо верится, что цены из-за этого взлетят, скорее всего подъем цен возможен был до 1 числа, так как из-за паники все ринулись обновлять свои телефоны, но такого я тоже не замечал, возможно просто все уже ко всему привыкли и не реагируют как раньше, в общем как всегда главное, что бы не стало хуже))

Но пару слов о RuStore, как бы кто к нему не относился, но я считаю что это отличная альтернатива, не секрет, что я пользуюсь пикселем и этот магазин очень здорово выручает, надеюсь в перспектике и до нас дойдут альсторы на айфонах
🔥6👍2
Наконец-то вышли финалки, теперь можно и обновляться, в последние бетки были достаточно стабильны, так что финальные версии думаю тоже без особых проблем будет (наверное), так что если ждали что бы обновиться, думаю время пришло

UDP/
Обновляйте лучше отсюда https://xcodereleases.com/ а то через app store замучаешься ждать
5👍1
Вопрос:
Как избежать утечки памяти? И почему именно так? Делитесь в комментах
К слову о предыдущем вопросе
Forwarded from iOS Broadcast (Андрей Зонов)
⚠️ Как использовать [weak self] в задачах параллелизма Swift?
Навалим немного базы:[weak self] используется для предотвращения утечек памяти в замыканиях. В обработчиках завершения [weak self] и guard let self используются для проверки существования self перед продолжением выполнения. Но SE-0269 позволяет использовать неявные self-захваты в ситуациях, когда замыкания не сохраняются, что снижает вероятность утечек памяти.

Проблемы с [weak self] в Task
🟢Task начинает выполняться сразу после создания, что уменьшает вероятность освобождения self.
🟢Использование guard let self else { return } в начале Task не предотвращает утечку памяти, так как Task удерживает strong ссылку на self до завершения.

Предотвращение утечек памяти в Task
🟢Можно использовать nil проверку или guard let self else { return } внутри Task для проверки существования self.
🟢Для длительных задач можно перемещать guard let self else { return } внутрь цикла, чтобы захватывать strong ссылку на self только при необходимости.

Рекомендации по использованию [weak self] в Task:
⚠️ Большинство Task замыканий не требуют [weak self], так как Task обычно существует недолго
⚠️ Если необходимо избежать утечек памяти, не используйте guard let self else { return } в первой строке Task
⚠️ Разворачивайте self только тогда, когда это нужно, и храните его как можно короче
⚠️ Используйте self? для избежания полного разворачивания self
⚠️ Если возможно, захватывайте только необходимые свойства, а не весь self
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥5
Новый ролик, который я хотел давно написать, обязательно смотрим, всем будет полезно.

Просьба ребята, оставить любой комент и лайк поставить, что бы видео набирало просмотры))
15🔥3
Хочу посоветовать классный канал 30 Seconds To Offer. О том как прокачать CV, готовиться к собесам, избежать ошибок и выбрать правильную стратегию поиска. Автор - ментор с опытом, который помогает упаковать себя так, чтобы получить оффер. Очень полезно, если вы в поиске работы или думаете о карьерном росте.
4👍4🔥31