Всех с наступающим 🎄
В новом году желаю приятных открытий, крутых задач и, конечно же, всем выпустить по приложению для Vision Pro и покорить им топы AppStore🎉
В новом году желаю приятных открытий, крутых задач и, конечно же, всем выпустить по приложению для Vision Pro и покорить им топы AppStore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17🎉8❤1
Snapshot Testing
Для тех, кто не знаком с Snapshot-тестированием — это тесты, которые сравнивают эталонный скриншот экрана и скриншот, созданный во время выполнения тестов. Такой подход позволяет фиксировать состояние пользовательского интерфейса и проверять, не "поехал" ли UI после изменения кодовой базы.
Snapshot-тесты выделяются своей простотой в реализации, меньшим количеством флаков и высокой скоростью выполнения, по сравнению с UI тестами. И особенно полезны, когда у вашего UI’я множество состояний и кодовая база часто изменяется.
Для тех, кто не знаком с Snapshot-тестированием — это тесты, которые сравнивают эталонный скриншот экрана и скриншот, созданный во время выполнения тестов. Такой подход позволяет фиксировать состояние пользовательского интерфейса и проверять, не "поехал" ли UI после изменения кодовой базы.
Snapshot-тесты выделяются своей простотой в реализации, меньшим количеством флаков и высокой скоростью выполнения, по сравнению с UI тестами. И особенно полезны, когда у вашего UI’я множество состояний и кодовая база часто изменяется.
Хабр
Как и зачем мы внедрили Snapshot Testing
Привет, Хабр! Меня зовут Никита. Я iOS Teamlead в Московском кредитном банке. В этой статье расскажу про то, как мы пришли к snapshot-тестам и теперь их используем на своем проекте. Статья будет...
👍14❤🔥1
Forwarded from Код Воробья для iOS разработчиков
Что для разработчиков:
– Магазин будут проверять. Нужна аккредитация и 1 млн €
– За каждую установку магазина свыше 1 млн разработчик платит 0.5€
– Магазин может использовать систему платежей App Store, комиссия 3%
– Снижается комиссия для тех, кто останется в App Store: с 30% до 17%, а для SMB с 15% до 10%
Если запутались в комиссиях, вот калькулятор.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Forwarded from iOS Broadcast (Андрей Зонов)
А вот и моя статья, которую я анонсировал. В статье разобрал основные концепции и киллер-фичи SwiftData. Прошелся по основным отличиям и тому, как можно мигрировать с CoreData на актуальную SwiftData. Копнул внутрь SwiftData, рассмотрел, как она устроена под капотом, и подведел итоги стоит ли вообще переезжать на новый фреймворк Apple.
Приятного прочтения, буду благодарен за вашу поддержку и комментарии, ушло больше сил, чем думал
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍1
Из 2D в 3D
Держите статью про реализацию 3D логотипа тремя разными способами: от псевдо до полноценного объемного объекта. В статье подробно описано создание интерактивного однослойного 2D объекта и его пошаговое преобразование в многослойный 3D объект.
Чего только не сделаешь ради дизайнеров и их хотелок 🥲
Держите статью про реализацию 3D логотипа тремя разными способами: от псевдо до полноценного объемного объекта. В статье подробно описано создание интерактивного однослойного 2D объекта и его пошаговое преобразование в многослойный 3D объект.
Чего только не сделаешь ради дизайнеров и их хотелок 🥲
Хабр
Step by step: интегрируем интерактивные 2D/3D-объекты в iOS-приложение
Привет, Хабр! Меня зовут Степан, я iOS-разработчик SimbirSoft. В очередной раз открыв одно из ежедневных приложений, я обнаружил любопытную фичу: интерактивный 3D-элемент в виде звездочки. Казалось...
🔥4
Swift Macros
Достаточно подробная статья про Swift макросы: как их "варить", зачем нужны, как работают и чем их заменяли раньше. Но самое крутое в этой статье, это ссылка на список популярный open source макросов – точно найдете что-то полезное для себя.
Достаточно подробная статья про Swift макросы: как их "варить", зачем нужны, как работают и чем их заменяли раньше. Но самое крутое в этой статье, это ссылка на список популярный open source макросов – точно найдете что-то полезное для себя.
Хабр
Уменьшаем boilerplate с помощью Swift Macros
Сегодня с вами Никита Коробейников, iOS Team Lead в Surf. Никита объяснит, что такое Swift Macros, сравнит кодогенерацию от Apple со сторонними решениями: Liquid , Generamba , Sourcery и расскажет,...
🔥9
«Вы не понимаете, это другое»
А после прочтения статьи поймете, что «Архитектура» это не только MVC или VIPER.
Что бизнес-логика это не все, что кроме UI, а само понятие архитектуры выходит далеко за рамки MVx подобных шаблонов проектирования.
Статья поможет взглянуть на «Архитектуру» в более широком смысле, а также разобраться с некоторыми распространенными заблуждениями в вопросах архитектур.
А после прочтения статьи поймете, что «Архитектура» это не только MVC или VIPER.
Что бизнес-логика это не все, что кроме UI, а само понятие архитектуры выходит далеко за рамки MVx подобных шаблонов проектирования.
Статья поможет взглянуть на «Архитектуру» в более широком смысле, а также разобраться с некоторыми распространенными заблуждениями в вопросах архитектур.
Хабр
Опровергаю пять архитектурных заблуждений
Привет! Я Алексей, iOS-разработчик в Тинькофф. Участвую в развитии архитектуры приложения, провожу собеседования и занимаюсь менторингом разработчиков. За мой рабочий опыт у меня сложилось ощущение,...
🔥7
Сканер штрих-кодов в Озоне
Ловите статью про крутую прикладную задачу – сделать сканнер штрих-кодов. От выбора фреймворка и их сравнений до борьбы с багами, из-за которых пришось понижать его чувствительность.
P.S. Обожаю статьи про сканирования и камеры еще и потому, что одна из моих команд делает платежную умную камеру, и это безумно крутая фича, как технически, так и как продукт. Чего только стоит распознавание котов и собак, которое мы сделали в конце прошлого года🌈 🥰
Ловите статью про крутую прикладную задачу – сделать сканнер штрих-кодов. От выбора фреймворка и их сравнений до борьбы с багами, из-за которых пришось понижать его чувствительность.
P.S. Обожаю статьи про сканирования и камеры еще и потому, что одна из моих команд делает платежную умную камеру, и это безумно крутая фича, как технически, так и как продукт. Чего только стоит распознавание котов и собак, которое мы сделали в конце прошлого года
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Камера как сканер штрих-кодов: проблемы, инструменты и эксперименты
Всем привет, меня зовут Никита, я старший разработчик в компании Озон и работаю над iOS-приложением «Пункт Озон». «Пункт Озон» — это мобильное приложение для работников и менеджеров пункта выдачи...
🔥8❤2
Swift Method Dispatch
Бесконечно вечно можно делать три вещи: смотреть как горит огонь, смотреть как течет вода и читать статьи про диспетчирезацию в Swift'е.
Бесконечно вечно можно делать три вещи: смотреть как горит огонь, смотреть как течет вода и читать статьи про диспетчирезацию в Swift'е.
Jacobstechtavern
The Swift Method Dispatch Deep Dive
And the compiler's endless quest to speed up your code
👍14😁3
Первая статья про приложение для Vision Pro
Ребята из 2ГИС выпустили статью про историю и особенности создания приложения для нового девайса от эпла. Забирайте почитать на выходные.
А я уже успел потестить как и это приложение, так и сам Vision Pro, но пока думаю в каком формате об этом лучше рассказать. Можете накидать вопросов в тред или в личку.
Ребята из 2ГИС выпустили статью про историю и особенности создания приложения для нового девайса от эпла. Забирайте почитать на выходные.
А я уже успел потестить как и это приложение, так и сам Vision Pro, но пока думаю в каком формате об этом лучше рассказать. Можете накидать вопросов в тред или в личку.
Хабр
Миссия выполнима: как мы создали приложение для Apple Vision Pro за 8 дней
Всем привет! На связи Саша Сырков из 2ГИС, и это рассказ, как чуть больше недели мы разрабатывали приложение на Vision OS, разбирались в особенностях Reality Composer Pro, ловили всевозможные...
👍13
Базовая статья про LLM
Не совсем по теме iOS, но натолкнулся и не могу не поделиться крутой статьей, которая раскрывает очень много аспектов вокруг LLM: от архитектур и отличий моделей, до настройки и запуска у себя на машине. В мире AI все очень быстро устаревает, но статья свежая и в ней достаточно актуальная инфа.
Забирайте на почитать на эти выходные.
Не совсем по теме iOS, но натолкнулся и не могу не поделиться крутой статьей, которая раскрывает очень много аспектов вокруг LLM: от архитектур и отличий моделей, до настройки и запуска у себя на машине. В мире AI все очень быстро устаревает, но статья свежая и в ней достаточно актуальная инфа.
Забирайте на почитать на эти выходные.
Хабр
Раскрывая секреты LLM: руководство по основным понятиям больших языковых моделей без хайпа
AI-хайп, честно говоря, слегка задолбал. Кажется, что все вокруг только и делают, что внедряют в продукт как можно больше AI фичей, поднимают миллионы на оболочку для ChatGPT, осваивают сто первый...
👍5❤1
Что такое Accelerate и с чем его едят
Мало кто вообще слышал об этом фреймворке и, возможно, никогда не придет к тому, чтобы его использовать. Но чем шире ваши знания, тем больше шансов, что когда у вас появится специфическая задача, вы выберете правильный инструмент для ее решения.
Мало кто вообще слышал об этом фреймворке и, возможно, никогда не придет к тому, чтобы его использовать. Но чем шире ваши знания, тем больше шансов, что когда у вас появится специфическая задача, вы выберете правильный инструмент для ее решения.
Хабр
Почему Accelerate — это не страшно
Всем привет! Я Игорь Белов, iOS-разработчик в Тинькофф Бизнесе, выпускник Университета Иннополис и энтузиаст в области Computer Science. Занимаюсь iOS-разработкой почти четыре года, мне нравится...
👍8❤1🔥1
SwiftUI: архитектура State-Model-View
Статья про подход к построению простой архитектуры через @State для отображения состояний. Автор советует не переусложнять и практично использовать SwiftUI так, “как оно есть”.
Но мне кажется, что это будет нормально работать только на простых экранах. Если делать что-то сложнее чем экран с парой кнопок, то в этих состояниях уже можно будет утонуть.
Статья про подход к построению простой архитектуры через @State для отображения состояний. Автор советует не переусложнять и практично использовать SwiftUI так, “как оно есть”.
Но мне кажется, что это будет нормально работать только на простых экранах. Если делать что-то сложнее чем экран с парой кнопок, то в этих состояниях уже можно будет утонуть.
Хабр
SwiftUI: архитектура State-Model-View
В документации по UIKit компании Apple можно найти объяснение , что структура приложений основана на шаблоне проектирования Model-View-Controller ( MVC ). В материалах Apple по SwiftUI объяснений и...
👍5🔥2❤1
Автоматизация сборки приложения
Тему CI/CD незаслуженно обходят стороной, не придавая ей должного внимания, а ведь от CI/CD напрямую зависит time to market — время, которое компания тратит на реализацию и выпуск продукта, а разработчики могут сосредоточиться на инновациях и улучшении функциональности приложений.
В статье подробный гайд по настройке автоматизации сборки приложения для AppStore, используя Jenkins, Fastlane, TestFlight
Тему CI/CD незаслуженно обходят стороной, не придавая ей должного внимания, а ведь от CI/CD напрямую зависит time to market — время, которое компания тратит на реализацию и выпуск продукта, а разработчики могут сосредоточиться на инновациях и улучшении функциональности приложений.
В статье подробный гайд по настройке автоматизации сборки приложения для AppStore, используя Jenkins, Fastlane, TestFlight
Хабр
Сборка приложения для AppStore. Используем Jenkins, Fastlane, TestFlight
Большой туториал настройки CI/CD пайплайна с использованием Jenkins и Fastlane. Мухаммадиер Расулов TeamLead IOS в YuSMP Group, автор материала Внедрение CI/CD в процесс создания iOS-приложений ...
👍7⚡3🔥1
Порефлексируем немного?
Reflection в swift – механизм, позволяющий получать информацию о типе, публичных и приватных свойствах объекта в Runtime и работать с ними.
Иногда полезный механизм, но лучше сто раз подумать, перед тем, как использовать его для какой то конкретной фичи в проде.
Reflection в swift – механизм, позволяющий получать информацию о типе, публичных и приватных свойствах объекта в Runtime и работать с ними.
Иногда полезный механизм, но лучше сто раз подумать, перед тем, как использовать его для какой то конкретной фичи в проде.
Хабр
Reflection в iOS: как посмотреть содержимое любой сущности
В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью...
⚡9🔥1
Локализация мобильного приложения на iOS: процесс, трудности и решения
Статья в прямом смысле о трудностях перевода: проблемы и их решение, про системный алгоритм выбора языка, пример перевода приложения «на лету» и многом другом в процессе локализации.
Статья в прямом смысле о трудностях перевода: проблемы и их решение, про системный алгоритм выбора языка, пример перевода приложения «на лету» и многом другом в процессе локализации.
Хабр
О, вы из Англии? Локализация Ozon Seller на iOS
Всем привет! Меня зовут Андрей, и я делаю iOS-приложение для продавцов Ozon Seller. Наша команда поставляет фичи, красит кнопки, работает над перформансом и всячески улучшает пользовательский...
👍10🔥2
Server-side Swift для AI задач
Вдруг вы решили, что вам срочно нужно приложение с фунцией классификации изображения или другой ML задачей и вы не хотите делать это на клиенте, а знаете только Swift, то для вас есть решение – Vapor + CoreML.
Не уверен, что можно масштабировать этот подход на большое количество пользователей, но сделать Proof of concept более чем можнои получить миллионы $ инвестиций
Вдруг вы решили, что вам срочно нужно приложение с фунцией классификации изображения или другой ML задачей и вы не хотите делать это на клиенте, а знаете только Swift, то для вас есть решение – Vapor + CoreML.
Не уверен, что можно масштабировать этот подход на большое количество пользователей, но сделать Proof of concept более чем можно
Create with Swift
Using server-side Swift for machine learning processing
In this tutorial learn how to use a machine learning model in a Vapor server using Swift.
👍13❤2🔥2
Шаблон Trigger в SwiftUI
В последней версии SwiftUI появился шаблон Trigger. С его помощью можно заставить UI реагировать каждый раз, когда значение свойства, которое мы установим как триггер изменилось.
Подойдет, например, чтобы заставить Scroll Indicator мигать, воспроизводить звук или выполнить анимацию при каком-либо действии. И все это можно делать как "шаблон", который можно переиспользовать на других UI элементах.
В последней версии SwiftUI появился шаблон Trigger. С его помощью можно заставить UI реагировать каждый раз, когда значение свойства, которое мы установим как триггер изменилось.
Подойдет, например, чтобы заставить Scroll Indicator мигать, воспроизводить звук или выполнить анимацию при каком-либо действии. И все это можно делать как "шаблон", который можно переиспользовать на других UI элементах.
Swift with Majid
Trigger value pattern in SwiftUI
The recent version of the SwiftUI framework introduces a trigger value pattern across its APIs. Trigger value allows us to attach a view modifier that runs its action whenever the trigger value changes. You can find this pattern while using sensory feedback…
👍11❤2
GraphQL в IOS разработке
Aльтернативный подход к разработке сетевого API, который позволяет более тонко настроить детали запросов, используя единственную конечную точку.
В отличие от традиционных RESTful API, GraphQL позволяет клиенту запросить только необходимые поля, минуя лишнюю информацию, что существенно уменьшает количество запросов в сеть и улучшает производительность приложения.
Aльтернативный подход к разработке сетевого API, который позволяет более тонко настроить детали запросов, используя единственную конечную точку.
В отличие от традиционных RESTful API, GraphQL позволяет клиенту запросить только необходимые поля, минуя лишнюю информацию, что существенно уменьшает количество запросов в сеть и улучшает производительность приложения.
Tanaschita
GraphQL essentials for iOS development
This article provides you with the essentials of GraphQL, especially those you need to know as an iOS developer.
⚡5👍3🔥3
Библиотека Apollo iOS для работы с GraphQL
В статье о том, как внедрить и использовать библиотеку Apollo iOS для создания приложений с поддержкой GraphQL.
Установка либы может показаться излишне сложной, но это тот случай, когда один раз разобрался и дальше просто применяешь на практике.
В статье о том, как внедрить и использовать библиотеку Apollo iOS для создания приложений с поддержкой GraphQL.
Установка либы может показаться излишне сложной, но это тот случай, когда один раз разобрался и дальше просто применяешь на практике.
Tanaschita
Getting started with Apollo iOS for GraphQL in Swift
Learn how to integrate GraphQL into a Swift application using Apollo iOS. Add Apollo dependency using the Swift Package Manager, install Codegen CLI, download schema and more.
💯6⚡2