Согласно новому прогноз развития рынка приложений Sensor Tower, к 2026 году глобальные потребительские расходы в App Store и Google Play на премиум приложения, покупки в приложениях и подписки достигнут 233 миллиардов долларов. Это на 77% больше, чем 132 миллиарда долларов, которые потребители потратили в 2021 году. В 2026 году App Store получит от пользователей 161 млрд (в среднем +13.7% в год), а Google Play 72 млрд (+8.9% в год). Интересно, что по прогнозу в App Store доход от приложений обгонит доход от игр уже в 2024, а в 2026 игры уже будут давать только 43% доходов магазина, что на 23 процентных пункта меньше, чем в 2020 году.
🔥6
UITableView 🚀
Годная статья, про то, как сделать таблицу и бесконечную прокрутку.
https://pedroalvarez-29395.medium.com/uitableview-infinite-scrolling-a-lot-simpler-than-you-knew-uitableviewdatasourceprefetching-51ea5c312a80
Годная статья, про то, как сделать таблицу и бесконечную прокрутку.
https://pedroalvarez-29395.medium.com/uitableview-infinite-scrolling-a-lot-simpler-than-you-knew-uitableviewdatasourceprefetching-51ea5c312a80
Medium
UITableView infinite scrolling a lot simpler than you knew: UITableViewDataSourcePrefetching
Imagine the following scenario: You have a UITableView that you want to present lots of data that were fetched from the WEB via some API…
🔥7👍1
Async/Await , Combine, Closures: руководство по современному асинхронному Swift
https://quickbirdstudios.com/blog/async-await-combine-closures/
https://quickbirdstudios.com/blog/async-await-combine-closures/
QuickBird Studios
Combine, Closures: A Guide to Modern Asynchronous Swift
A comparison between async/await, Combine, and closures in Swift. Includes an overview of the strengths and weaknesses of the different approaches.
🔥8👍2
Написание хорошего и переиспользуемого кода - это не только про архитектуру. Протоколы и дженерики - два крутых инструмента для того, чтобы сделать код гибким и переиспользуемым 🤸
Вот отличная статья про
https://www.swiftbysundell.com/articles/referencing-generic-protocols-with-some-and-any-keywords/
Вот отличная статья про
some
и any
кейворды с дженерик протоколами в Swift 5.7 🔥https://www.swiftbysundell.com/articles/referencing-generic-protocols-with-some-and-any-keywords/
Swift by Sundell
Using the ‘some’ and ‘any’ keywords to reference generic protocols in Swift 5.7 | Swift by Sundell
How Swift 5.7 makes generic protocols more powerful and easier to work with, thanks to the ‘some’ and ‘any’ keywords.
👍7
очень полезный материал снова о базовых вещах с памятью
программист — это впервую очередь не заложник своей платформы. И изучая иос не нужно забывать, что этот мир яблок не отдельный остров, который далек от компьютерных наук. А лишь абстракция над общим устройством компьютеров
https://youtu.be/TajLTcjBgIg
программист — это впервую очередь не заложник своей платформы. И изучая иос не нужно забывать, что этот мир яблок не отдельный остров, который далек от компьютерных наук. А лишь абстракция над общим устройством компьютеров
https://youtu.be/TajLTcjBgIg
YouTube
Лекция 3. Работа с памятью, выполнение программ (Программирование на C++, часть 1)
https://compscicenter.ru/
Лекция №3 в курсе "Программирование на C++, часть " (осень 2018).
Преподаватель курса: Валерий Михайлович Лесин
Лекция №3 в курсе "Программирование на C++, часть " (осень 2018).
Преподаватель курса: Валерий Михайлович Лесин
👍5🔥4
HTTP - протокол прикладного уровня, который используется для передачи данных.
Основной http является клиент-сервер.
Каждое HTTP сообщение состоих из трех частей, которые передаются в указанном порядке
1. стартовая строка - определяет тип сообщения
2. заголовки - характерезуют тело сообщения, параметры передачи и прочие сведения
3. тело сообщения - непосредственно данные сообщения
Методы HTTP запросов:
get - используется для запроса содержимого указанного ресурса.
head - аналогичен запросу get, за исключением того, что в ответете сервера отсутствует тело
post - применяется для передачи данных заданому ресурсу
put - применяется для загрузки содержимого запроса
patch - аналогично put, но только применяется к фрагменту ресурса
delete - удаляет указанный ресурс
trace - возвращает полученный запрос
connect - преобразует соединение запроса в прозрачный TCP/IP-туннель
Основной http является клиент-сервер.
Каждое HTTP сообщение состоих из трех частей, которые передаются в указанном порядке
1. стартовая строка - определяет тип сообщения
2. заголовки - характерезуют тело сообщения, параметры передачи и прочие сведения
3. тело сообщения - непосредственно данные сообщения
Методы HTTP запросов:
get - используется для запроса содержимого указанного ресурса.
head - аналогичен запросу get, за исключением того, что в ответете сервера отсутствует тело
post - применяется для передачи данных заданому ресурсу
put - применяется для загрузки содержимого запроса
patch - аналогично put, но только применяется к фрагменту ресурса
delete - удаляет указанный ресурс
trace - возвращает полученный запрос
connect - преобразует соединение запроса в прозрачный TCP/IP-туннель
👍12
Функция stride()
Если нам нужно в массиве пройтись по значением с определенным шагом, стоит воспользоваться функцией stride(). Первый аргумент - начальное число. Второй аргумент - до какого числа идет перемещение. Третий аргумент - шаг перемещения. Он может быть как положительным, так и отрицательным.
Если нам нужно в массиве пройтись по значением с определенным шагом, стоит воспользоваться функцией stride(). Первый аргумент - начальное число. Второй аргумент - до какого числа идет перемещение. Третий аргумент - шаг перемещения. Он может быть как положительным, так и отрицательным.
👍15😱1
Optional Binding
Optional Binding позволяет проверить, содержит ли опционал .some-значение. Если содержит, извлекает его и предоставляет к нему доступ с помощью локальной переменной (обычно константной). Optional Binding работает в контексте конструкций if, while и guard. Если опционал в состоянии nil, запускается блок else.
Optional Binding позволяет проверить, содержит ли опционал .some-значение. Если содержит, извлекает его и предоставляет к нему доступ с помощью локальной переменной (обычно константной). Optional Binding работает в контексте конструкций if, while и guard. Если опционал в состоянии nil, запускается блок else.
👍7