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

Реклама: @new_repository

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

Бусти: boosty.to/dimov_ios
Download Telegram
UICollectionViewCompositionalLayout

В этой статье вы познакомитесь с 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 #разработка #новости
🔥27👍115🤬1
Всем привет! Очередной выпуск! На этот раз читаем и смотрим про Git.

Git - это распределенная система управления версиями, которая позволяет разработчикам эффективно работать с кодом и отслеживать все изменения, вносимые в проект. Он позволяет сохранять историю изменений, создавать ветки для параллельной разработки, объединять изменения, а также откатываться к предыдущим версиям кода.

GitFlow - это методология разработки программного обеспечения, основанная на Git. Она предлагает стратегию ветвления и слияния в Git, которая помогает организовать работу команды разработчиков и упростить процесс слияния кода. GitFlow определяет набор веток, которые используются для разработки новых функций, исправления ошибок и выпуска стабильных версий.

Команда iOS Такой подготовила доклад на YouTube, посвященный GitFlow. В докладе они рассказывают о преимуществах использования GitFlow при разработке iOS-приложений и демонстрируют практические примеры работы с ветками, слиянием кода и управлением версиями. Этот доклад может быть полезен для iOS-разработчиков начинающего уровня, и тех которые хотят улучшить свои навыки работы с Git и эффективно организовать процесс разработки.

#digest #доклад #Git
👍103🔥2👎1
Что нового в UIKit

iOS 17 принёс немало изменений в UIKit. Новые удобные фичи сделают ваше приложение красивее и функциональнее.

Анимация символов, превью контроллеров прямо в Xcode, авто-вибранси для лейблов — это и многое другое ждёт вас в новой версии. Читайте подробности в обзоре и сделайте свои приложения ещё круче!

#digest #uikit
👍18🔥53👎1
Тестирование и почему это важнее, чем вы думаете

Тестирование в iOS - это процесс проверки функциональности, надежности и качества приложений, разработанных для устройств Apple. Оно включает в себя создание и выполнение тестовых сценариев, проверку работоспособности приложения в различных условиях и обнаружение и исправление ошибок.

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

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

Ресурсы на гостя - Даниила.

#digest #доклад #тестирование
🔥134👍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
👍104🔥3👎1
С вами команда iOS Такой. Нам нужна обратная связь!

Мы выпустили уже достаточное количество выпусков, и какие еще ожидаются:
- Пишем проект с ChatGPT и без
- SwiftUI (продвинутый уровень)
- Английский язык. Эффективные методики обучения.
- Диспетчеризация на практике
- Моковое собеседование iOS
- Важность one to one


Так же недавно вошли в релиз выпуски:
- Тестирование проекта на практике
- Git и командная работа
- Реактивное программирование на основе RxSwift и RxCocoa
- Как использовать XCFrameworks на практике

Нам нужна обратная связь, о том, какие выпуски вы бы хотели видеть! И что не нравится в наших выпусках/канале. Пишите все, что думаете. Мы не боимся делать ошибок - мы растем!
🔥184👍3👎1
Дорогие друзья!

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

@NSOwl, спасибо тебе за твою бесценную помощь и наставничество в начале моего пути. Твои советы и знания в iOS помогли мне развиться и попасть на свою первую работу. Я до сих пор это ценю.

@MaxAnokhin и @gellert_kirill
Ваши советы и обратная связь помогали мне преодолевать трудности и развиваться в своих умениях. Без вас я бы не смог достичь таких результатов. За это время вы не просто стали для меня знакомыми, а целыми друзьями - отношениями которыми, я очень сильно дорожу.

@Dmitriy_Soloshenko
Вам я хочу выразить благодарность за то, что вы всегда были готовы поделиться своим опытом и знаниями. Спасибо Вам!

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

P.S Скоро много новых выпусков ✌️
25🥰3👍2👎1
Создаем дефолтные аватары пользователей в SwiftUI

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

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

Содержание статьи с примерами кода

1. Настройка модели пользователя
2. Создание расширения для строк
3. Кастомный View дефолтного аватара
4. Реализация генератора аватаров


