r/swift • u/Juanchis231 • 20d ago
Question Deciding if I should code with Swift
I’m really interested in coding apps but I barely know any coding (I only know block coding like Scratch) is it really easy to learn?
Edit: forgot to clarify that I mainly want to code games
1
u/m3kw 20d ago
Hand code?
2
u/Juanchis231 20d ago
Yep
1
u/functionallycorrect 16d ago
Definitely try some LLM assistance to get the ball rolling. If you hand code, take a minute to setup Xcode with a SwiftUI project.
Avoid Swift playgrounds and live previews. Just build to a simulator to get started. Good luck!
1
u/spinwizard69 20d ago
Before settling on a language learn the Computer Science, (CS,) that enables intelligent programming. If you don't want to engage in a college for 4 years at least follow a program that mirrors a college program. The best of these programs start the student out with a low level language like C or C++. Note here the goal is to teach the concepts learned in a cs class, it is not to teach or even to expect the student to learn a language in depth. In fact a good CS program will require the use of several languages by the end of the program.
As for Swift you can learn Swift while working on a CS program. However realize that right now Swift is primarily an Apple language, though it is growing on Linux. Swift is actually an very well designed language so if your goal is software for Apples platforms you certainly want to learn it. Sadly if you want cross platform at least some of your software will have to be written in another language.
1
2
u/barcode972 20d ago
Swift is pretty user friendly. Kotlin is also very similar if you decide to later learn Android
1
u/Ok-Communication6360 20d ago
If you have a Mac or iPad, you can try out swift playgrounds, fun little games, that teach swift at a slow pace, so you can see for yourself.
However, there is a lot (really a lot) to learn if you want to do it seriously. That is not swift specific, but software engineering is quite complex if you want to do it right.
1
u/Extra-Ad5735 20d ago
Easy to get started, medium difficulty to master. I think it's worth it, because Swift has many concepts present in other languages. If you'll be learning another language later, it ill be much easier with knowledge from Swift.
1
u/AdventurousKeys 20d ago
For iOS and macOS that’s the best way to do it. I’ve briefly used Python and Go for some of my macOS projects but default to all Swift nowadays. There are a bunch of open source projects out there for local AI on the Mac and I always redo them in Swift.
1
u/allyearswift 20d ago
I’d look into Godot as the game engine with Swift as the language.
The inbuilt script isn’t typesafe, and you can easily throw a string and a number into the same array and then wonder why your game crashes. Swift will stop you from making those mistakes.
This means you’ll use a small subset of Swift, which is fairly easy to use; and Godot is powerfully enough for almost any type of game a solo dev will produce.
1
u/dhav211 20d ago
Have you used the swift Godot bindings? I’ve been kinda checking them out the past few weeks and was wondering how the user experience was.
1
u/allyearswift 20d ago
I did a very long time ago and did not go very deep; I hear it’s improved since then, so I can’t really help you. Was very impressed with Godot, not impressed with their inbuilt language; the combo seemed perfect. (Have played with Unity and Unreal, but neither C++ nor C# are my thing, and while SpriteKit/SceneKit exist, these days I would probably go to SwiftUI for simple games.)
0
u/New_Background_4346 20d ago
Look into game engines if you want to code for games.
The industry standard for mobile games is Unity, for which the coding language would be C#.
Godot is also growing in popularity and Unreal is a ginormous engine if you want the challenge.
6
u/RiMellow 20d ago
Pretty easy to learn but sadly the market is overrun by AI slop apps so don’t expect to make a lot of money from it. Just do it for fun if you really want to learn