Наглядное представление разницы SwiftUI и UIKit. А то говорят, что SwiftUI - это "надо по другому мыслить при разработке", а тут на практике становится понятен смысл этого выражения)
Спасибо за видео! Я решил податься в разработку и учить Свифт где-то 3 месяца назад. Опыта в программировании не было совсем. Полный 0. 30 лет. Когда узнал, что сейчас уже есть 2 фреймворка, учить начал сразу SwiftUI, упустив UIKit. Я решил, что для абсолютного новичка в 2022 году уже нет никакого смысла учить UIKit потому что смотреть нужно туда, где "будет мяч", а не там где он "сейчас". Я понимаю, что работу найти скорее всего будет очень не легко без знания старого фреймворка, но я уверен, что за SwiftUI будущее самого языка, и в Apple это знают. Что вы думаете по этому поводу ? Может я ошибаюсь и мне, как новичку, все равно придется осваивать UIKit? Или же продолжать максимально осваивать SwiftUI поскольку UIKit неизбежно будет уходить, как в свое время ушел Obj-C ? Спасибо!
Юрий, я полностью с вами согласен! За SwiftUI - будущее и причём не далёкое. Уже сейчас можно было бы писать всё на SwiftUI. Но требуется минимальная версия iOS 15. Да, знаю, с 13, но там нужные фичи ещё недоступны. Под версии iOS 15 и тем более 16 можно уже серьёзные приложения на SwiftUI делать. И вот поэтому коммерческие проекты до сих пор делаются на UIKit. Как раз из-за требования заказчиков (банков, ритейла и пр.) что минимальная iOS должна быть 12, иногда даже 10. И это требование отменяет SwiftUI. Долго это продолжаться не сможет. Сейчас 22й год и актуальна iOS 16. Отнимаем 2 версии и получаем 14. Есть рекомендация Apple (пруфа не будет) поддерживать софт в состоянии актуальная OS - 2. По этой формуле, уже в следующем году рекомендуется всю разработку вести под iOS 15+, а значит, настанет эпоха SwiftUI. Банки и другие заказчики тоже следят за версией iOS у пользователей. Уже сейчас на 12й сидят меньше 5% пользователей. Для них это ещё существенно, они упираются. А для других заказчиков уже не существенно и они выбирают скорость разработки и удобство поддержки. SwiftUI это Swift и RXSwift в связке, но от Apple и в красивой оболочке. И ещё, справедливости ради, ObjC ещё живой. Как ни странно, он так и остался в Xcode и можно на нём писать. Я сам удивлён! Но если один и тот же проект делать на ObjC и на SwiftUI параллельно, то на SwiftUI будет раза в 4 быстрее и главное - понятнее, красивее и проще. ObjC остался для тех, кто его знает и привык и не хочет ничего больше знать.
@@AvenCode большое спасибо за детальный ответ. В таком случае могу ли я предположить, что стоит продолжить учить именно SwiftUI и пытаться делать чумовые вещи в нем на перспективу, а учить UIKit только при необходимости после устройства на работу, скажем, где опытные разработчики помогут с «переходными» моментами ?
@@ngknm_14 разумеется, да. SwiftUI - очень лёгкий, если не самый лёгкий путь в программирование. Если мы говорим о разработке приложений / интерфейса, а не BackEnd dev. Освоив разработку на SwiftUI, затем можно переключиться на другой язык, основы будут знакомы. Просто будет такое чувство, что ... как же тут у вас на Java / UIKit / Kotlin такие простые вещи делаются так сложно! Хотя мне кажется, что и Kotlin должен двигаться в сторону KotlinUI. Бояться UIKit не нужно. Не такой уж он и сложный. Он просто становится громоздким в больших проектах, плохо масштабируется, сложно разобраться в чужом коде... Успехов в программировании! Главное - кодировать с удовольствием.
@@AvenCode спасибо! Я не ставлю перед собой задачу преуспеть во всем, да и не нужно это, наверное. Если я смогу стать профессионалом только в одном лишь Свифте и SwiftUI, для меня это уже будет огромным достижением. Я бы очень хотел стать сильным мастером хотя бы в одном направлении. Учеба идет не сказать что б легко, но другого я и не ожидал. Однако, хочу верить, что дорогу осилит идущий. Буду ждать других обучающих видео на вашем канале!
Это самый что ни на есть Xcode - бесплатный IDE от Apple. Платить за него приходится только местом на диске... Он пожирает огромное количество места - 20-30 Гб на диске. Поэтому минимум, куда его можно ставить, это 256 Гб диск.
Проблема учиться сразу свифт UI минуя UIKit в том что swiftUI почти никто не использует в старых проектах их нужно переписывать, чем никто не занимается
Да, согласен полностью. SwiftUI пока мало востребован и требует по сути iOS 14, а лучше 15+ Пока не все заказчики готовы поднимать минимальную версию. SwiftUI это завтрашний день разработки. Коммерческие продукты пока на нём рановато делать. Он хорош для начинающих, для тех, кто хочет получить удовольствие от кода. Это отличная замена UIKit + SwiftRX, который был попыткой улучшить разработку с помощью технологии "react", то есть когда все объекты реагируют на события. В SwiftUI пересмотрели эту концепцию и сделали так, как надо. Да, пока не доделали, не всё ещё работает и каждый год в июне слишком много обновлений языка.
@@AvenCode Ну я пока учусь, написал одно и то же приложение на swiftUI и UIkit, но тк надо быстро вкатиться чтоб выйти работать всё же пока продолжил под UIKit учиться прогать
@@alexf1515 Я параллельно учусь в универе, выучил UI кит более менее, работу не ищу тк у меня последний курс, кстати пишу на swiftUI аналог хэдхантера на диплом для своего универа, канешн swiftUI это самое приятное что я учил, он красивее и верстать кодом в нём одно удовольствие, UIKit кошмарный по сравнению с ним, но всё же в нынешнее время где вкатиться если и можно то только через алгоритмические собесы на интерна, везде требуют верстку кодом на ките)
@@Vanga007 Понял, спасибо за развернутый ответ. Я вот прохожу буткемп по WebDevelopment. Но последнее время заинтересовал Swift(SwiftUI), так как, он показался каким-то глотком воздуха и максимально современным подходом к ЯП... Подобные люди, ролики, комментарии это еще больше подтверждают) Понял, что если учить Swift, то на сегодня пока еще и наверное ближайшие годы, не только SwiftUI, но и UIKit должны быть в инструментах, поэтому надо осваивать и то и то...
Тут была другая задача - просто сравнить подходы на небольшом примере. Теперь на канале есть обучающие ролики, например: ua-cam.com/video/3aCMhwACqRM/v-deo.html
Какой он все-таки уродливый и запутанный; смесь джабыскрипта, css и все приправлено магическими блискучистями, которое все и превращает в урну с мусором; реально жму руку тем кто пишет на этом недоразумении
Да, так может показаться на первый взгляд. Тем, кто долго писал на классических языках, SwiftUI реально ломает мозг! Очень хорошо начинать пользоваться SwiftUI с самого начала, не зная Java и прочие ++. Это и есть некий барьер. Если сразу не принял, не сможешь пойти дальше и останешься на Java. Но если готов по-другому мыслить в программировании, то есть шанс освоить SwiftUI. Есть хорошая аналогия с поваром. Чтобы приготовить обед на Java / C++ / Swift UIKit надо взять мясо, нарубить из него фарш, посолить, добавить ингредиенты, поставить на плиту, установить температуру и следить, когда получится котлета. То же самое на SwiftUI делается с помощью повара. Надо просто сказать повару - пожарь котлету. Результат будет такой же. Почти. SwiftUI не даёт контролировать многие мелочи. Это и хорошо и плохо. Это мешает, например, применять особый дизайн. Он всегда стремится с общему дизайну iOS. Зато код пишется значительно быстрее, чем на UIKit и главное - есть возможность лёгкого копирования любого объекта / элемента из другого кода, ведь всё в коде! Никаких storyboards. В общем, да, пока SwiftUI не идеален и для многих вообще не понятен. При этом у него масса достоинств и большая уже армия фанатов.
Очень круто , что все быстро , без воды и на примерах . Можешь запускать курсы ...
Кайф
Кажется это лучшее мое первое видео о каком-то новом для меня языке программирования.
Теперь хочу в свифт🤩
У вас реально талант. После одного случайного видео захотелось прямо попробовать :)
Это реально так, я сейчас сижу в плей гранде учусь основам по swiftBooK. после видео захотелось тоже самое реализовать в жизнь. Добрый дяденька Автор)
@@ModernoX7 Да я даже Хак из PC сделал, чтобы была возможность познакомиться с MacOS, IOS поближе, да и Xcode скачать)
Вас очень приятно слушать, Вы интересно рассказываете☺️
Спасибо! Такие комменты вдохновляют! Тогда буду продолжать 🙂
Отлично объясняете, спасибо!
Очень понятно объясняете! Спасибо, за ваши старания. Подписка, лайк и колокольчик.
Спасибо! Благодаря таким приятным отзывам, сейчас готовлю очень полезную серию уроков... скоро будет выходить по одному :-)
Очень круто, сделайте swift уроки на youtobe. Спасибо.
Павел, спасибо! Раз это кому-то нужно, продолжу.
Очень доходчиво объясняете, у Вас будет продолжение? И есть ли курсы?
Спасибо! Курса пока нет, это "проба пера". Пока записываю новые уроки...
Спасибо, мастер, за видео
Наглядное представление разницы SwiftUI и UIKit. А то говорят, что SwiftUI - это "надо по другому мыслить при разработке", а тут на практике становится понятен смысл этого выражения)
Спасибо за видео! Я решил податься в разработку и учить Свифт где-то 3 месяца назад. Опыта в программировании не было совсем. Полный 0. 30 лет. Когда узнал, что сейчас уже есть 2 фреймворка, учить начал сразу SwiftUI, упустив UIKit. Я решил, что для абсолютного новичка в 2022 году уже нет никакого смысла учить UIKit потому что смотреть нужно туда, где "будет мяч", а не там где он "сейчас". Я понимаю, что работу найти скорее всего будет очень не легко без знания старого фреймворка, но я уверен, что за SwiftUI будущее самого языка, и в Apple это знают.
Что вы думаете по этому поводу ? Может я ошибаюсь и мне, как новичку, все равно придется осваивать UIKit? Или же продолжать максимально осваивать SwiftUI поскольку UIKit неизбежно будет уходить, как в свое время ушел Obj-C ?
Спасибо!
Юрий, я полностью с вами согласен! За SwiftUI - будущее и причём не далёкое. Уже сейчас можно было бы писать всё на SwiftUI. Но требуется минимальная версия iOS 15. Да, знаю, с 13, но там нужные фичи ещё недоступны. Под версии iOS 15 и тем более 16 можно уже серьёзные приложения на SwiftUI делать.
И вот поэтому коммерческие проекты до сих пор делаются на UIKit. Как раз из-за требования заказчиков (банков, ритейла и пр.) что минимальная iOS должна быть 12, иногда даже 10. И это требование отменяет SwiftUI.
Долго это продолжаться не сможет. Сейчас 22й год и актуальна iOS 16. Отнимаем 2 версии и получаем 14. Есть рекомендация Apple (пруфа не будет) поддерживать софт в состоянии актуальная OS - 2.
По этой формуле, уже в следующем году рекомендуется всю разработку вести под iOS 15+, а значит, настанет эпоха SwiftUI.
Банки и другие заказчики тоже следят за версией iOS у пользователей. Уже сейчас на 12й сидят меньше 5% пользователей. Для них это ещё существенно, они упираются. А для других заказчиков уже не существенно и они выбирают скорость разработки и удобство поддержки.
SwiftUI это Swift и RXSwift в связке, но от Apple и в красивой оболочке.
И ещё, справедливости ради, ObjC ещё живой. Как ни странно, он так и остался в Xcode и можно на нём писать. Я сам удивлён! Но если один и тот же проект делать на ObjC и на SwiftUI параллельно, то на SwiftUI будет раза в 4 быстрее и главное - понятнее, красивее и проще.
ObjC остался для тех, кто его знает и привык и не хочет ничего больше знать.
@@AvenCode большое спасибо за детальный ответ. В таком случае могу ли я предположить, что стоит продолжить учить именно SwiftUI и пытаться делать чумовые вещи в нем на перспективу, а учить UIKit только при необходимости после устройства на работу, скажем, где опытные разработчики помогут с «переходными» моментами ?
@@ngknm_14 разумеется, да. SwiftUI - очень лёгкий, если не самый лёгкий путь в программирование. Если мы говорим о разработке приложений / интерфейса, а не BackEnd dev.
Освоив разработку на SwiftUI, затем можно переключиться на другой язык, основы будут знакомы. Просто будет такое чувство, что ... как же тут у вас на Java / UIKit / Kotlin такие простые вещи делаются так сложно!
Хотя мне кажется, что и Kotlin должен двигаться в сторону KotlinUI.
Бояться UIKit не нужно. Не такой уж он и сложный. Он просто становится громоздким в больших проектах, плохо масштабируется, сложно разобраться в чужом коде...
Успехов в программировании! Главное - кодировать с удовольствием.
@@AvenCode спасибо! Я не ставлю перед собой задачу преуспеть во всем, да и не нужно это, наверное. Если я смогу стать профессионалом только в одном лишь Свифте и SwiftUI, для меня это уже будет огромным достижением. Я бы очень хотел стать сильным мастером хотя бы в одном направлении. Учеба идет не сказать что б легко, но другого я и не ожидал. Однако, хочу верить, что дорогу осилит идущий. Буду ждать других обучающих видео на вашем канале!
Удачи чел, пусть все получится
Так сложно смотреть на реактивщину после года обучения в UIKit. Очень любопытный фрейм 🔨
bratan eto chto za ide dlya swift mozhesh podskazat?
Это самый что ни на есть Xcode - бесплатный IDE от Apple. Платить за него приходится только местом на диске... Он пожирает огромное количество места - 20-30 Гб на диске. Поэтому минимум, куда его можно ставить, это 256 Гб диск.
Проблема учиться сразу свифт UI минуя UIKit в том что swiftUI почти никто не использует в старых проектах их нужно переписывать, чем никто не занимается
Да, согласен полностью. SwiftUI пока мало востребован и требует по сути iOS 14, а лучше 15+
Пока не все заказчики готовы поднимать минимальную версию.
SwiftUI это завтрашний день разработки. Коммерческие продукты пока на нём рановато делать. Он хорош для начинающих, для тех, кто хочет получить удовольствие от кода.
Это отличная замена UIKit + SwiftRX, который был попыткой улучшить разработку с помощью технологии "react", то есть когда все объекты реагируют на события.
В SwiftUI пересмотрели эту концепцию и сделали так, как надо. Да, пока не доделали, не всё ещё работает и каждый год в июне слишком много обновлений языка.
@@AvenCode Ну я пока учусь, написал одно и то же приложение на swiftUI и UIkit, но тк надо быстро вкатиться чтоб выйти работать всё же пока продолжил под UIKit учиться прогать
@@Vanga007 Сколько всего учитесь, уже работаете?
@@alexf1515 Я параллельно учусь в универе, выучил UI кит более менее, работу не ищу тк у меня последний курс, кстати пишу на swiftUI аналог хэдхантера на диплом для своего универа, канешн swiftUI это самое приятное что я учил, он красивее и верстать кодом в нём одно удовольствие, UIKit кошмарный по сравнению с ним, но всё же в нынешнее время где вкатиться если и можно то только через алгоритмические собесы на интерна, везде требуют верстку кодом на ките)
@@Vanga007 Понял, спасибо за развернутый ответ. Я вот прохожу буткемп по WebDevelopment. Но последнее время заинтересовал Swift(SwiftUI), так как, он показался каким-то глотком воздуха и максимально современным подходом к ЯП... Подобные люди, ролики, комментарии это еще больше подтверждают) Понял, что если учить Swift, то на сегодня пока еще и наверное ближайшие годы, не только SwiftUI, но и UIKit должны быть в инструментах, поэтому надо осваивать и то и то...
звук на фоне это MacBook пытался взлететь ?
да, это я записывал на MBP 2015, он часто "взлетал". Сейчас на M1 Pro вообще никогда не греется и ни разу не "взлетел"!
Как можно учить чему-то не показывая всего, сразу писать код…
Тут была другая задача - просто сравнить подходы на небольшом примере.
Теперь на канале есть обучающие ролики, например: ua-cam.com/video/3aCMhwACqRM/v-deo.html
Какой он все-таки уродливый и запутанный; смесь джабыскрипта, css и все приправлено магическими блискучистями, которое все и превращает в урну с мусором; реально жму руку тем кто пишет на этом недоразумении
Да, так может показаться на первый взгляд. Тем, кто долго писал на классических языках, SwiftUI реально ломает мозг! Очень хорошо начинать пользоваться SwiftUI с самого начала, не зная Java и прочие ++.
Это и есть некий барьер. Если сразу не принял, не сможешь пойти дальше и останешься на Java.
Но если готов по-другому мыслить в программировании, то есть шанс освоить SwiftUI.
Есть хорошая аналогия с поваром.
Чтобы приготовить обед на Java / C++ / Swift UIKit надо взять мясо, нарубить из него фарш, посолить, добавить ингредиенты, поставить на плиту, установить температуру и следить, когда получится котлета.
То же самое на SwiftUI делается с помощью повара. Надо просто сказать повару - пожарь котлету.
Результат будет такой же. Почти.
SwiftUI не даёт контролировать многие мелочи. Это и хорошо и плохо.
Это мешает, например, применять особый дизайн. Он всегда стремится с общему дизайну iOS.
Зато код пишется значительно быстрее, чем на UIKit и главное - есть возможность лёгкого копирования любого объекта / элемента из другого кода, ведь всё в коде! Никаких storyboards.
В общем, да, пока SwiftUI не идеален и для многих вообще не понятен.
При этом у него масса достоинств и большая уже армия фанатов.
Что бы кнопочку нарисовать нужно 12 минут потратить?
нет