Build iOS apps in 10 days | Understanding Apple Developer Ecosystem
Hello, in this 10 article series, my goal is to help you familiarise yourself with building applications for iOS using the latest tools offered by apple.
In this series of articles, you’re going to learn about
- How apps are made and end up on AppStore
- How to use XCode IDE
- How to build User Interfaces using SwiftUI
- You’ll learn Swift Programming Basics
By the end of this series, you should be able to develop a fully functional mobile app, that you can install on your device and show it to your friends and family what you’ve done.
More importantly, I hope after reading this series of articles you’ll be confident moving on to more advanced concepts of iOS development.
Familiarising yourself with Apple Developer Ecosystem
Let’s familiarise ourselves with the tools used to build apps for iOS.
Note: You’ll need an apple powered computer to build apps for apple, I recommend a MacBook but, you can also use an iPad.
1 - XCode
It all starts with XCode IDE (Integrated Development Environment). IDE is an application with all the tools a developer uses to build something are integrated into it.
This is where we build our app by writing swift code. Building the user-interface and connecting that UI to our data.
Swift is the programming language used to build apps for apple. The language itself was developed by apple.
We can use swift code to build user-interface too which I’ll explain in the upcoming articles.
It is a UI framework to easily make user-interfaces which makes the process of building UI for our app and easily connect them to the functional code of our app.
The really good thing about learning swift is that you can use the same frameworks and tools to build apps for different platforms like iOS, macOS, iPadOS, watchOS and tvOS.
3 — AppStore Connect
Appstore connect is a portal provided by apple to publish your apps to appstore and manage them.
You can get access to appstore connect and few other tools offered by apple with an annual fee of 100$. Learn more about apple developer program here.
Here in this portal, you’ll provide all the metadata of your application like the name, description, and screenshots of the app. You can upload the built bundle directly to the portal from Xcode.
Once you finish listing your app, you can directly submit your app for review from the portal. Once approved, your app will be live on appstore.
4. Test Flight
Once you enrolled in the apple developer program, you’ll get access to some other tools including the appstore connect portal.
TestFlight helps you test your beta application by allowing you to add testers for your app. This helps you to beta test your app before you launch your app for everyone.
They’ll be able to send you feedback and bug reports so you can fix them before you release the final version of your app.
5. Provisioning Portal
The provisioning portal gives you access to the tools that help you sign your code so that apple can identify the original developer of an application.
This is so important for the safety of the end users as they can be sure that it is the original app and stops malicious coders from pretending to be you.
Clarification : Joining the apple developer program is completely optional. If your goal isn’t to distribute your app to everyone in the world. You can still develop apps and use them for yourself
So, this is the basic outline for the apple developer ecosystem and from the next article, we’ll get deeper into the process of developing apps for iOS.
I’ll index all the articles here in order :
- Understanding Apple Developer Ecosystem
- Introduction to Xcode
I didn’t want to put this under a paywall as I wouldn't be able to afford a medium subscription as a beginner. You can read it for free. As writing this takes time and effort.
If you think this article helped you, feel free to drop a clap and you can also get access to in-depth concepts in the apple developer program feel free to become a Patreon.
Sorry if you find any grammar mistakes in this article, feel free to suggest me edits in the comments. I’ll keep improving.