Как стать автором
Обновить

Комментарии 1

Выскажу непопулярное мнение, но лично мне кажется – SwiftUI не приживется. Конечно, там где Apple его заставит использоваться, он будет использоваться. Но сила UIKit в его гибкости, которая достигается за счет его ООП-сущности. И тот факт, что до сих пор не появилось стандартных абстракций, которые упрощают как бы ненужные и лишние сущности в UIKit, служит доказательством, что не такие уж они лишние и ненужные.


Конечно, можно долго говорить про то, что простой интерфейс программировать просто. Но мы делаем буквально шаг в сторону – и все уже достигается костылями. Вот, например, привязать действие к кнопке – это просто action callback в конструкторе. А что если мы хотим не нажатие, а какое-то другое действие? В случае UIButton это будет сделано одной строкой:


 button.addTarget(self, action: Selector(("method")), for: .touchUpOutside)

Конечно, можно реализовать и через UIGestureRecognizer, но зачем, если можно проще?
В SwiftUI после краткого поиска понял, что общего мнения нет: кто-то пытается использовать DragGesture, кто-то вообще GeometryReader… В одну строку это помещается только после 10 строк “под капотом”...


И вот так мне видится SwiftUI. Чем дальше он будет развиваться, тем сложнее будет становиться. И кто гарантирует, что к моменту пригодности к Production он не станет сложнее UIKit?


Опять же, говоря про сториборды. Да, LivePreview из SwiftUI это прикольно. Но для меня лично система с constraints выглядит намного логичней. Когда я ее учил, разобрался в ней за день. А вот система интерфейса SwiftUI более напоминает некий HTML/CSS, который с усложнением будет наполняться привычными в том мире костылями. Опять же Storyboard для отображения не требует корректного приложения (и вообще раньше Interface Builder был отдельным приложением). Казалось бы, максимальный уровень абстракции, чего еще желать?


Конечно, я могу быть не прав, но не кажется ли странным, что фреймворк все еще не начал массово использоваться даже в простых программах? И это при том, насколько Apple приучила всех обновляться до новых версий iOS, при том, что код зачастую увешан @available?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий