Полезные iOS-инструменты для дебаггинга
Существует множество инструментов, которые помогут быстро и эффективно диагностировать, а также устранять проблемы. В этой статье подробно рассматриваются нативные и сторонние инструменты, доступные для отладки iOS-приложений, как использовать эти инструменты для диагностики и устранения распространенных проблем. Со всеми инструментами по отлавливанию ошибок советую разобраться в данной статье.
#digest #дебаггинг
Существует множество инструментов, которые помогут быстро и эффективно диагностировать, а также устранять проблемы. В этой статье подробно рассматриваются нативные и сторонние инструменты, доступные для отладки iOS-приложений, как использовать эти инструменты для диагностики и устранения распространенных проблем. Со всеми инструментами по отлавливанию ошибок советую разобраться в данной статье.
#digest #дебаггинг
👍7🔥2❤1👎1
XCFramework - это новый формат фреймворков, представленный Apple в Xcode 11.0.
Он представляет собой архив, который содержит скомпилированный код и ресурсы для разных платформ (например, iOS, macOS, tvOS и т. д.). XCFramework позволяет упаковывать код и ресурсы в единый файл, который может быть использован на разных платформах без необходимости создания отдельных фреймворков для каждой платформы.
Основная цель XCFramework - облегчить распространение и использование фреймворков для разработчиков, которые создают приложения для разных платформ Apple. Ранее, для каждой платформы требовалось создавать отдельный фреймворк, что могло быть неудобно и затратно по времени. XCFramework позволяет объединить код и ресурсы для всех платформ в один файл, что упрощает его использование и распространение.
Преимущества использования XCFramework включают:
1. Упрощение процесса сборки и распространения: XCFramework позволяет упаковать код и ресурсы для разных платформ в один файл, что упрощает процесс создания и распространения фреймворков.
2. Удобство использования: Разработчики могут использовать XCFramework на разных платформах без необходимости создания и подключения отдельных фреймворков для каждой платформы. Это делает процесс разработки и поддержки приложений для разных платформ более эффективным.
3. Поддержка динамических и статических библиотек: XCFramework поддерживает как динамические, так и статические библиотеки. Это позволяет разработчикам выбирать наиболее подходящий тип библиотеки для своих потребностей.
4. Поддержка биткода: XCFramework поддерживает биткод, что позволяет оптимизировать код при сборке и автоматически адаптироваться к разным платформам.
В целом, XCFramework является удобным и эффективным инструментом для разработчиков, позволяющим упростить создание, распространение и использование фреймворков на разных платформах Apple.
iOS Такой подготовил для вас маленький выпуск о том, как внедрить XCFrameworks к себе в проект.
#digest #доклад
Он представляет собой архив, который содержит скомпилированный код и ресурсы для разных платформ (например, iOS, macOS, tvOS и т. д.). XCFramework позволяет упаковывать код и ресурсы в единый файл, который может быть использован на разных платформах без необходимости создания отдельных фреймворков для каждой платформы.
Основная цель XCFramework - облегчить распространение и использование фреймворков для разработчиков, которые создают приложения для разных платформ Apple. Ранее, для каждой платформы требовалось создавать отдельный фреймворк, что могло быть неудобно и затратно по времени. XCFramework позволяет объединить код и ресурсы для всех платформ в один файл, что упрощает его использование и распространение.
Преимущества использования XCFramework включают:
1. Упрощение процесса сборки и распространения: XCFramework позволяет упаковать код и ресурсы для разных платформ в один файл, что упрощает процесс создания и распространения фреймворков.
2. Удобство использования: Разработчики могут использовать XCFramework на разных платформах без необходимости создания и подключения отдельных фреймворков для каждой платформы. Это делает процесс разработки и поддержки приложений для разных платформ более эффективным.
3. Поддержка динамических и статических библиотек: XCFramework поддерживает как динамические, так и статические библиотеки. Это позволяет разработчикам выбирать наиболее подходящий тип библиотеки для своих потребностей.
4. Поддержка биткода: XCFramework поддерживает биткод, что позволяет оптимизировать код при сборке и автоматически адаптироваться к разным платформам.
В целом, XCFramework является удобным и эффективным инструментом для разработчиков, позволяющим упростить создание, распространение и использование фреймворков на разных платформах Apple.
iOS Такой подготовил для вас маленький выпуск о том, как внедрить XCFrameworks к себе в проект.
#digest #доклад
👍9🔥5❤4👎1
Что нового в SwiftUI для iOS 17?
SwiftUI продолжает быстро развиваться, и в этом году мы видим огромное количество улучшений в прокрутке, интересные новые эффекты SF Symbols, продвинутую поддержку шейдеров Metal и многое другое.
Некоторые обновления в этом релизе из числа тех, которые автор предлагал лично. Среди них - добавление шейдеров Metal, улучшение работы Color с Codable, добавление замыкания по завершении для анимаций, которое дает нам возможность анимировать градиенты. Теперь мы ещё можем скруглять углы прямоугольника по своему усмотрению. Только благодаря первой бета-версии автор закрыл как минимум дюжину своих предложений!
- Набор обновлений для ScrollView
- Улучшение прорисовки и анимаций
- Интеграция встроенных покупок (in-app purchases) в SwiftUI
- Новый модификатор inspector()
- Новый модификатор onKeyPress()
- Управление отображением колонок NavigationSplitView в компактных макетах
- Добавление тактильных эффектов с использованием сенсорной обратной связи
- Уведомление пользователя о недоступности контента
- Одновременная заливка и обводка фигур
- Новый API для работы со spring анимациями
Прочие изменения
- Модификатор foregroundColor() теперь считается устаревшим и его заменил новый - foregroundStyle()
- Изменение цветов с использованием градиента будет происходить с анимацией
- Spring анимация теперь является дефолтной в SwiftUI и содержит гораздо больше встроенных параметров, таких как .bouncy и .snappy, а сами анимации теперь создаются с помощью гораздо более простого API
- Появилась возможность скруглять только определенные углы прямоугольника, а не все сразу
- Упрощен синтаксис для заливки и обрезки фигур: .rect, .capsule и т.д.
- При создании табличных представлений вместо ForEach(users, content: TableRow.init) можно писать просто ForEach(users)
#digest #swiftui
SwiftUI продолжает быстро развиваться, и в этом году мы видим огромное количество улучшений в прокрутке, интересные новые эффекты SF Symbols, продвинутую поддержку шейдеров Metal и многое другое.
Некоторые обновления в этом релизе из числа тех, которые автор предлагал лично. Среди них - добавление шейдеров Metal, улучшение работы Color с Codable, добавление замыкания по завершении для анимаций, которое дает нам возможность анимировать градиенты. Теперь мы ещё можем скруглять углы прямоугольника по своему усмотрению. Только благодаря первой бета-версии автор закрыл как минимум дюжину своих предложений!
- Набор обновлений для ScrollView
- Улучшение прорисовки и анимаций
- Интеграция встроенных покупок (in-app purchases) в SwiftUI
- Новый модификатор inspector()
- Новый модификатор onKeyPress()
- Управление отображением колонок NavigationSplitView в компактных макетах
- Добавление тактильных эффектов с использованием сенсорной обратной связи
- Уведомление пользователя о недоступности контента
- Одновременная заливка и обводка фигур
- Новый API для работы со spring анимациями
Прочие изменения
- Модификатор foregroundColor() теперь считается устаревшим и его заменил новый - foregroundStyle()
- Изменение цветов с использованием градиента будет происходить с анимацией
- Spring анимация теперь является дефолтной в SwiftUI и содержит гораздо больше встроенных параметров, таких как .bouncy и .snappy, а сами анимации теперь создаются с помощью гораздо более простого API
- Появилась возможность скруглять только определенные углы прямоугольника, а не все сразу
- Упрощен синтаксис для заливки и обрезки фигур: .rect, .capsule и т.д.
- При создании табличных представлений вместо ForEach(users, content: TableRow.init) можно писать просто ForEach(users)
#digest #swiftui
👍10❤5🔥2💩1
Всем привет!
Сегодня хотим поделиться с вами интересной темой - реактивное программирование.
Что такое реактивное программирование? Кратко.
Реактивное программирование - это особый подход к разработке программного обеспечения, который направлен на создание эффективных и отзывчивых систем. Он основан на принципах асинхронного и отслеживаемого потока данных между компонентами приложения. Вся архитектура строится вокруг потоков данных, которые могут изменяться и реагировать на события в реальном времени.
iOS Такой подготовил для зрителей доклад по реактивному программированию, где даже новичку будет понятно, что это за подход. Гость - Никита Веремейчик.
В нашем докладе:
- Мы подробно рассмотрим основные принципы реактивного программирования и покажем, каким образом он может быть полезен в разработке современных приложений на основе RxSwift и RxCocoa
- Мы разберемся с понятиями потоков данных, реактивных стримов и операторами, которые позволяют обрабатывать данные эффективно и гибко.
#digest #доклад
Сегодня хотим поделиться с вами интересной темой - реактивное программирование.
Что такое реактивное программирование? Кратко.
Реактивное программирование - это особый подход к разработке программного обеспечения, который направлен на создание эффективных и отзывчивых систем. Он основан на принципах асинхронного и отслеживаемого потока данных между компонентами приложения. Вся архитектура строится вокруг потоков данных, которые могут изменяться и реагировать на события в реальном времени.
iOS Такой подготовил для зрителей доклад по реактивному программированию, где даже новичку будет понятно, что это за подход. Гость - Никита Веремейчик.
В нашем докладе:
- Мы подробно рассмотрим основные принципы реактивного программирования и покажем, каким образом он может быть полезен в разработке современных приложений на основе RxSwift и RxCocoa
- Мы разберемся с понятиями потоков данных, реактивных стримов и операторами, которые позволяют обрабатывать данные эффективно и гибко.
#digest #доклад
👍21🔥8❤3🤮1
Диспетчеризация методов iOS
Диспетчеризацией методов называют процесс поиска адреса инструкций, которые нужно выполнить CPU при вызове определенного метода.
Другими словами, цель диспетчеризации методов состоит в том, чтобы программа сообщала процессору, где он может найти исполняемый код конкретного метода в памяти.
В этой статье будут рассмотрены понятие диспетчеризации, его виды, преимущества и недостатки, а также приведены небольшие задачи для укрепления знаний
#digest #диспетчеризация
Диспетчеризацией методов называют процесс поиска адреса инструкций, которые нужно выполнить CPU при вызове определенного метода.
Другими словами, цель диспетчеризации методов состоит в том, чтобы программа сообщала процессору, где он может найти исполняемый код конкретного метода в памяти.
В этой статье будут рассмотрены понятие диспетчеризации, его виды, преимущества и недостатки, а также приведены небольшие задачи для укрепления знаний
#digest #диспетчеризация
👍17🔥7❤3🤡1
UICollectionViewCompositionalLayout
В этой статье вы познакомитесь с UICollectionViewCompositionalLayout и с его помощью создатите UICollectionView с прокручивающимися секциями, а затем еще немного более их кастомизируете. Суть статьи показать как просто с помощью UICollectionViewCompositionalLayout вы можете создавать UICollectionView, которые выглядят именно так как нам необходимо. В статье вы увидите примеры кода, которые будут вам полезны при изучении данной технологии.
NSCollectionLayoutSize: Размеры ширины и высоты относятся к типу NSCollectionLayoutDimension, которые могут быть определены путем установки доли ширины/высоты макета (в процентах по отношению к его контейнеру) или путем установки абсолютных или расчетных размеров.
NSCollectionLayoutItem: Это ячейка нашего макета, которая отображается на экране в зависимости от размера.
NSCollectionLayoutGroup: содержит NSCollectionLayoutItem в горизонтальной, вертикальной или пользовательской формах.
NSCollectionLayoutSection: используется для инициализации секции путем передачи NSCollectionLayoutGroup. Секции в конечном итоге составляют СompositionalLayout.
Sections и items в СompositionalLayout соответствуют Sections и items класического СollectionViewDataSource. Группы, однако, не имеют эквивалента в СollectionViewDataSource и не отображают содержимое в виде элементов / ячеек. Они используются исключительно для описания расположения наших Items в рамках Section.
#digest
В этой статье вы познакомитесь с UICollectionViewCompositionalLayout и с его помощью создатите UICollectionView с прокручивающимися секциями, а затем еще немного более их кастомизируете. Суть статьи показать как просто с помощью UICollectionViewCompositionalLayout вы можете создавать UICollectionView, которые выглядят именно так как нам необходимо. В статье вы увидите примеры кода, которые будут вам полезны при изучении данной технологии.
NSCollectionLayoutSize: Размеры ширины и высоты относятся к типу NSCollectionLayoutDimension, которые могут быть определены путем установки доли ширины/высоты макета (в процентах по отношению к его контейнеру) или путем установки абсолютных или расчетных размеров.
NSCollectionLayoutItem: Это ячейка нашего макета, которая отображается на экране в зависимости от размера.
NSCollectionLayoutGroup: содержит NSCollectionLayoutItem в горизонтальной, вертикальной или пользовательской формах.
NSCollectionLayoutSection: используется для инициализации секции путем передачи NSCollectionLayoutGroup. Секции в конечном итоге составляют СompositionalLayout.
Sections и items в СompositionalLayout соответствуют Sections и items класического СollectionViewDataSource. Группы, однако, не имеют эквивалента в СollectionViewDataSource и не отображают содержимое в виде элементов / ячеек. Они используются исключительно для описания расположения наших Items в рамках Section.
#digest
👍12🔥5🎉2💩1
Привет, друзья!
Мы рады поделиться с вами последними новостями о нашем канале. На данный момент мы активно работаем над несколькими увлекательными выпусками, которые, мы уверены, будут вам интересны.
- Git. (Командная разработка)
- Тестирование и почему это важнее, чем вы думаете
- Пишем проект с ChatGPT и без
- SwiftUI (продвинутый уровень)
- Английский язык. Эффективные методики обучения.
И, наконец, мы хотели бы провести мок собеседование на нашем канале. Мы пригласили опытного iOS Разработчика/Team Lead, который проведет интересное и познавательное собеседование. Если вы хотите проверить свои знания и навыки, а также получить ценные советы от профессионала, пиши мне @new_repository или ставь + в комментариях.
Мы всегда открыты для ваших предложений и идей. Расскажите нам, что вы хотели бы видеть на нашем канале. Что вас интересует? Какие темы вам было бы интересно изучить? Мы с нетерпением ждем ваших комментариев и предложений.
Спасибо, что остаетесь с нами, и до скорой встречи на нашем канале!
#iOS #разработка #новости
Мы рады поделиться с вами последними новостями о нашем канале. На данный момент мы активно работаем над несколькими увлекательными выпусками, которые, мы уверены, будут вам интересны.
- Git. (Командная разработка)
- Тестирование и почему это важнее, чем вы думаете
- Пишем проект с ChatGPT и без
- SwiftUI (продвинутый уровень)
- Английский язык. Эффективные методики обучения.
И, наконец, мы хотели бы провести мок собеседование на нашем канале. Мы пригласили опытного iOS Разработчика/Team Lead, который проведет интересное и познавательное собеседование. Если вы хотите проверить свои знания и навыки, а также получить ценные советы от профессионала, пиши мне @new_repository или ставь + в комментариях.
Мы всегда открыты для ваших предложений и идей. Расскажите нам, что вы хотели бы видеть на нашем канале. Что вас интересует? Какие темы вам было бы интересно изучить? Мы с нетерпением ждем ваших комментариев и предложений.
Спасибо, что остаетесь с нами, и до скорой встречи на нашем канале!
#iOS #разработка #новости
🔥27👍11❤5🤬1
Всем привет! Очередной выпуск! На этот раз читаем и смотрим про Git.
Git - это распределенная система управления версиями, которая позволяет разработчикам эффективно работать с кодом и отслеживать все изменения, вносимые в проект. Он позволяет сохранять историю изменений, создавать ветки для параллельной разработки, объединять изменения, а также откатываться к предыдущим версиям кода.
GitFlow - это методология разработки программного обеспечения, основанная на Git. Она предлагает стратегию ветвления и слияния в Git, которая помогает организовать работу команды разработчиков и упростить процесс слияния кода. GitFlow определяет набор веток, которые используются для разработки новых функций, исправления ошибок и выпуска стабильных версий.
Команда iOS Такой подготовила доклад на YouTube, посвященный GitFlow. В докладе они рассказывают о преимуществах использования GitFlow при разработке iOS-приложений и демонстрируют практические примеры работы с ветками, слиянием кода и управлением версиями. Этот доклад может быть полезен для iOS-разработчиков начинающего уровня, и тех которые хотят улучшить свои навыки работы с Git и эффективно организовать процесс разработки.
#digest #доклад #Git
Git - это распределенная система управления версиями, которая позволяет разработчикам эффективно работать с кодом и отслеживать все изменения, вносимые в проект. Он позволяет сохранять историю изменений, создавать ветки для параллельной разработки, объединять изменения, а также откатываться к предыдущим версиям кода.
GitFlow - это методология разработки программного обеспечения, основанная на Git. Она предлагает стратегию ветвления и слияния в Git, которая помогает организовать работу команды разработчиков и упростить процесс слияния кода. GitFlow определяет набор веток, которые используются для разработки новых функций, исправления ошибок и выпуска стабильных версий.
Команда iOS Такой подготовила доклад на YouTube, посвященный GitFlow. В докладе они рассказывают о преимуществах использования GitFlow при разработке iOS-приложений и демонстрируют практические примеры работы с ветками, слиянием кода и управлением версиями. Этот доклад может быть полезен для iOS-разработчиков начинающего уровня, и тех которые хотят улучшить свои навыки работы с Git и эффективно организовать процесс разработки.
#digest #доклад #Git
👍10❤3🔥2👎1
Что нового в UIKit
iOS 17 принёс немало изменений в UIKit. Новые удобные фичи сделают ваше приложение красивее и функциональнее.
Анимация символов, превью контроллеров прямо в Xcode, авто-вибранси для лейблов — это и многое другое ждёт вас в новой версии. Читайте подробности в обзоре и сделайте свои приложения ещё круче!
#digest #uikit
iOS 17 принёс немало изменений в UIKit. Новые удобные фичи сделают ваше приложение красивее и функциональнее.
Анимация символов, превью контроллеров прямо в Xcode, авто-вибранси для лейблов — это и многое другое ждёт вас в новой версии. Читайте подробности в обзоре и сделайте свои приложения ещё круче!
#digest #uikit
👍18🔥5❤3👎1
Тестирование и почему это важнее, чем вы думаете
Тестирование в iOS - это процесс проверки функциональности, надежности и качества приложений, разработанных для устройств Apple. Оно включает в себя создание и выполнение тестовых сценариев, проверку работоспособности приложения в различных условиях и обнаружение и исправление ошибок.
Тестирование в iOS является важным этапом разработки, поскольку позволяет выявить и исправить ошибки и проблемы до того, как приложение будет выпущено в продакшн. Оно помогает гарантировать, что приложение работает правильно, соответствует требованиям пользователей и предоставляет хороший пользовательский опыт.
iOS Такой подготовил доклад с лайфкодингом по тестированию проекта. В этом докладе демонстрируется практический пример тестирования iOS-приложений, объясняют различные подходы и инструменты для тестирования, а также делятся советами и лучшими практиками. Этот доклад может быть полезен разработчикам iOS, которые хотят научиться эффективно тестировать свои проекты и повысить качество своего кода. А так же поговорим за плюсы и минусы тестирования. Приятного просмотра.
Ресурсы на гостя - Даниила.
#digest #доклад #тестирование
Тестирование в iOS - это процесс проверки функциональности, надежности и качества приложений, разработанных для устройств Apple. Оно включает в себя создание и выполнение тестовых сценариев, проверку работоспособности приложения в различных условиях и обнаружение и исправление ошибок.
Тестирование в iOS является важным этапом разработки, поскольку позволяет выявить и исправить ошибки и проблемы до того, как приложение будет выпущено в продакшн. Оно помогает гарантировать, что приложение работает правильно, соответствует требованиям пользователей и предоставляет хороший пользовательский опыт.
iOS Такой подготовил доклад с лайфкодингом по тестированию проекта. В этом докладе демонстрируется практический пример тестирования iOS-приложений, объясняют различные подходы и инструменты для тестирования, а также делятся советами и лучшими практиками. Этот доклад может быть полезен разработчикам iOS, которые хотят научиться эффективно тестировать свои проекты и повысить качество своего кода. А так же поговорим за плюсы и минусы тестирования. Приятного просмотра.
Ресурсы на гостя - Даниила.
#digest #доклад #тестирование
🔥13❤4👍4❤🔥1👎1
Глубокое погружение в Swift Regex
Обработка строк для извлечения, манипулирования или поиска данных - это основной навык, который необходимо приобрести большинству инженеров-программистов. Регулярные выражения, или regex, являются почтенным титаном обработки строк. Регулярные выражения являются неотъемлемой частью многих инструментов командной строки, используемых в Unix, поисковых системах, текстовых процессорах и текстовых редакторах. Недостатком регулярных выражений является то, что их может быть сложно создавать, читать и отлаживать. Большинство языков программирования поддерживают ту или иную форму регулярных выражений — и теперь Swift тоже поддерживает Swift Regex.
Захватывающий и новый конструктор регулярных выражений в Swift Regex предоставляет нам программный способ создания регулярных выражений. Этот инновационный подход к созданию зачастую сложных регулярных выражений наверняка сразу же понравится как новичкам, так и поклонникам регулярных выражений. Мы углубимся в Regex Builder, чтобы открыть для себя его широкие возможности.
Swift Regex обеспечивает первоклассную поддержку регулярных выражений в языке Swift и нацелен на смягчение или полное устранение многих недостатков регулярных выражений. Компилятор Swift изначально поддерживает синтаксис регулярных выражений, что приводит к ошибкам во время компиляции, подсветке синтаксиса и строго типизированным захватам. Синтаксис регулярных выражений в Swift совместим с Perl, Python, Ruby, Java, NSRegularExpression и многими другими.
В этой статье подробно разбирается то, как работают регулярные выражения в Swift и где они могут пригодиться.
#digest
Обработка строк для извлечения, манипулирования или поиска данных - это основной навык, который необходимо приобрести большинству инженеров-программистов. Регулярные выражения, или regex, являются почтенным титаном обработки строк. Регулярные выражения являются неотъемлемой частью многих инструментов командной строки, используемых в Unix, поисковых системах, текстовых процессорах и текстовых редакторах. Недостатком регулярных выражений является то, что их может быть сложно создавать, читать и отлаживать. Большинство языков программирования поддерживают ту или иную форму регулярных выражений — и теперь Swift тоже поддерживает Swift Regex.
Захватывающий и новый конструктор регулярных выражений в Swift Regex предоставляет нам программный способ создания регулярных выражений. Этот инновационный подход к созданию зачастую сложных регулярных выражений наверняка сразу же понравится как новичкам, так и поклонникам регулярных выражений. Мы углубимся в Regex Builder, чтобы открыть для себя его широкие возможности.
Swift Regex обеспечивает первоклассную поддержку регулярных выражений в языке Swift и нацелен на смягчение или полное устранение многих недостатков регулярных выражений. Компилятор Swift изначально поддерживает синтаксис регулярных выражений, что приводит к ошибкам во время компиляции, подсветке синтаксиса и строго типизированным захватам. Синтаксис регулярных выражений в Swift совместим с Perl, Python, Ruby, Java, NSRegularExpression и многими другими.
В этой статье подробно разбирается то, как работают регулярные выражения в Swift и где они могут пригодиться.
#digest
👍10❤4🔥3👎1
С вами команда iOS Такой. Нам нужна обратная связь!
Мы выпустили уже достаточное количество выпусков, и какие еще ожидаются:
- Пишем проект с ChatGPT и без
- SwiftUI (продвинутый уровень)
- Английский язык. Эффективные методики обучения.
- Диспетчеризация на практике
- Моковое собеседование iOS
- Важность one to one
Так же недавно вошли в релиз выпуски:
- Тестирование проекта на практике
- Git и командная работа
- Реактивное программирование на основе RxSwift и RxCocoa
- Как использовать XCFrameworks на практике
Нам нужна обратная связь, о том, какие выпуски вы бы хотели видеть! И что не нравится в наших выпусках/канале. Пишите все, что думаете. Мы не боимся делать ошибок - мы растем!
Мы выпустили уже достаточное количество выпусков, и какие еще ожидаются:
- Пишем проект с ChatGPT и без
- SwiftUI (продвинутый уровень)
- Английский язык. Эффективные методики обучения.
- Диспетчеризация на практике
- Моковое собеседование iOS
- Важность one to one
Так же недавно вошли в релиз выпуски:
- Тестирование проекта на практике
- Git и командная работа
- Реактивное программирование на основе RxSwift и RxCocoa
- Как использовать XCFrameworks на практике
Нам нужна обратная связь, о том, какие выпуски вы бы хотели видеть! И что не нравится в наших выпусках/канале. Пишите все, что думаете. Мы не боимся делать ошибок - мы растем!
🔥18❤4👍3👎1
Дорогие друзья!
Я хотел бы выразить свою искреннюю благодарность и признательность определенным лицам, которые оказали существенную помощь и приняли активное участие в моем становлении как разработчика. Ваша поддержка и дружеское отношения значат для меня очень много, и я не могу не упомянуть это в моем посте.
@NSOwl, спасибо тебе за твою бесценную помощь и наставничество в начале моего пути. Твои советы и знания в iOS помогли мне развиться и попасть на свою первую работу. Я до сих пор это ценю.
@MaxAnokhin и @gellert_kirill
Ваши советы и обратная связь помогали мне преодолевать трудности и развиваться в своих умениях. Без вас я бы не смог достичь таких результатов. За это время вы не просто стали для меня знакомыми, а целыми друзьями - отношениями которыми, я очень сильно дорожу.
@Dmitriy_Soloshenko
Вам я хочу выразить благодарность за то, что вы всегда были готовы поделиться своим опытом и знаниями. Спасибо Вам!
Я также очень благодарен окружению, которое меня окружает. Ваша поддержка и понимание помогают мне продолжать расти и развиваться. Я ценю каждый момент, проведенный с вами, и я счастлив быть тем, кем я являюсь сейчас.
P.S Скоро много новых выпусков ✌️
Я хотел бы выразить свою искреннюю благодарность и признательность определенным лицам, которые оказали существенную помощь и приняли активное участие в моем становлении как разработчика. Ваша поддержка и дружеское отношения значат для меня очень много, и я не могу не упомянуть это в моем посте.
@NSOwl, спасибо тебе за твою бесценную помощь и наставничество в начале моего пути. Твои советы и знания в iOS помогли мне развиться и попасть на свою первую работу. Я до сих пор это ценю.
@MaxAnokhin и @gellert_kirill
Ваши советы и обратная связь помогали мне преодолевать трудности и развиваться в своих умениях. Без вас я бы не смог достичь таких результатов. За это время вы не просто стали для меня знакомыми, а целыми друзьями - отношениями которыми, я очень сильно дорожу.
@Dmitriy_Soloshenko
Вам я хочу выразить благодарность за то, что вы всегда были готовы поделиться своим опытом и знаниями. Спасибо Вам!
Я также очень благодарен окружению, которое меня окружает. Ваша поддержка и понимание помогают мне продолжать расти и развиваться. Я ценю каждый момент, проведенный с вами, и я счастлив быть тем, кем я являюсь сейчас.
P.S Скоро много новых выпусков ✌️
❤25🥰3👍2👎1
Создаем дефолтные аватары пользователей в SwiftUI
Мы часто сталкиваемся с необходимостью отображения аватаров пользователей в наших приложениях. Однако работа с аватарами по умолчанию для пользователей, не имеющих фотографий профиля, может быть утомительной и повторяющейся. В этой статье мы рассмотрим простое и эффективное решение этой проблемы с помощью SwiftUI и расширений Swift.
К концу этой статьи у вас будет чистый и персонализированный генератор дефолтных аватаров, который добавит нотку уникальности пользовательскому интерфейсу вашего приложения.
Содержание статьи с примерами кода
1. Настройка модели пользователя
2. Создание расширения для строк
3. Кастомный View дефолтного аватара
4. Реализация генератора аватаров
#digest #swiftui
Мы часто сталкиваемся с необходимостью отображения аватаров пользователей в наших приложениях. Однако работа с аватарами по умолчанию для пользователей, не имеющих фотографий профиля, может быть утомительной и повторяющейся. В этой статье мы рассмотрим простое и эффективное решение этой проблемы с помощью SwiftUI и расширений Swift.
К концу этой статьи у вас будет чистый и персонализированный генератор дефолтных аватаров, который добавит нотку уникальности пользовательскому интерфейсу вашего приложения.
Содержание статьи с примерами кода
1. Настройка модели пользователя
2. Создание расширения для строк
3. Кастомный View дефолтного аватара
4. Реализация генератора аватаров
#digest #swiftui
👍9🔥5❤2👎1🤮1
ChatGPT в Swift на практике
Привет, друзья!
В это воскресенье у нас в гостях была Екатерина Батеева - iOS разработчик из Одноклассников.
Катя показала нам на примере, как оседлать ChatGPT и как строить с ним диалог, что бы корректно донести до него то, чего мы хотим. Так же мы увидим небольшой пример использования нейросети Kandinsky от Сбера для иконок приложения и, самое интересное, - как превратить дизайн из Figma в готовый экран на SwiftUI буквально в пару кликов!
Это был великолепный доклад, который мы советуем вам просмотреть.
Приятного просмотра! Увидимся в следующее воскресенье :)
#digest #доклад #ChatGPT
Привет, друзья!
В это воскресенье у нас в гостях была Екатерина Батеева - iOS разработчик из Одноклассников.
Катя показала нам на примере, как оседлать ChatGPT и как строить с ним диалог, что бы корректно донести до него то, чего мы хотим. Так же мы увидим небольшой пример использования нейросети Kandinsky от Сбера для иконок приложения и, самое интересное, - как превратить дизайн из Figma в готовый экран на SwiftUI буквально в пару кликов!
Это был великолепный доклад, который мы советуем вам просмотреть.
Приятного просмотра! Увидимся в следующее воскресенье :)
#digest #доклад #ChatGPT
👍17🔥11❤6👎1
Сравнение декларативных фреймворков
В этой статье автор покажем вам, как написать один и тот же код на трех популярных декларативных фреймворках — Jetpack Compose, SwiftUI и Flutter.
Таким образом, вы сможете сравнить, как они работают и чем отличаются при создании интерфейсов.
#ios #android #flutter
В этой статье автор покажем вам, как написать один и тот же код на трех популярных декларативных фреймворках — Jetpack Compose, SwiftUI и Flutter.
Таким образом, вы сможете сравнить, как они работают и чем отличаются при создании интерфейсов.
#ios #android #flutter
👍9🔥5❤1👎1
Что такое память?
Основной единицей информации является бит, который равен 1 или 0. Традиционно мы организовываем биты в группы по восемь, называемые байтами. Память — это просто длинная последовательность байтов, один за другим уходящих в даль. Но они расположены в определенном порядке. Каждый байт получает число, называемое его адресом.
В этих ресурсах рассматриваются принципы работы памяти в Swift и разбираются, как Swift располагает байты в памяти, как управляет памятью, и что из себя представляет жизненный цикл объектов.
Cтатья для прочтения
Видео для закрепления материала
#digest #arc #память
Основной единицей информации является бит, который равен 1 или 0. Традиционно мы организовываем биты в группы по восемь, называемые байтами. Память — это просто длинная последовательность байтов, один за другим уходящих в даль. Но они расположены в определенном порядке. Каждый байт получает число, называемое его адресом.
В этих ресурсах рассматриваются принципы работы памяти в Swift и разбираются, как Swift располагает байты в памяти, как управляет памятью, и что из себя представляет жизненный цикл объектов.
Cтатья для прочтения
Видео для закрепления материала
#digest #arc #память
👍11❤3🔥2💩1
📢 Внимание, в это воскресенье у нас запланирован SwiftUI! 🎉
Мы приглашаем вас на прямую трансляцию, где Мишин Денис проведет детальный разбор одного из самых инновационных фреймворков разработки пользовательского интерфейса - SwiftUI! 🚀
SwiftUI - это мощный инструмент, который позволяет создавать потрясающие и современные пользовательские интерфейсы для ваших приложений на платформах iOS, macOS, watchOS и tvOS. В этом разборе мы рассмотрим все основные возможности и функции, которые делают SwiftUI таким классным и интуитивно понятным для разработчиков.
Вы узнаете, как использовать декларативный подход для создания интерфейса, как использовать различные компоненты и контролы, а также как обрабатывать пользовательские события и добавлять анимации. Мы также покажем вам практические примеры, чтобы вы могли сразу применить полученные знания в своих проектах.
Присоединяйтесь к нам в это воскресенье, чтобы получить полезную информацию и вдохновение от нашего разбора SwiftUI! Не забудьте подписаться на наш YouTube-канал, чтобы получать уведомления о новых видео и быть в курсе всех наших интересных мероприятий. Увидимся в воскресенье в 19:30 по МСК! 🎥
#digest #доклад
Мы приглашаем вас на прямую трансляцию, где Мишин Денис проведет детальный разбор одного из самых инновационных фреймворков разработки пользовательского интерфейса - SwiftUI! 🚀
SwiftUI - это мощный инструмент, который позволяет создавать потрясающие и современные пользовательские интерфейсы для ваших приложений на платформах iOS, macOS, watchOS и tvOS. В этом разборе мы рассмотрим все основные возможности и функции, которые делают SwiftUI таким классным и интуитивно понятным для разработчиков.
Вы узнаете, как использовать декларативный подход для создания интерфейса, как использовать различные компоненты и контролы, а также как обрабатывать пользовательские события и добавлять анимации. Мы также покажем вам практические примеры, чтобы вы могли сразу применить полученные знания в своих проектах.
Присоединяйтесь к нам в это воскресенье, чтобы получить полезную информацию и вдохновение от нашего разбора SwiftUI! Не забудьте подписаться на наш YouTube-канал, чтобы получать уведомления о новых видео и быть в курсе всех наших интересных мероприятий. Увидимся в воскресенье в 19:30 по МСК! 🎥
#digest #доклад
❤12👍4⚡2🔥2🥴2
Как работает диспетчеризация в iOS на практике + ЛАЙФКОДИНГ
Диспетчеризация - это важный аспект разработки приложений для iOS, который позволяет эффективно управлять вызовами методов и функций. Она определяет, какой код будет выполнен в ответ на вызов определенной функции или метода.
iOS Такой подготовил доклад на YouTube, в котором подробно рассказывают о диспетчеризации в iOS и демонстрируют живой кодинг. В этом видео вы узнаете, что такое диспетчеризация и как она работает в iOS, а также увидите практические примеры использования.
Диспетчеризация в iOS имеет два основных вида: статическую и динамическую. Статическая диспетчеризация происходит во время компиляции и определяет, какой код будет вызван на основе типа переменной или константы. Динамическая диспетчеризация, напротив, происходит во время выполнения и позволяет выбирать код на основе реального типа объекта.
В нашем докладе, гость подробно объясняет различия между статической и динамической диспетчеризацией, а также рассказывает о механизмах, которые Swift использует для реализации динамической диспетчеризации. Вы узнаете, как использовать диспетчеризацию для создания полиморфных и наследуемых структур в ваших приложениях и многое другое.
#ios #digest #доклад #диспетчеризация
Диспетчеризация - это важный аспект разработки приложений для iOS, который позволяет эффективно управлять вызовами методов и функций. Она определяет, какой код будет выполнен в ответ на вызов определенной функции или метода.
iOS Такой подготовил доклад на YouTube, в котором подробно рассказывают о диспетчеризации в iOS и демонстрируют живой кодинг. В этом видео вы узнаете, что такое диспетчеризация и как она работает в iOS, а также увидите практические примеры использования.
Диспетчеризация в iOS имеет два основных вида: статическую и динамическую. Статическая диспетчеризация происходит во время компиляции и определяет, какой код будет вызван на основе типа переменной или константы. Динамическая диспетчеризация, напротив, происходит во время выполнения и позволяет выбирать код на основе реального типа объекта.
В нашем докладе, гость подробно объясняет различия между статической и динамической диспетчеризацией, а также рассказывает о механизмах, которые Swift использует для реализации динамической диспетчеризации. Вы узнаете, как использовать диспетчеризацию для создания полиморфных и наследуемых структур в ваших приложениях и многое другое.
#ios #digest #доклад #диспетчеризация
🔥15💩4❤3👍3🤡1🖕1
🌍 ЭФФЕКТИВНОЕ ИЗУЧЕНИЕ ИНОСТРАННЫХ ЯЗЫКОВ: ГОСТЬ, СОФЬЯ, ИНТЕРЕСЫ И СЕКРЕТЫ 🗣️
Привет, друзья! У нас сегодня на канале особенный выпуск, посвященный эффективному изучению иностранных языков. И у нас есть замечательная гостья - Софья, репетитор по английскому языку, которая не только преподает его, но и увлечена миром социальных медиа и продвижением!
В этом выпуске Соня поделится с нами своими ценными советами и секретами, которые помогут вам сделать процесс изучения языка более эффективным и увлекательным. Она знает, как найти подход к каждому ученику и сделать уроки интересными, а также применить современные методы в обучении.
Но это еще не все! Соня также увлекается областью социальных медиа и продвижением. Она понимает, как важно использовать современные инструменты для расширения своих знаний и навыков. Если вам интересна эта область или вы хотите узнать больше о том, как использовать социальные медиа для продвижения своего бизнеса или личного бренда, то Соня с радостью поделится своими идеями и опытом!
Выпуск получился достаточно полезным, информативным и интересным. Приятного просмотра😊
#digest #иностранныеязыки
Привет, друзья! У нас сегодня на канале особенный выпуск, посвященный эффективному изучению иностранных языков. И у нас есть замечательная гостья - Софья, репетитор по английскому языку, которая не только преподает его, но и увлечена миром социальных медиа и продвижением!
В этом выпуске Соня поделится с нами своими ценными советами и секретами, которые помогут вам сделать процесс изучения языка более эффективным и увлекательным. Она знает, как найти подход к каждому ученику и сделать уроки интересными, а также применить современные методы в обучении.
Но это еще не все! Соня также увлекается областью социальных медиа и продвижением. Она понимает, как важно использовать современные инструменты для расширения своих знаний и навыков. Если вам интересна эта область или вы хотите узнать больше о том, как использовать социальные медиа для продвижения своего бизнеса или личного бренда, то Соня с радостью поделится своими идеями и опытом!
Выпуск получился достаточно полезным, информативным и интересным. Приятного просмотра😊
#digest #иностранныеязыки
👍12🔥7❤4👎1