Storyboard vs Code - Why I use Storyboards

Поділитися
Вставка
  • Опубліковано 3 лис 2024

КОМЕНТАРІ • 95

  • @CodeWithChris
    @CodeWithChris  5 років тому +3

    QOTD ⚡Do you prefer storyboards or the programmatic approach? Let me know below!👇 Kick start your own app with my free 7 Day App Action Plan ➡️ bit.ly/7dplan

    • @maximobriggs8499
      @maximobriggs8499 3 роки тому

      A trick : watch series at flixzone. Been using it for watching loads of movies lately.

  • @seanallen
    @seanallen 5 років тому +33

    Well said, Chris. And thanks for mentioning my Skeletal Storyboard approach!

    • @CodeWithChris
      @CodeWithChris  5 років тому +3

      Thanks for taking the time to watch and comment, Sean! Much appreciated!

  • @LetsBuildThatApp
    @LetsBuildThatApp 5 років тому +40

    Yeah I think over the years the viewers on my channel are asking for even more and more advanced topics. I would also go crazy if I had to teach how to lay out buttons and tableviews again. Great to have a wide spectrum of available content nowadays.

    • @CodeWithChris
      @CodeWithChris  5 років тому +6

      Yeah! I always send people your way who want to learn the tougher stuff! :)

  • @johniiibibal8838
    @johniiibibal8838 5 років тому +1

    Holy crap, that last slide (with the recommendations) was hella enlightening.
    Thanks Chris!

  • @alimkuprianov3294
    @alimkuprianov3294 3 роки тому +1

    Finally, someone has answered this question wisely, my thanks)

  • @applepie7282
    @applepie7282 4 роки тому +2

    thanks Chris. programmatic ui is inevitable at the end of the day. If you're an absolute beginner, I think you should also consider swiftUI as well as the storyboard approach nowadays

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      Hello, yes i think so as well in the future maybe swiftUI may be more dominant for "cross-platform" support, i think storyboard still has a long lifespan though and will not end anytime soon
      - Francis

  • @mehdiabdi3773
    @mehdiabdi3773 5 років тому +1

    WoW That Was Different !!!
    Good Job Chris💙

  • @mrdavidrees
    @mrdavidrees 5 років тому +9

    Xibs are the greatest- it will fix all your slow storyboard problems. One screen xib for one viewcontroller.

  • @maxbudnik
    @maxbudnik 5 років тому +2

    In my opinion - use the storyboard for MVP or small project. If project is too large and you are work in team use xib and programming UI in code.

  • @imacg5658
    @imacg5658 4 роки тому +2

    When I built my 1st app, an app that calculates the amount of money you spend on 1/2 sheet cakes at either Walmart, Costco, or Target, Making a proper menu, about page and the UI itself was so easy in Interface Builder. I made it in 30 mins. I attempted doing it in SwiftUI code, but I always fell flat. I have decent experience with Python, but wow, IB is so much better for me.

    • @CodeWithChris
      @CodeWithChris  4 роки тому

      Thanks for sharing!!
      - Kat

    • @imacg5658
      @imacg5658 4 роки тому

      CodeWithChris You’re welcome! I just wanted to share what method worked best for me!

  • @MrIMacro
    @MrIMacro 3 роки тому

    Thank you so much Chris, but in your latest videos you are encouraging people to use swiftUI !!
    so did you change your mind? thank you so much.

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      Yup, we are now producing more SwiftUI videos. But UIKit is important too!

  • @Luism-tz2ey
    @Luism-tz2ey 4 роки тому +1

    chris thanks for sharing your knowledge!!

  • @MuhammadAli-zv5vz
    @MuhammadAli-zv5vz 5 років тому +9

    i am very lazy person i like storyboards.😛

  • @gjermundification
    @gjermundification 5 років тому +1

    4:20 XCode 3 or 10 regardless; here is my 2 cents: everyone should write UI programmatically to learn; then use Storyboard to improve communication in teams. Note some parts have to be done programmatically no matter what. Skeletal Storyboards FTW^^

  • @gjermundification
    @gjermundification 5 років тому +4

    3:52 And for the designers and some U/X people Storyboards are way better.

  • @followerOfJesus723
    @followerOfJesus723 5 років тому +1

    I agree with this video 100% 👍🏾 👍🏾 👍🏾 👍🏾 👍🏾 👍🏾 👍🏾 👍🏾

  • @EduardoMoll7
    @EduardoMoll7 5 років тому +1

    I think is depends on what you trying to do. I love storyboards but I also like doing it programmatically. Sometimes we want to do dependency injection in an initializer and init from nibs won't let you do that and like you said storyboards should be broken down or else they would be a mess to work in a team environment.

    • @CodeWithChris
      @CodeWithChris  5 років тому +1

      A man talking from experience! Thanks for your input!
      @AdrienVillez

  • @WiggglezMr
    @WiggglezMr 4 роки тому +2

    SwiftUI, this needs a revisit. there is "Button" now for code and view stacks.

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      Thanks for pointing that out, Tyler!

  • @woolfel
    @woolfel 3 роки тому

    The big reason I use storyboard is the business users. I can show business users the code, but they won't understand. Something visual like a storyboard helps non-technical users understand how things flow in the app. Some people will argue, just run the simulator to show the flow. For small apps, that's fine, but if you have more than a dozen screens having a storyboard is much easier to see.
    It's the reason movie directors storyboard to work through the flow. UX designers prefer storyboard and it's for a good reason.

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      Great insights! Thanks for sharing these1 :) -Arthur

  • @tenzinmahabir4669
    @tenzinmahabir4669 4 роки тому +1

    Hi Chris, I have 3+ years programming experience with Java, C and Python but I am new to Swift and I am wanting to build my first iOS app. In my case, do you suggest I build my app using programmatic UI? If so, does that mean I use swiftUI or is there another way to build an app in Xcode programmatically...because I understand that since SwiftUI is fairly new, it does not have a lot of resources at this time. Thus, I am not sure if SwiftUI is the way to go or not.

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      Hello, although swiftUI is new it will probably have more resources as time goes by especially because there is a lot of interest for it, it is also possible to do programatic UI in normal Swift storyboard but if you are using storyboard then its best to utilize the storyboard
      - Francis

    • @tenzinmahabir4669
      @tenzinmahabir4669 4 роки тому

      CodeWithChris Thanks for replying, I have some other questions if you don’t mind answering :) 1) Aside from using SwiftUI, what are other ways of making programmatic UI? 2) Is SwiftUI the superior way to design a UI in general and programmatically?

  • @gezginfil
    @gezginfil 2 роки тому +1

    so if we decide to go with storyboard option we can not change it back ? or have both options anytime we want ?

    • @gezginfil
      @gezginfil 2 роки тому

      as a noob i am trying to understand but it feels like so if i choose storyboard will it all be just plug & play without serious coding experience? plus if we choose story board isnt it going to show the programitacly version on the side at the end or something ?

    • @CodeWithChris
      @CodeWithChris  2 роки тому

      You can go back and forth, it's easier to go from a Storyboard to a coded UI app tho. When you go to File >> New, you can to create ay kind of files you want, even a new storyboard. You just need to link everything accordingly. For example, if you delete or decide to not use a storyboard anymore, you have to disconnect all your IBOutlet and create + connect them via code instead.
      As a beginner, I would suggest to stick to one method first, learn how everything works, then start to juggle around.
      Also, SwiftUI is the new kid on the block, check out our newest playlist.
      @AdrienVillez

  • @ljukicar
    @ljukicar 5 років тому +1

    Bravo Chris👍👍👍

  • @rgenericson5361
    @rgenericson5361 4 роки тому +1

    Very cool!

  • @夏みぞれ
    @夏みぞれ 3 роки тому

    Hi, Chris. Thanks for this video! I'm a college student with programming skills and I'm interested in macOS coded UI development. Could you please give me some advice about where to start? Or some recommended tutorials?

    • @夏みぞれ
      @夏みぞれ 3 роки тому

      I don't really like Storyboard. And it seems that on macOS, SwiftUI is still weak to achieve full functions.

    • @CodeWithChris
      @CodeWithChris  3 роки тому +1

      "Hello, sadly we don't cover MacOS programming.. I think SwiftUI would be the better choice though because it would also make your app available on all platforms (phone, tablet, macOS), we recently just updated our course to full SwiftUI so maybe give a look at what we have to offer and see if you are interested.. head over to learn.codewithchris.com to know more about our paid membership and the courses
      - Francis"

  • @developer-juice-Khailenno
    @developer-juice-Khailenno 3 роки тому

    Alright I like this argument. however using xibs and multiple story boards, can this be an option for an advanced dev teams? im talking about intermediate and senior devs.

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      "Hello, storyboard should be fine even if its a big team as long as only a few people manage the storyboard, but for that case i think it would be better to just build the UI programmatically to have better control and ownership, might i also suggest going SwiftUI to make it more up to date and easier
      - Francis"

  • @Wutodouble
    @Wutodouble 3 роки тому

    How come in CWC 14 day challenge we use swift UI instead of storyboards?

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      "Hello, moving forward we will only be making tutorials only in SwiftUI now because it will be more and more relevant as time goes on
      - Francis"

  • @frinkyutbe9725
    @frinkyutbe9725 4 роки тому

    I'm a beginner comes from Android development, the Apple guides and many videos tell me to use the storyboard. But, as you said, the storyboard is not good at version control, I think the comparision of xml is harder to read than Android's, I will try to use the programmatic UI for the better control.

    • @CodeWithChris
      @CodeWithChris  4 роки тому

      Hello, yes changes in UI will be hard to track on storyboard but you can always specify it in the comments of the version control push
      - Francis

    • @frinkyutbe9725
      @frinkyutbe9725 4 роки тому

      @@CodeWithChris Thanks for your reply. Yes, we should always leave a clear comment for each commits. But someone may not keep the well commits, and we can't stop them because of some reasons, so I often have to compare the code without a good comment.

  • @zenoromio538
    @zenoromio538 3 роки тому

    Here in 2021. Do you think that storyboard is still a valid option or do you think that SwiftUI is better?

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      Yup, storyboard is still a valid option because it's been used by industries for a long time. SwiftUI is more of a newcomer. :-) -Arthur

  • @DoubleCheapBurger
    @DoubleCheapBurger 3 роки тому

    5:38 Oh my god! That was literally me first year at college with C programming LOL. Brought some flashbacks.

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      Haha! But look at where you are now! :-) -Arthur

  • @Foxygrandpa2131
    @Foxygrandpa2131 4 роки тому +1

    Seems like storyboards are the best option for quick and dirty prototyping, especially when launching your first MVP

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      Hello, yes it usually gives you are clear and easier overview on what you want to achieve, you can also make a wireframe in figma or some other app as well
      - Francis

  • @scottcartwright9008
    @scottcartwright9008 5 років тому +1

    Great video

  • @SuperMIKEBIKE1
    @SuperMIKEBIKE1 2 роки тому

    Chris is it possible to create a UIPicker View not using storyboard?

    • @CodeWithChris
      @CodeWithChris  2 роки тому

      Hi Miguel! Yes it is possible. You may check out this blog post for more info www.hackingwithswift.com/example-code/uikit/how-to-use-uipickerview.
      You can also post on our CodeCrew forum (codecrew.codewithchris.com) if you have more questions so our tech support staff can assist you further. :) - Pat

  • @diegoromero1927
    @diegoromero1927 2 роки тому

    Hey Chris, quick question if I were to build one part with story board and another part programmatically can I connect the two in story board or not?

    • @CodeWithChris
      @CodeWithChris  2 роки тому

      Hello, kindly post your question in our CodeCrew forum so that our technical support staff there can assist you. Go here: codecrew.codewithchris.com. Thanks for learning with us! -Arthur

  • @natgenesis5038
    @natgenesis5038 2 роки тому

    Swift ui and UI programmatically my preference

  • @sergeyyavorsky3903
    @sergeyyavorsky3903 3 роки тому +1

    Could you please give me a name or a link to your keyboard from the video.

  • @aloisohzh
    @aloisohzh 4 роки тому +1

    Are there any free software or apps similar to xcode so I can do the storyboard on windows?

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      You can use Android Studio on Windows so you can create Android apps. If you want to create iOS apps, you really have to use Xcode. Luckily, there are some ways you can get Xcode on Windows bit.ly/CWCWindows
      - Kat

  • @TM-jb8bw
    @TM-jb8bw 4 роки тому +1

    So a new iOS deveper (frontend developer atm) i have to learn building apps using storyboards, UIKit with code and Swift UI. Thats crazy just to build a user interface. Right @CodeWithChris ?

    • @CodeWithChris
      @CodeWithChris  4 роки тому +2

      Should be no problem as Swift is just an extension of UIKit just written a bit differently :)
      - Francis

  • @MrGZM90
    @MrGZM90 4 роки тому

    but how about combine uikit and swiftui together?!

    • @CodeWithChris
      @CodeWithChris  4 роки тому

      Hello, UIKit can still be used by UIKit, the built-in functions will be the same, the main difference is how the data/UI is being built/presented but overall it still uses UIKit for the "logic" behind everything
      - Francis

  • @natgenesis5038
    @natgenesis5038 3 роки тому

    I think we need both UI and Storyboard

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      True! Learning both won't hurt! :) -Arthur

  • @TonyDaExpert
    @TonyDaExpert 4 роки тому +3

    Then swift UI came in

    • @CodeWithChris
      @CodeWithChris  4 роки тому +1

      Still recommend learning storyboards first. 😉
      - Kat

  • @rupeshkadam9703
    @rupeshkadam9703 5 років тому +1

    xcode 11 is total messed up when opened.
    plz help

    • @CodeWithChris
      @CodeWithChris  5 років тому

      Hello, what problem are you having? We created a forum for people needing help. Could you share this to our CodeCrew Community codecrew.codewithchris.com/ with details and screenshots if possible? Thanks!
      -Kat

  • @pratikgupta7373
    @pratikgupta7373 5 років тому +1

    0:12 it's Bob Lee
    I have taken his udemy course

    • @CodeWithChris
      @CodeWithChris  5 років тому +1

      How was your experience with his course?
      @AdrienVillez

    • @rgenericson5361
      @rgenericson5361 4 роки тому

      @@CodeWithChris Ya that's Bob Lee from back in the day! He ditched iOS during the Bitcoin boon a few years back. Haven't seen nor heard from him since. I bought his advanced Swift course. At the time it seemed that he was really on top of things, however after two years noodling with Swift and watching the vids on Udemy, he wasn't as polished as he could have been. A lot of spelling mistakes etc. Granted English wasn't his first language. The great part was that he focused solely on Swift not iOS. He could have really made a successful run had he stayed the course and expanded on his Swift courses. They were lacking exercises unfortunately. There is still tons of opportunity to create really good Swift only training content but 99% of instructors still only scratch the surface.

  • @DNAatWork14
    @DNAatWork14 5 років тому +1

    When I hit the breaking point I give in, learn the hard way...

  • @averoes4029
    @averoes4029 5 місяців тому

    But @ the end...you "Dont" use Story board and Interface Builder

    • @CodeWithChris
      @CodeWithChris  5 місяців тому

      This depends on your team, your practices, and your project.
      I have worked on projects where the standard is to use IB. Developers were assigned to work on different features to avoid or minimize the risk of having conflicts. The benefits of using IB is that views are easy to visualize and constraints are easier to manage especially when the app needs to support both iPhone and iPad (using vary for traits). The downside is obviously the nasty XML conflicts that is difficult to resolve when someone touches the same IB file as you have.
      I've also experienced working on a project with a team of iOS developers assigned to specific features. In this scenario, IB isn't practical because different developers working on the same feature may introduce conflicts. Programmatic UIKit is the preferred approach here. The only downside I observed is that it's challenging to visualize the views you create or update in this approach. For a very large project involving different teams, view file creation can go out of hand. Since its difficult to visualize a view from code alone, different teams (who seldomly communicate with one another) might develop different view files serving a single purpose (based from my experience). Additionally, assigning varying for traits auto-layout constraints can be hectic and verbose. However, this approach works well for teams aiming to avoid conflicts. - Iñaki

    • @averoes4029
      @averoes4029 5 місяців тому

      @@CodeWithChris Thanks you for ur feedback

  • @the0dd1out_on_yt
    @the0dd1out_on_yt 3 роки тому +1

    You saved my ass bruh

    • @CodeWithChris
      @CodeWithChris  3 роки тому

      Glad to know. Thank you for appreciating our work! -Arthur

  • @ianosgnatiuc
    @ianosgnatiuc 4 роки тому +1

    All your points are "it's faster and easier for beginners". These aren't important. The points you put againsts the storyboards are real in any projects where there are more than one person who works on a project.

  • @guitaripod
    @guitaripod 4 роки тому

    Imo those two points for IB aren't really that strong. So TLDR for this video is kind of "Programmatic is better, but I do IB for views" 😂

    • @CodeWithChris
      @CodeWithChris  4 роки тому

      Hello, ofcourse everything needs to be programmed (coded) but for the position/location, size, constraints of the UI element it can be easily edited and previewed using the storyboard, then you just use IBOutlet or IBAction to "connect" to it
      - Francis

  • @Bazlightyear007
    @Bazlightyear007 3 роки тому

    It’s slow? Time to get the new Mac with the m1 chip 😁