Что делать с грязным кодом?
Ребята в hello world рассказывают о многих интересных и актуальных вещах из мира анализа данных, разработки приложений и программирования.
Канал будет полезен многим начинающим разработчикам и просто интересующимся.
Ребята в hello world рассказывают о многих интересных и актуальных вещах из мира анализа данных, разработки приложений и программирования.
Канал будет полезен многим начинающим разработчикам и просто интересующимся.
👽 Only the paranoid survive
13 подвохов мобильного приложения, о которых лучше знать до старта разработки: выбор фрейморвка, адаптивность дизайна, работа офлайн и многое другое. Ну и классные мемы.
https://habr.com/ru/post/549642/
13 подвохов мобильного приложения, о которых лучше знать до старта разработки: выбор фрейморвка, адаптивность дизайна, работа офлайн и многое другое. Ну и классные мемы.
https://habr.com/ru/post/549642/
🎨 Reimagining Apple’s documentation
Мы знаем, что Apple славится специфическим (своим, уникальным) подходом ко всему. Это касается и документации. Она у них удивительная. Paul Hudson подготовил разбор того, что сделало бы документацию Apple крутой. По ссылке доступны TL;DR.
https://www.hackingwithswift.com/articles/231/reimagining-apples-documentation
Мы знаем, что Apple славится специфическим (своим, уникальным) подходом ко всему. Это касается и документации. Она у них удивительная. Paul Hudson подготовил разбор того, что сделало бы документацию Apple крутой. По ссылке доступны TL;DR.
https://www.hackingwithswift.com/articles/231/reimagining-apples-documentation
✍️ Swift Mentorship Program
Команда Swift заанонсила Mentroship Program, чтобы помочь разработчикам начать вносить свой вклад в open-source. Программа будет длиться 12 недель. В рамках которых mentro (наставник) будут активно помогать mentee (подопечный).
Для участия нужно пройти опрос.
https://swift.org/mentorship/#mentee-interest-survey
Все детали
https://swift.org/blog/swift-mentorship-program/
Команда Swift заанонсила Mentroship Program, чтобы помочь разработчикам начать вносить свой вклад в open-source. Программа будет длиться 12 недель. В рамках которых mentro (наставник) будут активно помогать mentee (подопечный).
Для участия нужно пройти опрос.
https://swift.org/mentorship/#mentee-interest-survey
Все детали
https://swift.org/blog/swift-mentorship-program/
ABCDE методология распределения задач в To-Do листе помогает сфокусироваться на самом важном (A) и выбросить самые ненужные задачи (E).
https://advice.theshineapp.com/articles/declutter-your-overwhelming-to-do-list-with-abcde/
https://advice.theshineapp.com/articles/declutter-your-overwhelming-to-do-list-with-abcde/
Shine
Declutter Your Overwhelming To-Do List With ABCDE
It's OK to downsize your to-do list.
This media is not supported in your browser
VIEW IN TELEGRAM
Полноценный гайд по тестированию пуш нотификаций от Antoine.
https://www.avanderlee.com/workflow/testing-push-notifications-ios-simulator/
https://www.avanderlee.com/workflow/testing-push-notifications-ios-simulator/
This media is not supported in your browser
VIEW IN TELEGRAM
Ну а Sundell тем временем рендерит HTML-ки на Swift. Что вы делаете в выходные? Можно резюме насвистить.
Библиотека
https://github.com/JohnSundell/Plot
Библиотека
https://github.com/JohnSundell/Plot
🖼 Книга «Про доступность iOS»
Ребята из Dodo делают очень крутую работу. Выпустили книгу на необычную тему: про разработку доступных мобильных приложений. Михаил Рубанов рассказывает как незрячие пользуются телефоном, какие проблемы у них бывают, как исправлять все виды проблем.
Книга бесплатная, электронная. Первая глава уже доступна, а остальные будут выходить еженедельно. Все примеры взяты из приложения Додо Пиццы, можно вживую посмотреть как это работает.
https://dodo.dev/a11y-book
Респект за такой вклад в сообщество, для остальных напомню, что канал открыт для распространения материалов на безвозмездной основе. Если вы делаете что-то классное для сообщества, смело кидайте мне в личку.
Ребята из Dodo делают очень крутую работу. Выпустили книгу на необычную тему: про разработку доступных мобильных приложений. Михаил Рубанов рассказывает как незрячие пользуются телефоном, какие проблемы у них бывают, как исправлять все виды проблем.
Книга бесплатная, электронная. Первая глава уже доступна, а остальные будут выходить еженедельно. Все примеры взяты из приложения Додо Пиццы, можно вживую посмотреть как это работает.
https://dodo.dev/a11y-book
Респект за такой вклад в сообщество, для остальных напомню, что канал открыт для распространения материалов на безвозмездной основе. Если вы делаете что-то классное для сообщества, смело кидайте мне в личку.
Сетевой слой на Combine
Небольшой гайд, время чтения 2 минуты, автор показывает очень простое применение Combine для разработки сетевого слоя.
https://udaypatial.medium.com/writing-a-generic-reusable-networking-layer-using-combine-swift-ios-fe8e16404a13
Небольшой гайд, время чтения 2 минуты, автор показывает очень простое применение Combine для разработки сетевого слоя.
https://udaypatial.medium.com/writing-a-generic-reusable-networking-layer-using-combine-swift-ios-fe8e16404a13
Удобная библиотека, которая позволяет пользователям проще делиться со службой поддержки диагностическими данными при возникновении багов.
https://github.com/WeTransfer/Diagnostics
https://github.com/WeTransfer/Diagnostics
🧾 Всё о StoreKit 2
WWDC 21 порадовал очень крупным обновлением для работы со встроенными покупками – StoreKit 2. В статье собраны все изменения и ещё немного размышлений от моего коллеги, @suriksarkisyan, SDK Engineer в qonversion.io. Сурен работает со StoreKit на постоянной основе и описывает, почему многое из представленного давно назрело.
https://habr.com/ru/post/563280/
WWDC 21 порадовал очень крупным обновлением для работы со встроенными покупками – StoreKit 2. В статье собраны все изменения и ещё немного размышлений от моего коллеги, @suriksarkisyan, SDK Engineer в qonversion.io. Сурен работает со StoreKit на постоянной основе и описывает, почему многое из представленного давно назрело.
https://habr.com/ru/post/563280/
Хабр
Meet StoreKit 2
Всем привет, меня зовут Сурен, я SDK Engineer в qonversion.io. Мы - data платформа для приложений с подписками. Наши мобильные SDK предоставляют интерфейс для работы со StoreKit и Google Billing...
Swift становится всё более высокоуровневым языком. Вот и попытка решить за разработчика ряд известных проблем при работе с много-поточностью привела к появлению нового типа в Swift 5.5 – Actors.
Акторы – это математическая модель, здесь ничего нового. Если вы не знакомы с понятием, можете представлять каждый актор как остров, который общается с материком посредством лодок. Вся логика взаимодействия актора с миром содержится в самой модели.
Если говорить уже знакомыми терминами, то актор в Swift, это фактически DispatchQueue, state, а также механизм управления этим состоянием. Иными словами, всё то, что раньше делали вручную, язык берёт на себя.
Это действительно отличный инструмент, который вместе с async/await был рекомендован для внедрения аж 29 июля 2016 года. Спустя 5 лет разработчики дождались. Вооружайтесь, но помните – с любой силой приходит и ответственность 😉
Материалы для изучения:
https://developer.apple.com/videos/play/wwdc2021/10133/
https://betterprogramming.pub/a-deep-dive-into-actors-in-swift-5-5-8cc2fa004ded
Акторы – это математическая модель, здесь ничего нового. Если вы не знакомы с понятием, можете представлять каждый актор как остров, который общается с материком посредством лодок. Вся логика взаимодействия актора с миром содержится в самой модели.
Если говорить уже знакомыми терминами, то актор в Swift, это фактически DispatchQueue, state, а также механизм управления этим состоянием. Иными словами, всё то, что раньше делали вручную, язык берёт на себя.
Это действительно отличный инструмент, который вместе с async/await был рекомендован для внедрения аж 29 июля 2016 года. Спустя 5 лет разработчики дождались. Вооружайтесь, но помните – с любой силой приходит и ответственность 😉
Материалы для изучения:
https://developer.apple.com/videos/play/wwdc2021/10133/
https://betterprogramming.pub/a-deep-dive-into-actors-in-swift-5-5-8cc2fa004ded
Apple Developer
Protect mutable state with Swift actors - WWDC21 - Videos - Apple Developer
Data races occur when two separate threads concurrently access the same mutable state. They are trivial to construct, but are notoriously...
📦 Swift Collections & Swift Algorithms
Apple представила два новых пакета, которые расширяют набор структур данных и алгоритмов в Swift.
Сессия WWDC 2021
https://developer.apple.com/videos/play/wwdc2021/10256/
Swift Collections добавляет три структуры данных (кратко опишем преимущества):
- Deque — коллекция, которая позволяет эффективно добавлять и удалять начальные элементы, при этом эффективность добавления и удаления элементов с конца сопоставима с Array;
- OrderedSet — Set, который сохраняет порядок, в котором элементы были добавлены;
- OrderedDictionary — Dictionary, который сохраняет порядок, в котором элементы были добавлены.
Подробнее: https://swift.org/blog/swift-collections/
Репозиторий: https://github.com/apple/swift-collections
Swift Algorithms добавляет дополнительные эффективные методы для последовательностей и коллекций:
- генерация сочетаний;
- генерация перестановок;
- генерация всех пар двух последовательностей;
- разбиение последовательности на подпоследовательности по переданному условию;
- объединение последовательностей с одинаковым типом данных;
- итерация последовательности заданное количество раз;
- удаление повторяющихся элементов из последовательности;
- случайная выборка элементов k элементов из последовательности;
- разбиение последовательностей;
- поворот последовательности.
Подробнее: https://swift.org/blog/swift-algorithms/
Репозиторий: https://github.com/apple/swift-algorithms
Apple представила два новых пакета, которые расширяют набор структур данных и алгоритмов в Swift.
Сессия WWDC 2021
https://developer.apple.com/videos/play/wwdc2021/10256/
Swift Collections добавляет три структуры данных (кратко опишем преимущества):
- Deque — коллекция, которая позволяет эффективно добавлять и удалять начальные элементы, при этом эффективность добавления и удаления элементов с конца сопоставима с Array;
- OrderedSet — Set, который сохраняет порядок, в котором элементы были добавлены;
- OrderedDictionary — Dictionary, который сохраняет порядок, в котором элементы были добавлены.
Подробнее: https://swift.org/blog/swift-collections/
Репозиторий: https://github.com/apple/swift-collections
Swift Algorithms добавляет дополнительные эффективные методы для последовательностей и коллекций:
- генерация сочетаний;
- генерация перестановок;
- генерация всех пар двух последовательностей;
- разбиение последовательности на подпоследовательности по переданному условию;
- объединение последовательностей с одинаковым типом данных;
- итерация последовательности заданное количество раз;
- удаление повторяющихся элементов из последовательности;
- случайная выборка элементов k элементов из последовательности;
- разбиение последовательностей;
- поворот последовательности.
Подробнее: https://swift.org/blog/swift-algorithms/
Репозиторий: https://github.com/apple/swift-algorithms
📖 Apple DocC
DocC — инструмент для создания документации, представленный Apple на WWDC 2021.
DocC позволяет создавать документацию из MarkDown комментариев для QuickHelp, Developer Documentation и экспортировать её как сайт. Теперь MarkDown в Xcode поддерживает ссылки на другие свойства и методы, а сгенерированная документация позволяет по ним перемещаться.
Пока DocC поддерживает только фреймворки и пакеты, при этом он создает документацию только для public части.
DocC — это не просто аналог Jazzy, кроме создания обычного справочника, в DocC появилась возможность добавлять статьи и туториалы.
Подборка сессий WWDC 2021 про DocC:
– Elevate your DocC documentation in Xcode
– Build interactive tutorials using DocC
– Host and automate your DocC documentation
Также Paul Hudson одним из первых написал статью про DocC.
DocC — инструмент для создания документации, представленный Apple на WWDC 2021.
DocC позволяет создавать документацию из MarkDown комментариев для QuickHelp, Developer Documentation и экспортировать её как сайт. Теперь MarkDown в Xcode поддерживает ссылки на другие свойства и методы, а сгенерированная документация позволяет по ним перемещаться.
Пока DocC поддерживает только фреймворки и пакеты, при этом он создает документацию только для public части.
DocC — это не просто аналог Jazzy, кроме создания обычного справочника, в DocC появилась возможность добавлять статьи и туториалы.
Подборка сессий WWDC 2021 про DocC:
– Elevate your DocC documentation in Xcode
– Build interactive tutorials using DocC
– Host and automate your DocC documentation
Также Paul Hudson одним из первых написал статью про DocC.
Apple Developer
Meet DocC documentation in Xcode - WWDC21 - Videos - Apple Developer
Discover how you can use DocC to build and share documentation for Swift packages and frameworks. We'll show you how to begin generating...
#промо
Хотите создавать приложения для Apple, даже если раньше никогда не программировали?
Начните с изучения Swift — языка программирования для разработчиков iOS и macOS.
Прямо сейчас запишитесь на бесплатный интенсив GeekBrains «Swift для начинающих».
За два часа вы:
- узнаете особенности и преимущества Swift;
- научитесь использовать базовые конструкции Swift;
- создадите простое iOS-приложение.
Участие бесплатное, регистрация по ссылке.
Хотите создавать приложения для Apple, даже если раньше никогда не программировали?
Начните с изучения Swift — языка программирования для разработчиков iOS и macOS.
Прямо сейчас запишитесь на бесплатный интенсив GeekBrains «Swift для начинающих».
За два часа вы:
- узнаете особенности и преимущества Swift;
- научитесь использовать базовые конструкции Swift;
- создадите простое iOS-приложение.
Участие бесплатное, регистрация по ссылке.
📲 Нововведения в iOS 15 для разработчиков и дизайнеров
Основные из них:
- новый способ делиться геополицией;
- появились приоритеты уведомлений;
- новый встроенный controller — UISheetPresentationController;
- новые способы раскраски иконок SF Symbols 3;
- UIToolbar и UITabBar теперь не отображают фон при прокрутке страницы вниз;
- возвращение колеса прокрутки в UIDatePicker;
- новые стили для UIButton;
- унификация системных цветов.
https://ux.pub/ios-15-chto-novogo-dlya-produktovyh-dizaynerov-i-razrabotchikov/
Основные из них:
- новый способ делиться геополицией;
- появились приоритеты уведомлений;
- новый встроенный controller — UISheetPresentationController;
- новые способы раскраски иконок SF Symbols 3;
- UIToolbar и UITabBar теперь не отображают фон при прокрутке страницы вниз;
- возвращение колеса прокрутки в UIDatePicker;
- новые стили для UIButton;
- унификация системных цветов.
https://ux.pub/ios-15-chto-novogo-dlya-produktovyh-dizaynerov-i-razrabotchikov/
⚙️ Что нового в SwiftUI 3
Новые возможности:
— Новые вью - Canvas и TimelineView
— Асинхронные задачи и AsyncImage для загрузки изображений по URL
— Враппер @FocusState для управления фокусом вью
Расширения:
— В списке появился свайп, поддержка Pull-to-Refresh и поиска
— Text вью теперь поддерживает markdown
— Появился \.dismiss в @Environment
— Добавили badges для TabView и Text в List
— Теперь можно стилизовать сепараторы
— 4 новых стиля для Toggle
— К Color добавили .mint, .teal, .cyan, .indigo, .brown
— Новый эффект размытия заднего фона с помощью материалов
Статьи для изучения:
— https://swiftwithmajid.com/2021/06/08/what-is-new-in-swiftui-after-wwdc21/
— https://www.fivestars.blog/articles/swiftui-wwdc21/
— https://www.hackingwithswift.com/articles/235/whats-new-in-swiftui-for-ios-15
Сессия WWDC 2021:
— https://developer.apple.com/videos/play/wwdc2021/10018/
Новые возможности:
— Новые вью - Canvas и TimelineView
— Асинхронные задачи и AsyncImage для загрузки изображений по URL
— Враппер @FocusState для управления фокусом вью
Расширения:
— В списке появился свайп, поддержка Pull-to-Refresh и поиска
— Text вью теперь поддерживает markdown
— Появился \.dismiss в @Environment
— Добавили badges для TabView и Text в List
— Теперь можно стилизовать сепараторы
— 4 новых стиля для Toggle
— К Color добавили .mint, .teal, .cyan, .indigo, .brown
— Новый эффект размытия заднего фона с помощью материалов
Статьи для изучения:
— https://swiftwithmajid.com/2021/06/08/what-is-new-in-swiftui-after-wwdc21/
— https://www.fivestars.blog/articles/swiftui-wwdc21/
— https://www.hackingwithswift.com/articles/235/whats-new-in-swiftui-for-ios-15
Сессия WWDC 2021:
— https://developer.apple.com/videos/play/wwdc2021/10018/
📱Приглашаем на One Day Offer для iOS разработчиков от Tinkoff
Вы — в течение одного дня общаетесь с командой Тинькофф.
Мы — даем оффер в конце дня, если общение проходит хорошо.
В какую команду
Набираем разработчиков в мобильный банк — делать приложение Тинькофф для 10 миллионов клиентов каждый месяц. Сейчас над приложением работают 5 технических и 25 кросс-функциональных команд, поэтому вы сможете выбрать интересное вам направление.
Кого ждем
У нас сильная команда, и мы ищем таких же коллег: с хорошим знанием языка, платформы, умением писать качественный код и опытом от двух лет.
📨 Отправляйте заявку на участие в Тинькофф One Day Offer. В течение трех дней мы дадим обратную связь, а за два дня до мероприятия пришлем всю информацию об интервью.
Вы — в течение одного дня общаетесь с командой Тинькофф.
Мы — даем оффер в конце дня, если общение проходит хорошо.
В какую команду
Набираем разработчиков в мобильный банк — делать приложение Тинькофф для 10 миллионов клиентов каждый месяц. Сейчас над приложением работают 5 технических и 25 кросс-функциональных команд, поэтому вы сможете выбрать интересное вам направление.
Кого ждем
У нас сильная команда, и мы ищем таких же коллег: с хорошим знанием языка, платформы, умением писать качественный код и опытом от двух лет.
📨 Отправляйте заявку на участие в Тинькофф One Day Offer. В течение трех дней мы дадим обратную связь, а за два дня до мероприятия пришлем всю информацию об интервью.
Async await в примерах
Новая статья от Antoine с примерами использования async/await, разбором концепции и сравнением с concurrency подходом.
https://www.avanderlee.com/swift/async-await/
Новая статья от Antoine с примерами использования async/await, разбором концепции и сравнением с concurrency подходом.
https://www.avanderlee.com/swift/async-await/
Возможность управлять фокусом TextField и других элементов в SwiftUI появилась аж в третей версии, спустя два года после запуска.
Иными словами, если вы хотите сделать форму ввода и автоматически передать фокус (first responder) элементу – изощряйтесь, think different, придумывайте велосипеды, тащите UITextField или используйте версию таргета iOS 15 (она не в проде ещё).
Топик WWDC
Direct and reflect focus in SwiftUI
Обсуждение на форуме Apple, где разработчики делятся своим разочарованием
https://developer.apple.com/forums/thread/650112
Как мне сказали, Flutter имел эту возможность сразу в первой версии. Не проверял, но звучит логично. Почему Apple мог забить на такой важный функционал?
Иными словами, если вы хотите сделать форму ввода и автоматически передать фокус (first responder) элементу – изощряйтесь, think different, придумывайте велосипеды, тащите UITextField или используйте версию таргета iOS 15 (она не в проде ещё).
Топик WWDC
Direct and reflect focus in SwiftUI
Обсуждение на форуме Apple, где разработчики делятся своим разочарованием
https://developer.apple.com/forums/thread/650112
Как мне сказали, Flutter имел эту возможность сразу в первой версии. Не проверял, но звучит логично. Почему Apple мог забить на такой важный функционал?
🙌 Snapshot тестирование
Хороший Гайд по внедрению снапшот тестов в проект.
https://habr.com/ru/company/vivid_money/blog/569032/
Хороший Гайд по внедрению снапшот тестов в проект.
https://habr.com/ru/company/vivid_money/blog/569032/
Хабр
Внедряем Snapshot testing в UI-тесты iOS
Хабр, привет! Меня зовут Борис. Я AQA iOS-engineer в Vivid Money. В этой статье я хочу рассказать про snapshot тесты и показать, как их можно эффективно применять в своём проекте. Данная статья будет...