So, to be perfectly honest, I was not expecting anything groundbreaking at this years WWDC. I thought there would be iOS 8, which would have a few new features, but not TOO much. I mean, after iOS 7, there should definitely be some cool-down time before anymore big changes to the OS. I also thought they would probably talk about OSX 10.10, and there would be a few new features too. Not that I was expecting Apple to be lazy this year, but you can’t make something groundbreaking and amazing every single year.
Top Objective-C Learning Resources
When I decided to start learning Objective-C, I started looking for a lot resources to assimilate, to learn as much as I could. I have been a big fan of podcasts for the last couple years, so I searched for podcasts about iOS and Objective-C programming. Early on, I found this post on the Accidental Technologist that listed several good podcasts in this field. I will cover them here myself as well, but I thought I should call out where I found these in the first place.
Firstly, of course, are the Apple WWDC videos and sample code provided there if you are a registered developer at the iOS Dev Center.
Video
Stanford’s Developing for iOS Classes on iTunes U – These are absolutely amazing. Out of all of the resources I have gone through, these have been the most helpful in getting me going. Profesor Paul Hegarty covers many different aspects of Objective-C and iOS, from the basics to Core Data, and does so in a very casual and easy to understand way.
When gathering links for this blog post, I found that this iOS 7 version of the class is currently in progress, so I have linked it here. I will be going back through these to see what new tidbits I can find that are iOS 7 specific.
[Read more…]
Objective-C Classes and Usage of Variables
So, for a little behind the scenes action. The previous post about Header Files was originally going to be about classes. But then after I started writing, I realized if I continued on to talking about classes, the post was going to be longer than I would want to read, so I decided to just split off the header file topic entirely, and save more discussion of classes for later. That’s why I wrote about such an esoteric topic as “Header Files”. I also like the word esoteric, so expect that to show up in this blog every so often.
Anyway, back to what I originally was going to write about, classes. Classes are probably the most important thing in object oriented programming. They are the very constructs that objects are created from. For a physical analogy, lets say that we want to make a “landVehicle” class, by which I mean somethign that could discuss land vehicles like cars, trucks, tanks, whatever.
Aspects of Land Vehicles
- They have variable speeds to drive at
- They have an external color
- They can drive different directions
So, if we had a game that needed land vehicles in it, we may want to write a class that describes them, so that the game can display them or use them somehow. The first two describe an specific attribute of the land vehicle, while the third one refers to something it can do. In a class, those first two could be stored as variables, and the third one could be used as a method, to cause the vehicle to drive a certain direction. We’ve covered methods before, so I am going to discuss some of the details about variables below.
Header Files, A History Lesson
Classes are a very important part of object oriented programming. A class is the blueprint for any object in an object-oriented programming language. It encapsulates variables and methods related to an object, and a program creates instances of objects to work with. We can discuss specifics about classes in a later post, but for now, I wanted to talk a little about header files. Classes in Objective-C are comprised of 2 files, the implementation file, and a header file. What is a header file you may ask? Keep reading and you will learn, and even if you do know, there might be some useful history you may not know.
[Read more…]
NSHelloWorld!
Welcome to the Coding Explorer Blog.
I am currently learning how to program apps for iOS. While I do have prior experience with C, I am pretty much learning Objective C from scratch. I bought my first Mac near the beginning of February 2013, so I have owned a Mac for about 5 months now. I have had the iPhone for about 3 years, so I’m not new to that. Nonetheless, I had not even looked at Objective C until the beginning of this year, so this is pretty much the ground floor.
The purpose of this blog, is for me to share what I’m learning as somebody fresh in this. That is also the reason for the name, basically I am exploring how to code for iOS, and I am taking those that want to come along with me. Am I bound to make mistakes and show a suboptimal way of doing things? More than likely, but everybody has to start somewhere. While I am scouring the web to learn how to program for iOS, I want to share what I find, so anticipate plenty of links to people who know how to do this better than I do.