How To Make iPhone Apps With No Programming Experience
Nov. 24 2016
This is my article series to teach people how to build iPhone and iPad applications who have no programming experience.
My focus is to explain things in simple, plain English and get people started making their own apps. Rather than trying to teach everything I learned about Computer Science in University or every last aspect of programming, I’ll distill it into what you need. My approach will be to slowly introduce concepts as you need them, rather than trying to equip you with everything up front only to overwhelm you!
It’s really not that far fetched as long as you have the desire to learn and the persistence to keep at it and get better!
Programming can be self-taught and yes, you can start your own career in software development even if you don’t have a formal background. It’s probably the single greatest thing I love about my field; that merit is based on your achievements and hard work rather than seniority or experience (as in the case of a surgeon for example).
Apple recently released a new programming language called Swift for developing iPhone apps. Previously, it was Objective-C that people had to learn in order to build apps. This raised a common question from beginners on which language they should learn.
The good news is that this resource covers both Swift and Objective-C languages!
However, if you’re starting from scratch with no programming experience, I’d highly recommend that you learn Swift because it’s easier to learn for beginners.
The biggest point of failure for beginners is giving up before they pass “the hump”.
The hump is what i like to call that point where it turns from frustrating to fun. It’s kinda like that point where you’re riding your bike without training wheels for the first time and you’re really wobbly, but not falling! Then it’s just fun from there.
With Objective-C, that hump is high because the code contains a lot more weird characters/symbols and it’s less forgiving. Beginners tend to give up before it “clicks” for them.
Swift is more natural to both read/write and so it’s a lower barrier to entry. My advice would be to start with Swift, pass “the hump” and then if Objective-C is something that you need, you’ll have the confidence to learn it and not give up.
With that said, here are the Swift tutorials for How To Make An App With No Programming Experience using Xcode 8 and iOS 10.
Farther below the page is the Objective-C crash course which uses Xcode 5.
Module 1: Basics
In this module, you’ll get an orientation of the development environment, a tiny taste of Swift code and participate in building your very first app!
1. Introduction to the tools and materials
An orientation of the tools and resources used for iOS development.
An orientation of the tools and resources used for iOS development.
2. Playgrounds and Swift
An unintimidating dabbling into Swift code!
An unintimidating dabbling into Swift code!
3. Xcode 8 tutorial and tour
Get acquainted with the development environment where you’ll bring your idea to life!
Get acquainted with the development environment where you’ll bring your idea to life!
4. The anatomy of an iPhone app
How’s an app put together? We break it down into the major components.
How’s an app put together? We break it down into the major components.
5. Your first Swift app
Create your first ceremonious “Hello World” app!
Create your first ceremonious “Hello World” app!
Module 2: The art of war
In Module 2, you’ll dive right into creating a simple version of the card game, War.
6. Auto Layout and Stack Views
In this lesson, you’ll see how easy it is to visually create your app interface.
Download the images used in this video here. Card images by Charles Esquiaqui licensed under Creative Commons.
In this lesson, you’ll see how easy it is to visually create your app interface.
Download the images used in this video here. Card images by Charles Esquiaqui licensed under Creative Commons.
7. Multiple Orientations – Size Classes
In this lesson, you’ll learn about stack views and how they can aid us in laying elements out
In this lesson, you’ll learn about stack views and how they can aid us in laying elements out
8. Completing the UI with Auto Layout and Size Classes
In this lesson, you’ll use what you learned about auto layout and stack views and finish adding additional elements to the user interface.
In this lesson, you’ll use what you learned about auto layout and stack views and finish adding additional elements to the user interface.
9. Basic building blocks of Swift programming
Learn about object oriented programming, classes, objects, methods and properties.
Learn about object oriented programming, classes, objects, methods and properties.
10. More Swift concepts and UIKit
In this lesson, we go through more Swift programming basics and learn about what UIKit is.
In this lesson, we go through more Swift programming basics and learn about what UIKit is.
11. Hooking it all up – Swift IBOutlet properties
Now we’re ready to learn how to expose the user interface elements so you can manipulate them with code.
Now we’re ready to learn how to expose the user interface elements so you can manipulate them with code.
12. Handling button taps – Methods
We’ll go through how to capture a tap on a button so that you can respond to it!
We’ll go through how to capture a tap on a button so that you can respond to it!
13. Adding and displaying images in your app
Learn how to add images to your Xcode 8 project and display them in your app. You’ll also learn about various images sizes that you need for retina and high resolution displays.
Download the images used in this video here. Card images by Charles Esquiaqui licensed under Creative Commons.
Learn how to add images to your Xcode 8 project and display them in your app. You’ll also learn about various images sizes that you need for retina and high resolution displays.
Download the images used in this video here. Card images by Charles Esquiaqui licensed under Creative Commons.
14. Getting a random number and randomizing the cards
War is a game of chance, so we’ll need to know how to generate random numbers. In this lesson, we also learn how to change the card images based on the randomly generated numbers.
War is a game of chance, so we’ll need to know how to generate random numbers. In this lesson, we also learn how to change the card images based on the randomly generated numbers.
15. Using Arrays to manage the card images
This lesson introduces Arrays. It shows you how to use this collection class to improve the way we display the card images.
For reference: Apple’s Swift Programming Language Guide
This lesson introduces Arrays. It shows you how to use this collection class to improve the way we display the card images.
For reference: Apple’s Swift Programming Language Guide
16. Determining a winner – IF statements
Implement the simple game logic in code to determine a winner.
Implement the simple game logic in code to determine a winner.
17. Styling and keeping score
By implementing the score keeping, we’ll learn the importance of understanding scope.
By implementing the score keeping, we’ll learn the importance of understanding scope.
In IPhone