#digest #swiftui
👍9🔥52👎1🤮1
ChatGPT в Swift на практике

Привет, друзья!

В это воскресенье у нас в гостях была Екатерина Батеева - iOS разработчик из Одноклассников.

Катя показала нам на примере, как оседлать ChatGPT и как строить с ним диалог, что бы корректно донести до него то, чего мы хотим. Так же мы увидим небольшой пример использования нейросети Kandinsky от Сбера для иконок приложения и, самое интересное, - как превратить дизайн из Figma в готовый экран на SwiftUI буквально в пару кликов!

Это был великолепный доклад, который мы советуем вам просмотреть.

Приятного просмотра! Увидимся в следующее воскресенье :)

#digest #доклад #ChatGPT
👍17🔥116👎1
Сравнение декларативных фреймворков

В этой статье автор покажем вам, как написать один и тот же код на трех популярных декларативных фреймворках — Jetpack Compose, SwiftUI и Flutter.

Таким образом, вы сможете сравнить, как они работают и чем отличаются при создании интерфейсов.

#ios #android #flutter
👍9🔥51👎1
Что такое память?

Основной единицей информации является бит, который равен 1 или 0. Традиционно мы организовываем биты в группы по восемь, называемые байтами. Память  —  это просто длинная последовательность байтов, один за другим уходящих в даль. Но они расположены в определенном порядке. Каждый байт получает число, называемое его адресом.

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

Cтатья для прочтения
Видео для закрепления материала

#digest #arc #память
👍113🔥2💩1
📢 Внимание, в это воскресенье у нас запланирован SwiftUI! 🎉

Мы приглашаем вас на прямую трансляцию, где Мишин Денис проведет детальный разбор одного из самых инновационных фреймворков разработки пользовательского интерфейса - SwiftUI! 🚀

SwiftUI - это мощный инструмент, который позволяет создавать потрясающие и современные пользовательские интерфейсы для ваших приложений на платформах iOS, macOS, watchOS и tvOS. В этом разборе мы рассмотрим все основные возможности и функции, которые делают SwiftUI таким классным и интуитивно понятным для разработчиков.

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

Присоединяйтесь к нам в это воскресенье, чтобы получить полезную информацию и вдохновение от нашего разбора SwiftUI! Не забудьте подписаться на наш YouTube-канал, чтобы получать уведомления о новых видео и быть в курсе всех наших интересных мероприятий. Увидимся в воскресенье в 19:30 по МСК! 🎥

#digest #доклад
12👍42🔥2🥴2
Как работает диспетчеризация в iOS на практике + ЛАЙФКОДИНГ

Диспетчеризация - это важный аспект разработки приложений для iOS, который позволяет эффективно управлять вызовами методов и функций. Она определяет, какой код будет выполнен в ответ на вызов определенной функции или метода.

iOS Такой подготовил доклад на YouTube, в котором подробно рассказывают о диспетчеризации в iOS и демонстрируют живой кодинг. В этом видео вы узнаете, что такое диспетчеризация и как она работает в iOS, а также увидите практические примеры использования.

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

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

#ios #digest #доклад #диспетчеризация
🔥15💩43👍3🤡1🖕1
💰 Обзор зарплат: сколько сейчас зарабатывают айтишники

Разберемся, что происходит с зарплатами в айти в последние годы и сколько зарабатывают IT-специалисты сейчас. Ориентируясь на данные Хабр Карьеры, то за ≈1,5 года зарплата в IT выросла примерно на 11,94%.

#digest #рынок
👍4👎3🔥21😱1
🌍 ЭФФЕКТИВНОЕ ИЗУЧЕНИЕ ИНОСТРАННЫХ ЯЗЫКОВ: ГОСТЬ, СОФЬЯ, ИНТЕРЕСЫ И СЕКРЕТЫ 🗣️

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

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

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

Выпуск получился достаточно полезным, информативным и интересным. Приятного просмотра😊

