Принципи чистого коду і SOLID | Ти б не пройшов співбесіду!

Поделиться
HTML-код
  • Опубликовано: 8 янв 2025

Комментарии • 72

  • @Олег-м8ф3н
    @Олег-м8ф3н 16 дней назад

    Дуже дуже дуже дуже дуже дуже дякуууууууууууую!!!!!!!!!!!!

  • @andriybashta
    @andriybashta Год назад +11

    Комент в підтримку україномовного автора та Swift-ком'юніті :)

  • @ShooMPozitiV
    @ShooMPozitiV Год назад +1

    Замість багатьох статей із теорією) дуже дякую за гарний контент

    • @bwswift
      @bwswift  Год назад

      Заходьте ще!

  • @amankazahbenbrodovich2914
    @amankazahbenbrodovich2914 Год назад

    дякую за контент, багато різних статей по соліду прочитав, але ваше відео виявилось найзрозумілішим)
    Також дуже корисно бачити приклад того, як мислить senior розробник і якою логікою користується шукаючи рішення проблеми

    • @bwswift
      @bwswift  Год назад +1

      Дякую! 💙💛

  • @АртемМакаров-п4ы
    @АртемМакаров-п4ы Год назад +2

    Очень классный, открытый пример того, как надо думать когда открываешь чужой код. Спасибо ждем новых видееооо!)
    PS Я работаю разработчиком не очень давно и сегодншний урок мне помог получить ценные знания того, с чего стоит начинать разбор кода, на что обращать внимание. Вячеслав вам спасибо, за то что так разжевываете материал. Я очень вам благодарен

  • @john_karpov
    @john_karpov Год назад +4

    Чудове відео. Нарешті про архітектури та філософію. Дякую!

  • @leilaleila7802
    @leilaleila7802 9 месяцев назад

    Дякую! Найкраще пояснення

  • @ВладСтрашинский-м2т

    Дякую за український контент🇺🇦

  • @СергейМолодец-н2й

    Лайк і коментар навіть перед початком перегляду❤ Дякую

  • @deluxe092
    @deluxe092 Год назад

    Велике ДЯКУЮ)

  • @MykolaDemchenko-xb2nt
    @MykolaDemchenko-xb2nt Год назад +1

    Чудове відео👍

  • @IgorOdaryuk
    @IgorOdaryuk Год назад

    Ну дуже круто! Дякую!

    • @bwswift
      @bwswift  Год назад +1

      Дякую вам!

  • @maksymprotsak3316
    @maksymprotsak3316 4 месяца назад

    Дякую за українську!

    • @bwswift
      @bwswift  4 месяца назад

      Заходьте ще :)

  • @morrterry
    @morrterry Год назад

    Дякую!

  • @АндрійБескостий
    @АндрійБескостий Год назад +2

    q1: я би зробив на структурі і в делегат повертав змінену структуру для збереження (на success оновлюємо UI, error - показуємо алерт)
    q2: трохи не зрозумів суть запитання, але підозрюю про мова йде про convenience init з параметрами (user model: User, delegate: EditUserDelegate?)
    q3: result =) і для помилок зробив би якийсь AlertService, який мав би метод showError(_ error: Error)

  • @vitaliy2540
    @vitaliy2540 Год назад

    дякую

    • @bwswift
      @bwswift  Год назад

      І вам дякую!

  • @andriizuiok5430
    @andriizuiok5430 Год назад +2

    Стосовно третього завдання: func updateUser(user: User, completion: (Result) -> ()), або func updateUser(user: User) async throws ...

  • @SerhiyZholonko
    @SerhiyZholonko Год назад

    дякую😍

  • @bwswift
    @bwswift  Год назад +2

    Підтримайте канал на патріоні!
    www.patreon.com/bwswift
    Співбесіда Петра Корінєва
    ruclips.net/video/ZIiwsgNpMo4/видео.html

  • @ТаняГарбарчук-м1ъ

    Чудове відео👍
    Знаходжуся на етапі навчання і Ваші відео дуже допомагають!
    Дуже цікава відповідь на Ваше перше питання з приводу того, чому працює передача даних на сервер, так як використовується інший Юзер, не можу поки зрозуміти
    Друге питання Ваше :
    Можливо if let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "EditViewController") as? EditViewController {
    present(vc, animated: true, completion: nil)
    }
    На скільки я розумію, якщо створювати просто let vc = EditVC() і потім презент, то просто кожного разу буде створюватися копія і якщо увійти у Debug View Hirerachy , то там кожного разу буде створюватися той самий екран

    • @АндрійБескостий
      @АндрійБескостий Год назад

      не факт що UI контролера лежите виключно в Storyboard, може в xib файлі знаходитись або взагалі генерація UI через код

  • @moshenskyi_n
    @moshenskyi_n Год назад

    Про GRASP i GoF не планується відео?)
    До речі, GRASP міг би гарно лягти в відео поруч з SOLID)

    • @bwswift
      @bwswift  Год назад +2

      Думав за це, може колись зроблю окреме відео

    • @Олег-м8ф3н
      @Олег-м8ф3н 16 дней назад

      @@bwswift бамп

  • @bulgakov1991
    @bulgakov1991 Год назад

    Спасибо за урок, как всегда шикарно. Такой вопрос, ко всему выше перечисленному к коду хочется расставить уровни доступа private и тд. Это относиться к второму закону про открытость закрытость или уровни доступа это только про инкапсуляцию?

    • @bwswift
      @bwswift  Год назад

      На прямую я не отношу это, но косвенно оно связано. Второй принцип в первую очередь про изменения самого кода а не изменение значений параметров в коде.

    • @bulgakov1991
      @bulgakov1991 Год назад

      @@bwswift понял, спасибо)

  • @StalkerSergeant
    @StalkerSergeant Год назад +2

    Никогда не думал, что за полтора года так хорошо выучу украинский язык, вот жизнь настала :(

  • @vandrj1290
    @vandrj1290 Год назад +1

    Якщо дуже хочеться, то можна мімікрувати абстрактний клас.

    • @bwswift
      @bwswift  Год назад

      Костиль девелопмент

  • @zaur4094
    @zaur4094 Год назад

    вот рассказал ты про SOLID и я вспомнил библиотеку в Android разработке для DI - Dagger2. Есть ли что либо подобное в iOS разработке? Ты использовал, рассказывал в каком-то из своих видео?

    • @bwswift
      @bwswift  Год назад +1

      Є SwiftInject - це мабуть найпопулярніша лібка. Але це стороннє рішення, не кожен наважиться його затягувати в проект

  • @vladloktionov5860
    @vladloktionov5860 Год назад

    У мене завтра перша співбесіда в житті. Стосовно коду. Я побачив, що ми помітили делегат як var, у нас можуть бути проблеми з пам'яттю, тому що в основному делегати помічаються як weak var. Іще я б зробив провірку на нейм через гуард лет

    • @john_karpov
      @john_karpov Год назад

      Бажаю успіху на співбесіді

    • @bwswift
      @bwswift  Год назад

      і не забудьте поправити форсанврапи

  • @Tka4000
    @Tka4000 Год назад +1

    💪🇺🇦

  • @ironmelon_nurbirion
    @ironmelon_nurbirion Год назад

    👍

  • @viktorpotoki4274
    @viktorpotoki4274 Год назад

    ну в нас User це клас а не структура(це до речі перше що мені не сподобалось), ну ми передаємо посилання тому і все змінюється.
    По другому уявлення немаю , а от по третьому вже відповіли що це result
    Але я для себе нарешті зрозумів що таке антипаттерн, і я розумію що юзаю сінглтон зовсім не вірно, і найгірше те що ніхто мені на це не вказав, буду виправлятись.
    Дякую.

  • @CK-pf9tp
    @CK-pf9tp Год назад +1

    Какие интересные темы, но почему не на русском?

  • @Stricken174
    @Stricken174 11 месяцев назад

    Слав, помню твои видео на русском. Да и на мове пойму, но вот нафига? Кому ты что хочешь доказать?

    • @bwswift
      @bwswift  10 месяцев назад

      Это соответствует цели этого канала

  • @shur_up931
    @shur_up931 Год назад +3

    жаль только на украинском((
    не понимаю

    • @bwswift
      @bwswift  Год назад +5

      Є субтитри

    • @Dante94IT
      @Dante94IT Год назад +3

      Ого, не знал что можно субтитры переводить на Ютубе! Спасибо большое за контент!@@bwswift

    • @YA_BEDA
      @YA_BEDA Год назад +1

      @@bwswift Я просто тоже плохо понимаю укранский сам из Танжикистана, я понимаю почему вы не говорите на русском, но этот язык нас объединял, да и с русским больше просмотров, но субтитры спасают спасибо за контент 👍🏻

  • @yurademchenko9924
    @yurademchenko9924 9 месяцев назад

    Підписався. Лайк.
    Про KISS. В мене колега намагався все писати через лямбди та регекспи. У тому коді чорт ногу зломить.
    І зауваження тикати у відео незнайомій людині у нашій культурі не дуже прийнято. В айті офісі так це припустимо.

    • @bwswift
      @bwswift  9 месяцев назад +1

      👍

  • @SergSphinx
    @SergSphinx Год назад

    👍