Уже поиграл, правда в Pharaoh: New Era - вместо того, чтобы исправить баги оригинала (особенно когда зависает строительство), они взяли движок без изменений и перерисовали текстуры на еще более мультяшные
МВД РФ столкнулось с невозможностью замены серверов на отечественных процессорах
Разработки МЦСТ «встали на стоп», потому что у них нет кристаллов, которые производили для них на Тайване, рассуждает о причинах собеседник «Ведомостей» на одном из предприятий ОПК.
Т.е. даже Эльбрусы не такие отечественные, какими их хотят представить?
Я думал над пунктами "2) Неудобная обработка ошибок" и "3) Компилятор позволяет нам совершать ошибки с замыканиями". Не совсем корректно сравнивать в таком контексте - у вас в примере с gcd функция самодостаточная, а в случае с async/await вы еще должны обернуть вызов `loadAndProcessImage` в Task и в do-catch, что добавит вложенности. Получается в async/await примере вложенность у вас не намного меньше, просто часть вызовов пропущена. У вызовов GCD тоже можно сделать небольшой уровень вложенности чисто внутренними средствами. Например, так: https://michaellong.medium.com/how-to-chain-api-calls-using-swift-5s-new-result-type-and-gcd-56025b51033c
Посмотрите на это с другой стороны - в google play никто не самоутверждается. Благодаря этому в маркете можно найти 100500 версий приложения Hello World и вот пример:
Почему вы видите только положительные стороны строгой типизации? Для начала такой строгой типизации нет наверное ни в одном языке - вы даже 2 и 2.5 не сможете сложить из-за того, что они разных типов.
Со строками там вообще лютая дичь - результат поиска подстроки в строке - это не строка, а произвольный несовместимый тип. Поиск позиции подстроки тоже завязан не на int, а на некий произвольный тип
Кэширование зависимостей и модулей.Опять же, Cocoapods не умеет этого по умолчанию.
Уточните, что именно cocoapods не кеширует. Вы же выкачиваете модули и сохраняете их на диске. И время сборки значительно отличается, если раньше вы уже собирали проект
мои способы реализации bottom sheet (а также alert и им подобных) на UIKit. Что-то из этого можно использовать и для SwiftUI:
UIViewController, view полупрозрачный, во view с анимацией добавляется еще один view - контейнер для содержимого плашки
UIViewController + custom tranisition. Фактически это то, что вы пытались сделать в статье - плашка произвольной формы и высоты, соответствующая view controller
спасибо. Тоже пытался понять, что за "общение" между телефонами
Уже поиграл, правда в Pharaoh: New Era - вместо того, чтобы исправить баги оригинала (особенно когда зависает строительство), они взяли движок без изменений и перерисовали текстуры на еще более мультяшные
многие ремастеры делаются нейронками.
И да, вместо того, чтобы сделать все в Starcraft 2-подобном стиле они перерисовали текстуры так, что графика стала мультяшной
Т.е. даже Эльбрусы не такие отечественные, какими их хотят представить?
работал в яндексе, с зарплатой точно не обижали. По остальным пунктам все может быть еще хуже, чем указано в статье
Я думал над пунктами "2) Неудобная обработка ошибок" и "3) Компилятор позволяет нам совершать ошибки с замыканиями". Не совсем корректно сравнивать в таком контексте - у вас в примере с gcd функция самодостаточная, а в случае с async/await вы еще должны обернуть вызов `loadAndProcessImage` в Task и в do-catch, что добавит вложенности. Получается в async/await примере вложенность у вас не намного меньше, просто часть вызовов пропущена.
У вызовов GCD тоже можно сделать небольшой уровень вложенности чисто внутренними средствами. Например, так:
https://michaellong.medium.com/how-to-chain-api-calls-using-swift-5s-new-result-type-and-gcd-56025b51033c
У вас заголовок «Малоизвестные фичи SwiftUI», а потом прямым текстом «Малоизвестные фичи или особенности языка Swift»
все же проще - id устройства вносится в аккаунт разработчика apple и устанавливается так, как будто билд для тестирования
тоже об этом подумал - если vk, то почему именно "xmail")
Посмотрите на это с другой стороны - в google play никто не самоутверждается. Благодаря этому в маркете можно найти 100500 версий приложения Hello World и вот пример:
https://play.google.com/store/apps/details?id=com.heyflutter.hello_world&hl=ru
Проверил пару первых попавшихся ссылок - или просто нерабочие, или ведут на несуществующие материалы
в видосе чел решил связаться с китайской фабрикой на которой походу и сделан "первый российский планшет"
Почему вы видите только положительные стороны строгой типизации? Для начала такой строгой типизации нет наверное ни в одном языке - вы даже 2 и 2.5 не сможете сложить из-за того, что они разных типов.
Со строками там вообще лютая дичь - результат поиска подстроки в строке - это не строка, а произвольный несовместимый тип. Поиск позиции подстроки тоже завязан не на int, а на некий произвольный тип
ага, а потом будут всем рассказывать какие они белые и пушистые, а злая Apple удаляет их приложения
Можете объяснить, зачем вам iPhone 16 pro при наличии нормально работающего iPhone 14?
а что если вызвать не
viewDidLoad
напрямую, а более безопасно - например_=view
илиloadViewIfNeeded()
?а есть ли в этом ipad вообще смысл? Процессор A17 - и это когда в последних айфонах A18, а в последних айпадах - вообще M2 и M4 (как в ноутбуках)
Уточните, что именно cocoapods не кеширует. Вы же выкачиваете модули и сохраняете их на диске. И время сборки значительно отличается, если раньше вы уже собирали проект
мои способы реализации bottom sheet (а также alert и им подобных) на UIKit. Что-то из этого можно использовать и для SwiftUI:
UIViewController, view полупрозрачный, во view с анимацией добавляется еще один view - контейнер для содержимого плашки
UIViewController + custom tranisition. Фактически это то, что вы пытались сделать в статье - плашка произвольной формы и высоты, соответствующая view controller
всевозможные готовые библиотеки
называется "dependency injection через публичное свойство".
А еще Xcode как минимум все IBOutlet переменные помечает со знаком "!" - тоже неправильно?