Комментарии 15
У него есть архитектуры MVC/MVVM/ MVP
Ясно-понятно. Спасибо.
Готов к критике?
Пожалуйста. Увидев заголовок, мне стало любопытно, что же все-таки лучше, а главное для кого или чего. Но, к моему сожалению, ответа на такой философский вопрос в статье нет, зато есть какая-то коротенькая (за это отдельное спасибо) белиберда из слов, сложенных человеком, который где-то что-то слышал, но предметом явно не владеет.
SwiftUI - поддержка собственной иерархии представлений, а затем платформа заботиться/обновляет данные на экране (canvas)
UIkit - поддерживает собственное состояние, код - синхронизацию этого состояния
Вы сами понимаете, что здесь написано? Простите.
Добрый день!
есть небольшие поправки) от себя и вообще..
- "Apple предоставила декоративный фреймворк SwiftUI", представила декларативный фреймворк, а не декоративный !
это одно из основных отличий от императивного UIKit - несущее массу преимуществ и отличий недостаточно раскрытых в статье.
-UIKit - "Свобода действий над UI элементами" , я бы тогда добавил SwiftUI - абсолютная свобода и гибкость)
-кто то еще использует Interface Builder?
Хорошо, исправлю?
а что с ним так?
во-первых это не редактор, а инструмент для для создания макета UI, которыей потом может быть изменен программно, так что конечный результат вы не увидите...
согласен, канвас из SwiftUI - хрупкая вещь, но позволяет видеть действительно конечный результат.
Правда и компьютер нужен хороший...
а если еще научиться им пользоваться, то работать можно очень комфортно.
например, сейчас верстаю сабвью, и вижу результат как это будет выглядеть в родительском вью, все вместе, практически онлайн. Ну очень удобно и в разы быстрее.
struct SelectedTrackView_Previews: PreviewProvider {
static var previews: some View {
// SelectedTrackView()
MainScreenView(viewModel: MapViewModel())
.environmentObject(MapViewModel())
.previewDevice("iPhone 12 Pro")
}
}
UIKit - вы видите начальный эскиз
SwiftUI - ну несколько секунд вы видите конечный конечный результат, во многих случаях с "боевыми данными" даже ( кроме вещей не поддерживаемых симуляторами)
комп... да м1 с 16 ггб - более чем достаточно
на Юдеми есть замечательный базовый курс по SwiftUI
(если сможете оплатить, рекомендую)
называется "мастер класс" - я бы не назвал это уж мастер классом..
но было интересно))
в ходе курса - несколько несложных приложений, с нуля до конца
https://www.udemy.com/course/swiftui-masterclass-course-ios-development-with-swift/
Конечно выбор за вами)) но рискуете остаться в позавчерашнем дне...
в SwiftUI идеология другая - вью строится на стеках - горизонтальный, вертикальный и Z стек.
заботы о пикселях как правило нет) но установить конкретные размеры и отступы в пикселях - есть возможно.
кроме того есть возможность считать фактические размеры элемента в коде с помощью GeometryReader - который читает уже на экране размер элемента и сообщает прямо в код.
после года работы в SwiftUI, я уже по доброй воле в UIKit не вернусь.
но к SwiftU надо привыкнуть - идеология совсем другая.
итог - кода раза в полтора меньше, верстка значительно быстрее.
руководство иногда отдает старые проекты UIKit на доработку - это уже вызывает чувство содрагания)) - как это долго и нудно...
на картинке, контейнер текста по средине, + 8 пикселей отступ от края контейнера. ( все автоматом добавится в код)
но я так не делаю, быстрее вручную напечатать кодом.
про курсы Юдеми ( не со всех стран принимают оплату, увы...)
понравилось приложение Африка - красочно
ну и содержат лекции все базовые вещи
Как будто chat gpt-3 набросал по-быстрому статью
Что лучше: UIKit или SwiftUI?