Признаки того, что вы еще не доросли до сеньора.
https://nicosmusings.substack.com/p/clear-signs-that-you-are-not-a-senior
https://nicosmusings.substack.com/p/clear-signs-that-you-are-not-a-senior
Nico's Musings
Clear Signs that You Are Not A Senior Developer
Not even close!
💩31👍11🔥4👎3
Что может считаться современным стеком для iOS разработки? Почитайте тред на Reddit, где выбирают лучшие линтер, билдсистему, кодогенератор и другие инструменты. И поделитесь своей собственной подборкой в комментариях!
https://www.reddit.com/r/iOSProgramming/comments/rsnj2h/what_does_a_modern_mobile_development_toolchain
https://www.reddit.com/r/iOSProgramming/comments/rsnj2h/what_does_a_modern_mobile_development_toolchain
Reddit
From the iOSProgramming community on Reddit
Explore this post and more from the iOSProgramming community
Реализация паттерна cascade of events в SwiftUI. Суть такая – в иерархии вьюшек определяются action’ы, которые запускаются для определенного события. При вызове этого события в каком-то subview все запустится по цепочке.
http://www.magnuskahr.dk/posts/2021/12/cascading-environment-actions-in-swiftui/
http://www.magnuskahr.dk/posts/2021/12/cascading-environment-actions-in-swiftui/
magnuskahr
Cascading Environment actions in SwiftUI | magnuskahr
We build an Observer-pattern-like implementation for SwiftUI with actions passed into the environment.
👍9🔥2
Зачем и как переводить DTO на кодогенерацию по схеме ответов бэкенда.
https://habr.com/ru/company/yandex/blog/598125/
https://habr.com/ru/company/yandex/blog/598125/
Хабр
Кодогенерация DTO: зачем она нужна и как её настроить
Data Transfer Object — модель данных, которые мы передаём из одного слоя приложения в другой. В Яндекс Go мы активно используем DTO. Предположим, нужно отобразить в UI приложения для вызова такси...
👍28👎9
Вышла бета-версия довольно симпатичного менеджера сниппетов Swift-кода, из которого можно драг-энд-дропать прямо в Xcode. Посмотрите гифку и, если понравится, вписывайтесь в тестфлайт.
https://twitter.com/gaudioaffectus/status/1478460329122312196
https://twitter.com/gaudioaffectus/status/1478460329122312196
Twitter
Harty
Hey, iOS Devs! Here’s a small demo of an incredibly useful App I created together with @AndreasInk in the last days. You can easily drag and drop Code Snippets into Xcode and Playgrounds. 🧑💻👀
👍28👎3
Помните, я несколько раз выкладывал Твиттер треды Jordan Rose про ошибки, допущенные при дизайне Swift? Так вот, он закончил всю серию и собрал их в одном месте.
https://belkadan.com/blog/tags/swift-regrets/
https://belkadan.com/blog/tags/swift-regrets/
🔥13❤3👍2
Мы много ругаемся на Xcode, но иногда у него получается и приятно удивлять. Например, он может автокомплитить
https://twitter.com/natpanferova/status/1478647485572603906
for-in,
называя переменную в цикле с учетом множественного числа в названии коллекции: items -> item, apples -> apple.
https://twitter.com/natpanferova/status/1478647485572603906
Twitter
Natalia Panferova
I just discovered that Xcode can fully autocomplete for-in loops, including the variable name. If the array variable is in plural, it creates the loop variable in singular. I’ve been always typing it out myself…
👍34👎15💩15😱8❤5🔥2😁1🤩1
История поиска причин странного бага работы с защищенными данными в Keychain, связанного с неочевидным поведением iOS при прогреве (pre-warm) приложения.
https://sourcediving.com/solving-mysterious-logout-issues-on-ios-15-8b818c089466
https://sourcediving.com/solving-mysterious-logout-issues-on-ios-15-8b818c089466
Medium
Solving Mysterious Logout Issues on iOS 15
Learn how we discovered, debugged and fixed a mysterious bug introduced in iOS 15 that caused our users to be logged out mistakenly
🔥6👍2
Есть много навыков, приобрести которые достаточно быстро, но отдачу от них вы будете чувствовать всю свою будущую карьеру. Один из таких небольших скиллов –
https://gist.github.com/vpnwall-services/ece867608e00fe1ee77ed4780ff5298f
curl <URL> | jq.
jq – это консольная утилита, которая позволяет на лету процессить и форматировать полученный json.https://gist.github.com/vpnwall-services/ece867608e00fe1ee77ed4780ff5298f
🔥5❤1👍1😁1
Столп нашего сообщества @Jonfir собрал в одном месте подборку материалов про async/await API. Добавьте в закладки, чтобы было проще разобраться с новыми технологиями.
https://jonfir.github.io/posts/async-await-materials/
https://jonfir.github.io/posts/async-await-materials/
🔥40
А раз уж мы начали день с асинхронщины, то вот еще новая статья от Санделла про то, как подружить кодовую базу на Combine с кодом на async/await.
https://www.swiftbysundell.com/articles/creating-combine-compatible-versions-of-async-await-apis
https://www.swiftbysundell.com/articles/creating-combine-compatible-versions-of-async-await-apis
Swift by Sundell
Creating Combine-compatible versions of async/await-based APIs | Swift by Sundell
Creating convenience APIs that make it possible to convert async/await-based functions into Combine publishers.
👍6
Обещаю, это последняя ссылка про async/await. В докладе обсуждается реализация async/await в Swift, а также сравнивают подходы, принятые в С++ и Rust.
https://www.youtube.com/watch?v=H_K-us4-K7s
https://www.youtube.com/watch?v=H_K-us4-K7s
YouTube
2021 LLVM Dev Mtg “Asynchronous Functions in Swift”
2021 LLVM Developers' Meeting
https://llvm.org/devmtg/2021-11/
—
Asynchronous Functions in Swift - John McCall, Arnold Schwaighofer
Slides: https://llvm.org/devmtg/2021-11/slides/2021-AsyncFunctionsInSwift.pdf
—
async/await is an increasingly common language…
https://llvm.org/devmtg/2021-11/
—
Asynchronous Functions in Swift - John McCall, Arnold Schwaighofer
Slides: https://llvm.org/devmtg/2021-11/slides/2021-AsyncFunctionsInSwift.pdf
—
async/await is an increasingly common language…
👍16
Что ждет Swift на сервере в 2022 году и как последние изменения в экосистеме на него повлияют.
https://theswiftdev.com/the-future-of-server-side-swift/
https://theswiftdev.com/the-future-of-server-side-swift/
Theswiftdev
The future of server side Swift - The.Swift.Dev.
What's going to happen with Swift on the Server in 2022? Distributed actors, Vapor 5, some predictions and wishes.
🎉3👍2
Какой язык вы бы выбрали, если бы вам надо было написать несложный бэкенд для своего приложения? База, немного бизнес-логики и REST API.
Anonymous Poll
33%
Python
21%
Go
7%
Java
33%
Swift
8%
Kotlin
6%
PHP
15%
JavaScript/TypeScript
9%
Другой
👍4😁1
Старт новой серии статей про использование CryptoKit. В первой из них разбирается, как работает криптография с открытым ключом.
https://tanaschita.com/20220105-public-key-cryptography-with-cryptokit/
https://tanaschita.com/20220105-public-key-cryptography-with-cryptokit/
Tanaschita
Public-key cryptography with CryptoKit for iOS
Learn how to implement public-key cryptography in iOS using CryptoKit. This guide covers encryption, digital signatures, and secure key exchange to protect sensitive data in our Swift apps.
👍12
Вы из тех, кто считает, что знание алгоритмов нужно только для собеседований на вайтбордах? Может быть, это короткое видео вас переубедит.
https://www.youtube.com/watch?v=ymCXsPwg8G8
https://www.youtube.com/watch?v=ymCXsPwg8G8
YouTube
Computer Science in the Real World: Building a Better Blur
I don't think sorting algorithms are the best introduction to Computer Science. So let's talk through a real world example of speeding up a blurring algorithm. We touch on time complexity ("Big O") and what a quadratic algorithm looks like.
Accidentally…
Accidentally…
🔥16👍9💩4😁2
Команда мобильной разработки Slack поделилась историей масштабного рефакторинга своих мобильных приложений, получившего название «Дупло». По ссылке – первая часть цикла, в которой команда рассказывает про историю развития их архитектуры, цели рефакторинга и выбранные метрики. Если вы тоже работаете над проектом с огромной легаси кодовой базой, обязательно прочитайте!
https://slack.engineering/stabilize-modularize-modernize-scaling-slacks-mobile-codebases/
https://slack.engineering/stabilize-modularize-modernize-scaling-slacks-mobile-codebases/
Engineering at Slack
Stabilize, Modularize, Modernize: Scaling Slack’s Mobile Codebases - Engineering at Slack
When do you need to overhaul a large code base to address tech debt? What is the best way to address widespread inconsistencies and outdated patterns? How can you make significant architectural improvements to a complex application while still continuing…
🔥13👍3
Как и почему добавление SFSymbols в проект влияет на время билда.
https://hacknicity.medium.com/xcode-build-times-with-custom-sf-symbols-58ebdd92bc43
https://hacknicity.medium.com/xcode-build-times-with-custom-sf-symbols-58ebdd92bc43
Medium
Xcode Build Times with Custom SF Symbols
Introduction
👍3
Подробное исследование того, как
https://www.emergetools.com/blog/posts/SwiftProtocolConformance
as?
чеки на реализацию протокола замедляют как время старта приложения, так и производительность в рантайме.https://www.emergetools.com/blog/posts/SwiftProtocolConformance
Emergetools
Emerge Tools Blog | The Surprising Cost of Protocol Conformances in Swift
A deep dive into the Swift runtime to see how protocol conformance checks slow down post-main startup time as your binary size increases.
👍22
Я хочу активно развивать канал дальше, но для этого мне хочется узнать побольше про вас. Я подготовил небольшой опрос, который поможет мне разобраться, кто сейчас читает канал, и как сделать его лучше. А чтобы мотивировать вас ответить на мои вопросы, я разыграю между всеми, кто его прошел, две проходки на ближайшую конференцию Podlodka iOS Crew, и одну подписку на Pointfree!
https://forms.gle/16zJnDAsEXJXZKSa8
https://forms.gle/16zJnDAsEXJXZKSa8
Google Docs
Опрос подписчиков iOS Good Reads
Чтобы понять, как дальше развивать канал, мне надо получше узнать его текущих читателей. Ответьте на несколько вопросов – а я за это разыграю билет на Podlodka iOS Crew и подписку на PointFree!
❤24👍16👎7🔥4😱3