#digest #иностранныеязыки
👍12🔥74👎1
📣 Приглашаем желающих выступить с докладом на любую техническую тему в iOS! 📱

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

Что нужно сделать:
1. Определите тему вашего доклада. Это может быть что угодно - от новых функций в iOS до советов по производительности или даже внутреннему устройству операционной системы.
2. Укажите, сколько лет вы занимаетесь разработкой iOS. Нам интересно узнать, какой опыт вы имеете и какие проекты вы реализовали.
3. Укажите желаемую дату вашего выступления. Мы готовы обсудить возможные даты и подстроиться под ваши предпочтения.

Мы хотим создать вдохновляющую и образовательную атмосферу, поэтому все темы будут рассматриваться.
Если вы готовы поделиться своими знаниями и стать спикером, пожалуйста, свяжитесь с нами @new_repository с указанием темы вашего доклада, вашего опыта в разработке iOS и желаемой даты выступления.

Мы ждем ваших предложений и с нетерпением ожидаем ваших интересных и познавательных докладов! 🎉🎤

#digest #доклад #развитие
👍9👎43🔥2
Коллекция extensions для Swift

SwifterSwift - это коллекция из более 500 встроенных расширений Swift с удобными методами, синтаксическим сахаром и улучшениями производительности для широкого спектра примитивных типов данных, классов UIKit и Cocoa – более 500 в 1 – для iOS, macOS, tvOS, watchOS и Linux.

Этот репозиторий поможет вам улучшить производительность и упростить код. Посмотрите Examples.playground для более наглядного примера!

#ios #swift
16👍6🥴3🔥2
SwiftUI для большого B2C-продукта

В конце 2022 было запущено приложение Яндекс Путешествий на SwiftUI. Это было очень интересно, сложно и немножко больно.

Большие продукты очень аккуратно пробуют новые технологии, ведь для старых написаны разные хэлперы, либы, а для SwiftUI такого мало, поэтому сколько-то шишек набить все-таки пришлось. О них и будет этот доклад.

Слушатели смогут решить для себя, стоит ли запускать приложение с нуля полностью на относительно новом SwiftUI или стоит подождать, пока технология стабилизируется, узнать, какие боли могут возникнуть при проектировании нетривиального приложения на новом стеке, и как их решать.

#digest #swiftui
👍11🔥6👎31
Как автоматизировать обнаружение утечки памяти в вашем Swift-коде с помощью XCTest

Вы можете обнаружить утечки памяти с помощью инструментов или средств отладки графов памяти, но это может занять много времени. Лучше действовать проактивно, а не реактивно. Существует способ использовать XCTests для автоматического обнаружения утечек памяти при выполнении тестов.

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

#digest #XCTests
👍12🔥32💩1
Как стать идеальным кандидатом на должность IOS разработчика

Всем привет! В эти выходные мы подготовили для вас особенный выпуск, посвященный теме "Как стать идеальным кандидатом на собеседовании"

В гостях у нас был Владимир iOS разработчик. Он с радостью поделился с нами своими знаниями, опытом и документацией, чтобы помочь вам стать идеальным кандидатом📚

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

Мы уверены, что Вы найдете этот выпуск полезным и интересным! Приятного просмотра!

Делимся полезными ресурсами с доклада

1⃣ Канал с разбором вопросов от Владимира:
https://www.youtube.com/channel/UC7RS_sOg9XMX3dtyoAxFpsw

2⃣ Вопросы с собеседований:
https://docs.google.com/document/d/1umwB4nR5y-WLteylhRYC45Vg6fCj7nN30FYoCZvLzK4/edit?usp=sharing

3⃣ 350 листов теории:
https://docs.google.com/document/d/1ssZDXY6m9rhBL3G7pMOusdnLRRf7c3zLUc8jf7l2NyU/edit?usp=sharing

4⃣ Статья "память от 0 до 1":
https://habr.com/ru/companies/hh/articles/546856/

5⃣ Статья "Live coding интервью для iOS разработчиков":
https://habr.com/ru/articles/718334
🔥33👍155💩21