Swift Programming Tutorial - Full Course for Beginners

Поділитися
Вставка
  • Опубліковано 13 січ 2025

КОМЕНТАРІ • 200

  • @lowlydeveloper3693
    @lowlydeveloper3693 2 місяці тому +7

    Just completed! For my needs, this has been the best video Swift tutorial I was able to find anywhere. As Vandad says, the course is not for complete Beginners. It is also not for Advanced Swift learners. It seems most appropriate for Intermediate learners, and it has been perfect for me. Thank you, Sir!

  • @MountainDrew-h3u
    @MountainDrew-h3u Рік тому +54

    Outstanding. I’ve written C, C++, C# and Java. This is my first experience at these modern programming paradigms. Your lessons were straightforward and informative. I just finished the last lesson in this course and feel very comfortable with what you’ve covered. I look forward to more of your tutorials. Thank you.

  • @agedvagabond
    @agedvagabond Рік тому +23

    This is one of the most straight forward tutorials I have seen, I will be searching for the rust course from Vandad next!

  • @amaoagou1060
    @amaoagou1060 Рік тому +12

    For someone who might wonder why function does not has return keyword @1:13. In swift, it has implicit return when there is only line of code in function body.

  • @sabni8668
    @sabni8668 3 місяці тому +3

    This will be my second language after basic Java. So happy to see so many similarities and to understand them all. Looking forward to the end of this video for some of the entirely new things

  • @angelapeng3026
    @angelapeng3026 2 роки тому +16

    I would like to correct one point in the operators section. The operator && has higher precedence over ||. The values next to && get evaluated first from left to right. So the example was true && false -> false && true -> false || true -> true.

  • @oxysloth2353
    @oxysloth2353 2 роки тому +137

    >>Here we go again

  • @luxelivez
    @luxelivez Рік тому +21

    Really helpful and pretty easy to follow. Thanks for uploading tutorials in several different languages!❤

  • @asadanik5987
    @asadanik5987 21 день тому

    thank you senior fullstack sir for this video. I am a TypeScript developer and i learnt swift now.

  • @Nyokee
    @Nyokee Рік тому +6

    Everything is explained really well from the ground up, this is absolutely brilliant.

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

    How come you guys always publish videos that I am currently in great need of? it’s like you can read my mind 😂

  • @PYC1898
    @PYC1898 8 місяців тому +6

    It's not true that "elements with the same hash value cannot exist in the same Set".
    In fact, the Set will first perform a pre-check using the hash values. If two elements e1 and e2 have the same hash value, it will further check whether `e1 == e2`. If they are not equal, then e1 and e2 can certainly coexist in the same set.

  • @anon-a-moss8960
    @anon-a-moss8960 2 місяці тому

    Just finished the course! Super underrated!

  • @mykalimba
    @mykalimba Місяць тому

    51:30 I believe that the practice of checking equality in this "backwards" way goes way back to early compilers that were not sophisticated enough to issue a warning when a programmer accidentally typed an assignment operator ("=") instead of an equality operator ("==") in the "if" expression. If the programmer intended to write "if (someVariable == 100)..." but instead wrote "if (someVariable = 100)...", the latter code would compile without error, and it could take some time to find this bug. So programmers started writing the same equality check "backwards", like this: "If (100 == someVariable)...", because if they ever mis-typed it as "if (100 = someVariable)...", the compiler would detect this as an error.

  • @shardhayvatshyayan6741
    @shardhayvatshyayan6741 2 роки тому +11

    Vandad is a great tutor , you'll find a lot on his UA-cam channel which is regularly updated.

  • @Boghost1430
    @Boghost1430 2 роки тому +23

    Thanks for the video as always, could you make a swift UI full course to complete this one pls 👍

  • @boots7859
    @boots7859 3 місяці тому +4

    Appreciate the video. Only issue is right from the beginning the explanation on Vars/Constants seems exceedingly long and confusing for a beginner.
    Explain a variable, and then explain a constant. Mutability and Immutability as they refer to each. I know this is for beginners, however in trying to not confuse/overload someone new to programming it doesn't help to ramble on versus being concise.

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

    i think this is world's best UA-cam channel to Learn programming

  • @mohammedmadnei5131
    @mohammedmadnei5131 2 роки тому +3

    Thank you. You provide the best ways to learn programming. You are the best educational content. I hope you add Arabic translation to your courses.

  • @dpetruha
    @dpetruha Рік тому +2

    Спасибо!

  • @dimitri246
    @dimitri246 Рік тому

    Thanks!

  • @HypeKeyz
    @HypeKeyz Рік тому +1

    It has been a long time since I don't watch a good long very well explained tutorial

  • @mar1o0o0o
    @mar1o0o0o Рік тому +3

    Trying to learn Swift:
    Day 1: 14:38 (just wanted to get started)

  • @gabrielkime6597
    @gabrielkime6597 Рік тому +9

    This tutorial is okay, but I wanted to give some constructive feedback as someone coming from a javascript background. So far I've found some of the lack of context frustrating. It would be helpful for me personally to hear more about the "why" and not just the "how". For example, when is it appropriate to use an enum vs another named type, say a class? I also found the explanation of closures pretty confusing, you were using them like callbacks are used in Javascript. I've always thought of closures as specifically having to do with accessing variables/data inside the closed over the lexical scope of an outer function from within an inner function. Is the concept different in swift? Anyway, i'm going to keep going, but I think pairing the data with the functionality so to speak would really elevate your teaching further!

    • @kam2ube
      @kam2ube 8 місяців тому +1

      Totally agree @gabrialkime6597. No doubt it is a good course for anyone who is a experienced developer. I was enjoying it till it hit the explanation on Closures. Closure implementation might differ between languages but the concept is same.
      Closures use is to close on some local variables in the outer scope and holds it till the function is called later (whenever needed). The author here simply first create a 'Anonymous function' assigning to a variable. Till this point it is just a normal function as any other but assigned to a variable, then passing it to another function as argument makes the other function a 'High order function'. When it is called with in the high-order function, it is simply a callback NOT a 'Closure'. Genuine 'Closure' would be a function returned by an another function binding to some variable(state) of the parent function.
      Delivery of Closure part here is some what not correct. It would rather be explained by concepts like HighOrder function and use of anonymous function as a callback.

    • @samuraijosh1595
      @samuraijosh1595 7 місяців тому

      @@kam2ube so lambda functions in Haskell wont count as Closures? do partial functions count as Closures?

    • @drendelous
      @drendelous Місяць тому

      it is intense for a beginner like me but i am on enums now taking notes to dive deeper later with ai. i believe this is how any regular lessons go.. this one is a lesson rather than a tutorial. i dont know why they label anything educational a turorial today

  • @rusliabdulgani9920
    @rusliabdulgani9920 Рік тому +1

    27:40 makeUppercase() is not method of string, but uppercased() instead..

  • @dannyle465
    @dannyle465 2 роки тому +35

    great content, please put on subtitles for people to easily understand.

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

      I agree

    • @EmirJesus1
      @EmirJesus1 Рік тому +3

      UA-cam has this option it’s the CC on the bottom right of the screen

  • @mykalimba
    @mykalimba Місяць тому

    35:36 The negation operator is an exclamation point, not an apostrophe.

  • @mykalimba
    @mykalimba Місяць тому

    11:12 Is there a trick to get the errors to appear in the console like this? I see the red banner error in the editor, but my console is blank and not displaying the text as shown in the video here.

  • @RegiiPad
    @RegiiPad 2 роки тому +5

    Great intentions, too much dumbed-down, sometimes (what happened with boolean expressions for example). Kudos for the approach of playgrounds and the way the course is divided. I could not find the playgrounds published and I don't know that they are.

  • @leylist
    @leylist Рік тому

    so many great details i failed to see earlier are here in this video

  • @vanessayuri8242
    @vanessayuri8242 Рік тому +2

    Hello Vandad, I wasn't sure what you were doing around 2:23:35, how does creating a function that returns a boolean value fix that issue

    • @vanessayuri8242
      @vanessayuri8242 Рік тому

      Also, around 2:25:33, why are you adding a . before each value

    • @iamcasted
      @iamcasted Рік тому +2

      At 2:23 he changed how == operator behaves by default by creating a function named ==. You probably should never do that and he did that to show capabilities of swift imo

    • @iamcasted
      @iamcasted Рік тому

      And same applies to the switch case where he does "case .cat" etc...

  • @joan-mariacbrooks
    @joan-mariacbrooks Рік тому

    Just beginning this class at my local library so this should be very interesting.

  • @robotman011
    @robotman011 Рік тому

    This guy is a pretty good teacher!

  • @LouWilliams-o5v
    @LouWilliams-o5v Рік тому

    i love what you're trying to do. my brain is syrup.

  • @gabriele89
    @gabriele89 2 роки тому +8

    Why is without subtitles?? Please, can you enable them?

  • @nickpavlov4012
    @nickpavlov4012 Рік тому +1

    Very informative! Thank you
    Waiting for SwiftUI lol

  • @emehinolasamuel5489
    @emehinolasamuel5489 Рік тому

    Thank you very much for this course. So helpful and detailed

  • @neelmouni
    @neelmouni Рік тому

    Superb video on swift

  • @erichacop3005
    @erichacop3005 Місяць тому

    Amazing video! You mention at the end of the video that the next videos are about client and backend development with swift however I can't seem to find them. Would really appreciate it if you pointed them out:)

  • @steffg8351
    @steffg8351 Рік тому

    Outstandingly good tutorial

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

    After executing the code inside the switch case that matched, the program exits from the switch statement. Execution doesn’t continue to the next case, so you don’t need to explicitly break out of the switch at the end of each case’s code.

  • @chaudharyhemantrawat8873
    @chaudharyhemantrawat8873 Рік тому

    Thanks for this amazing course

  • @ThePhilja
    @ThePhilja 11 місяців тому +1

    Would be nice to know what version of Xcode is used in this video.

  • @mykalimba
    @mykalimba Місяць тому

    10:30 Seems like at this point your explanation of the difference between "let" and "var" is the exact definition of mutability. I don't understand why you said that it wasn't about mutability before you started your explanation. 🤷‍♂

  • @dipanshushrivastava9771
    @dipanshushrivastava9771 Рік тому

    Amazing video, very helpful

  • @JamesBond-ut5iv
    @JamesBond-ut5iv Рік тому +2

    As a complete know nothing beginner I just got wrecked. I imagine for someone that's already familiar with some of the terminology this would be solid.

    • @jamesvanderbilt201
      @jamesvanderbilt201 Рік тому +3

      i already knew the basics of javascript and python before this..and it’s still a lot for me. :)

    • @joan-mariacbrooks
      @joan-mariacbrooks Рік тому +2

      Taking this class now at my local library where I also studied HTML/CSS. You're not alone in being wrecked but I'm trying to complile notes on Swift functions similar to those languages i.e., image files. We have the CANVAS book as well as Apple's book from their App Store with a terminology glossary in each, which helps and we have to build a prototype app by Dec. 2. Ain't gonna happen here! Keep at it, JamesBond, you'll get it before I do.

  • @ninthsun
    @ninthsun Рік тому

    Thanks for awesome tutorial!

  • @darishsakeesing3907
    @darishsakeesing3907 3 місяці тому +1

    Enjoying the course but I have a feedback: Remove the automatic run. The error messages that keep popping up while you are typing is distracting. Especially in the "closure" chapter

  • @ranasaani
    @ranasaani Рік тому +1

    Thank you for this.

  • @francescos7361
    @francescos7361 Рік тому

    Thanks , this contribution is great.

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

    Thank you guys!!!

  • @b.h8733
    @b.h8733 2 місяці тому

    Very good tutorial, is there any Full Course for more Advanced programmer?

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

    Thanks for the vid!

  • @h1inc816
    @h1inc816 11 місяців тому +1

    @22:71 how are you able to get the array contents to appear on the right side of the screen? On mine, it says NSMutablearray and then Array of 2 strings. I have to click this to see the values within the array. Is there a settings change that will automatically display contents inside the array as opposed to the number of values within it? I am running the latest version of XCode

    • @PYC1898
      @PYC1898 8 місяців тому

      sadly it's just because the latest version - Apple removed this feature in Xcode 15.0

    • @lowlydeveloper3693
      @lowlydeveloper3693 2 місяці тому

      Same thing here. It is weird how Apple decides to remove useful and helpful features and replace them with less useful UI. At least I was hoping there is a Setting switch to fix this. But no.

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

    Learnt alot from your free channel, love this community for its contribution and perfect Technology contents. Also I wanted to know about AI Testing related course if you have any please suggest the same.

  • @MadhavSaiMallipeddi
    @MadhavSaiMallipeddi Рік тому

    At 27:16 you made a mistake I think it actually preserves immutability.

  • @johanasklund5378
    @johanasklund5378 4 місяці тому +1

    Hello! Quick question. Your right sidebar is showing the elements of your array, I mean it says [30, 20, 19, 40]. For me it says, "Array of 4 int elements". How do I change this so it actually show [30, 20, 19, 40]? Thanks in advance!

    • @sibadoba
      @sibadoba 4 місяці тому

      It does this for me too. I have tried searching everywhere to find out how to change it and have had no luck.

  • @lowlydeveloper3693
    @lowlydeveloper3693 2 місяці тому

    This is rather important... Which Xcode (Swift) version is being presented?

  • @zlatkoiliev8927
    @zlatkoiliev8927 2 роки тому +2

    Great tutorial, I have one question as a guy coming from TypeScript world, when I am dealing with data fetched from a backend, json for example, I usually create an interface for the shape of the data. But I see in swift world they use struct for this reason. Is it not more appropriate to use protocols?!?

  • @felix12brd
    @felix12brd 9 місяців тому

    Swift is completly new to me coming from C/C++ but is'nt var a auto and let a const auto? And if so, why did he used the const auto so much? Is it like swift conventions to use let as long as you can and, if you have to do so, switch to var later on?
    He kinda focused a little bit too much on the const then just using var and being good to go

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

    Thank you so much 👍👌💕

  • @girishbabu3714
    @girishbabu3714 9 місяців тому

    very nice tutorial about the concepts of swift....just for the reference in the future is there any github repo for all the examples you have showed in the video

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

    are we going to build an app after finishing this course?

  • @davidtmiller56
    @davidtmiller56 Рік тому

    Your results show in the right hand pane, as do mine, except when the result is an array. All I see is "Array of 4 Int elements" but you see [19,20,30,40]. Where is the setting to change this?

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

    Do I have to create workspace for my project? It's not enough to put the files just in the project's folder?

  • @toruwalt
    @toruwalt 2 роки тому +3

    5th to Comment!
    2023 I will be a prominent programmer! Amen!

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

      youre the seventh actually

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

      @@watchpanzer6387 Thanks 😂

    • @AshishSingh-753
      @AshishSingh-753 2 роки тому

      Solve tech problems professionaly you became prominent effortlessly

  • @r5regan
    @r5regan Рік тому

    wow, i have spent an hour and am stuck on creating a file. I followed the initial instructions but clicked on the blank playground and am unable to follow what you did to create your directory system. All i want to do is create the training directory in the desktop. When i go into that directory i can see it with nothing in it and anything related to create is greyed out. But, the open option is available. When i click open, no xcode file found error.

  • @krantinebhwani6125
    @krantinebhwani6125 Рік тому +3

    How is loops / iterators not in the list of sections???? Is this part not covered anywhere in the video?

  • @PickNick50
    @PickNick50 4 місяці тому

    5:09:20 start of try

  • @chadzappa4045
    @chadzappa4045 12 днів тому

    Why do all “beginner” courses seem to start by saying that you should already be using another coding language? Do software engineers not understand what it means to be a beginner?

  • @cubestrike
    @cubestrike Рік тому

    I currently learning about swift. Why mine not showing the data of and array, instead it only said something like "Array of 4 String elements"? Does anyone know how to setting Xcode?

  • @KazemKarenGhorbanian
    @KazemKarenGhorbanian 2 роки тому +3

    Thanks for high quality content, could you also put the playground files link?

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

    Any Salesforce video??

  • @RajKumar-wq6hv
    @RajKumar-wq6hv Рік тому +1

    Could you do for objective C

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

    Thank you!

  • @bananasplitd006a5
    @bananasplitd006a5 3 місяці тому

    Day 1: 8:34

  • @LongdeLao-nw6hk
    @LongdeLao-nw6hk 8 місяців тому +1

    I can't watch 1 minute without hearing: "alright?" or "okay?"

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

    Please create a video on sway programming language for fuel scaling solution

  • @miguelazo1977
    @miguelazo1977 Рік тому

    Following!

  • @3minutesbibletruth
    @3minutesbibletruth 2 роки тому

    Beau please we need long hours Vue js course please... There are a lot for React and Angular as well but Vue Js is missing

  • @kwiky5643
    @kwiky5643 Рік тому

    Great thanks

  • @WelfredAlmiron
    @WelfredAlmiron Рік тому

    cool video)

  • @tigana
    @tigana 2 роки тому +3

    Is FCC reading my mind? I just searched up which type of mobile development is best to learn first and decided on Swift😳

  • @siva_subramaniam
    @siva_subramaniam Рік тому

    bm - 01:05:08

  • @ccsiri
    @ccsiri Рік тому +1

    What is your font type in Xcode?

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

    Damn, Taika Waititi moving mad

  • @sabbirsheikhss
    @sabbirsheikhss 11 місяців тому

    What does "using" do in closure

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

    Goodjob

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

    Nice 👍

  • @reactnative4
    @reactnative4 8 місяців тому

    Is it functional based programming???

  • @javiercasalegarcia6355
    @javiercasalegarcia6355 Рік тому

    Is tiene possible to code with an Ipad? And how? I can not find Xcode for Ipad :(

    • @foxbosss
      @foxbosss Рік тому

      You don’t, get a Mac for that

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

    I see some similarity with Javascript!

  • @ShukkaDTheGreat
    @ShukkaDTheGreat Рік тому

    Can we use iPad?

  • @TK-wp3iw
    @TK-wp3iw 2 роки тому +1

    Do we need DSA in front end

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

      Not really. But learning it is pretty important if you wanna land a job in big companies. Honestly it's actually good as it'll enhance your abilities as a programming.

    • @AshishSingh-753
      @AshishSingh-753 2 роки тому

      Learn how to centre a div

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

    00:01:00

  • @hariharanjagan404
    @hariharanjagan404 11 місяців тому

    @ 5:13:20 called forced unwrap

  • @pb8655
    @pb8655 Рік тому +4

    let being a constant is hurting my js brain

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

    thanks a lot

  • @dmitriyobidin6049
    @dmitriyobidin6049 10 місяців тому

    The demand for swift developer will decrease significantly in the coming years. After KMP will have reached it's production ready state.

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

    00:02:76