where/how to learn swift coding complete Beginner with voice over, help would be appreciated

Forum
App Development and Programming

Hi, I really want to learn swift but as a compleate beginner I don't know where to start and I was hoping for some help and answers.
I don't know where I can learn fully, are there any Youtube Channels or tutorials anywhere, books, guidance tools, websites or apps which can teach me how to code in swift properly so I'm not just coding little stuff, I would like to be able to code a fully fledged Game, app or website or something by the end.
Thank you and oh by the way I'm using an M1 macbook pro 2020 version to learn it if I could get some advice on where and how to learn it in the best way.
Again thank you,
I'm new here and really appreciate a website like this.
thank you so much

Options

Comments

By Paul on Wednesday, May 31, 2023 - 23:58

It’s always helpful to have an idea of what you want to make before you learn how to do it, because it can help narrow down your options and direct your focus. That said, when it comes to Swift, my first stops are the Swift language documentation, Apple’s API documentation, and Apple’s WWDC videos.

For a bigger picture of programming, there are obscene numbers of books and websites out there. It’s hard to make a specific recommendation because what you’re asking about is a very broad topic.

All that said, you can probably learn a decent amount just by playing with Swift UI and learning how to model data and state (the resources mentioned above are a good starting point). In fact, all you really need for a basic game are those things I just mentioned, saving state is relatively simple once you have a suitable data model, and networking isn’t something you need to know to get started making fun games. It may also be a good idea to learn about design patterns and programming paradigms, since both essentially underpin what you’ll do as an app developer.

By Kushal Solanki on Thursday, June 1, 2023 - 04:38

Hi.
To learn to code you can download the swift playground app on the ipad or the mac.

By Paul on Thursday, June 1, 2023 - 05:16

Forgot about that. Then again, I had the impression the OP had already learned the language itself and was interested in learning to program at a higher level where you go beyond toy scripts/examples and start making apps.

By Kevin Shaw on Thursday, June 1, 2023 - 11:20

Go here:
https://www.hackingwithswift.com/100

I embarked on the 100 Days of Swift UI course. I made it to day 86 before that pesky thing called "work" got in the way. ;) I will finish.

The course is absolutely free, but you do need to post your progress on something like Twitter or Facebook so you've got a record of your completion.

Good luck!

By Nuno on Sunday, June 18, 2023 - 20:10

Yeah, I second 100 days of Swift UI. Paul Hutson is an awesome teacher.

By Khomus on Monday, September 29, 2025 - 04:13

I see this course is about iOS. But Swift can also be used on the Mac, apparently. Is there anything about what the differences are? Put another way, if I wanted to build Mac apps instead of iOS apps, or the same app for both, can I still use the course?

By João Santos on Monday, September 29, 2025 - 04:55

The overwhelming majority of frameworks made available by Apple exist on all the platforms you can develop for, meaning macOS, iOS, iPadOS, watchOS, tvOS, and visionOS, the exceptions are usually things very specific to each of the platforms, like AppKit for macOS, UIKit for iOS, iPadOS, tvOS, and visionOS, and WatchKit for watchOS, but the rest is pretty much available on all platforms usually with only minor limitations depending on the platform. SwiftUI falls into this last category where almost everything is shared across the whole ecosystem with minor exceptions, and Swift works the same regardless of platform.

The above means that yes, you can use an iOS course to learn to develop for macOS using SwiftUI for the most part, however the layout is different and I recommend getting a Magic Trackpad if you don't have one since enabling Trackpad Navigation in VoiceOver allows you to gage how the UI is laid out, which is essential until you start gaining experience and guessing how things will look becomes second nature to you. Also SwiftUI allows you to fall back to the older frameworks because most frameworks don't yet have SwiftUI views of their own, plus AppKit and UIKit views remain a lot more customizable than SwiftUI, so you'll find yourself falling back to those frameworks a lot on their respective platforms, and any course that implements a fallback adapter will not translate well between the two platforms.

By Khomus on Monday, September 29, 2025 - 16:38

I could just do it on the phone I guess. It's just that I'm probably way more interested in making Mac apps. But if it's pretty similar, I can just learn it on the phone, if that works better.

I've thought about getting a trackpad, but if i upgrade to a Macbook, it would be redundant. However, if I did, I'd be one step closerto my goal of owning every Apple device in existence! OK, not really, but I have a Mac Mini, a phone, Airpods, Earpods, an Apple Watch, and a Magic Keyboard. So I'm accumulating quite the collection.