Join Simon Allardice for an in-depth discussion in this video What you should know, part of iOS App Development Essential Training.
So what should you know before coming into this course? Well, know that this is an introduction to programming the iPhone and iPad, but it's not an introduction to program in general. So I do expect that you can already code. You're comfortable with the core skills of programming. Now, if programming is totally new to you, this isn't the best place to begin. Take a look at our foundations of programming, fundamentals course. And you should know some Objective-C. And the more you know, the better. If you've only dabbled in it or it's been a while, I'm going to have a short refresher/introduction to the language here, but it is just the basics, because we do have a full Objective-C Essential Training course in the lynda.com Library.
And I'm not going to just duplicate that course inside this one. Now if you have watched the Objective C course, you're at the perfect place to start. And then so, we can focus here on the iOS side of things. What's specific about iPhone and iPad development instead of how do you make an int in Objective C. Now, a couple of ground rules. When I say iOS development, I mean developing native apps that are installed and run directly on the iPhone or the iPad, or the iPod touch. It's the same process for all of them. We will spend most of our time in this course on generic iPhone development and talk later about the differences when developing for the largest screen size iPad.
But what should you expect with this course? Well I had three rules for myself when I was putting this course together. Number one, I was going to focus on the most important 20%. There are dozen's of documents. Thousands of pages on Apple's developer site alone. There's a lot of iOS information for you to try and cram into your brain, but only about 20% of that is immediately worthwhile, and we're going to focus here on that 20. It's iOS app development essential training here. The fundamentals. The things you will need in every iOS app you make. Number two, the rules not the exceptions.
This is programming. So there are always multiple ways to accomplish the same result. And the geekier you are, the more you can find. So, if it makes you happy, assume that yes, there may be other ways to do everything I'm going to show you. But also assume, I'm going to show you the simplest one. And number three. This is not an exam. I am not interested in you doing a memory test of long method names or obscure parameters. Focus on the concepts, the approach over all else because we're also going to get familiar with the help systems in the documentation so that when you do forget something, and you will, you can just find it when you need it.
So, if those were my three items for how I was putting together this course. What about you? Well, I do have three suggestions for you as well. One is to realize you are in another world now, or at least another developer world. You may have a ton of experience in Java or .Net, or PHP, or Ruby on Rails. But leave most of that at the door. Objective-C and iOS development is different. Often very different. And that's more than just a few syntax changes. Apple development has a long and substantial history and it has its own customs and ways of doing things.
And I will calmly suggest, no, you don't. We're going to move on in quite a few places, and we'll come back to things later. There will be some things that won't make sense for a while. And number three, experiment and have fun. if you don't already have an app in mind, come up with something think of a simple app. Even if it's reinventing the wheel to help you use the examples here, in a way that's specific to you and it'll help you make all the connections. So realize this will be different, embrace a little confusion just experiment and have fun with it. All right let's make sure we have everything we need to get started.
- Using Xcode and the iOS Simulator
- Learning Objective-C basics and structure
- Creating objects, variables, properties, and custom classes
- Connecting UI elements to code
- Using delegation
- Using the Xcode debugger
- Creating and customizing table views
- Exploring storyboards
- Introducing blocks
- Saving and loading data
- Understanding the differences in iPad development
- Creating iPad apps with popovers and split views
- Adding application icons and launch images