Category: Objective-C

Day 47: The Case For The Visual Learner

In regards to getting a grasp on programming fundamentals, Objective-C has been a lot easier to learn then PHP. Not necessarily the programming language (all though it is more readable), but the fact that everyone who’s coding with Objective-C is using the same developing environment; Xcode. A developing environment is a piece of software that has all the capabilities for reading, writing, and compiling code built into it, along with a graphical user interface builder (and many other tools). To create any sort of program or application that will run on iOS or OS X, you’ll need to use Xcode. Some might say that’s very crippling for developers, but I think it’s the one reason that made the AppStore take off, and has made learning Objective-C a lot easier for me, then PHP.

Consistency While Learning

I tend to leap onto “industry standard” programs, just because I learn better on more widely adopted technology, because it’s a lot easier to learn when everyone is using the same technology/program, and platform. Inherently, widely adopted technology makes for easier learning when surfing the web. If I’m watching a tutorial on Lynda.com one day, and then watching another tutorial on YouTube the other day… when both tutorials are using the same platform i.e Xcode, or Pro Tools, or Premiere Pro… it makes it a lot easier to learn and build off of content from multiple areas on the web.

When I was just getting into audio engineering (around the age of 13), I had some entry level software to do all my mixing and editing on. I remember at the time, searching for tutorials and guides was brutal! There were a lot of videos out there on Pro Tools, and Logic, but watching them, and then looking at my software trying to translate what I was learning was hard and inefficient. While I was learning some core concepts of PHP, different tutorials would be using different code editors,  colours, fonts, and sometimes operating systems based off of the time they were recorded at. You might think these are all peripheral things, but when it comes down to it, visual learning works best when the visuals remain consistent.

“Free”dom For Programmers

So far, every tutorial I’ve watched on Objective-C has been coupled with Xcode, and that’s been extremely helpful when trying to remember the things I’ve watched. Now, opening up Xcode is a lot like replaying a tutorial I’ve watched in my mind, just because that was where I was first acquainted with it. Not everyone has this luxury, mainly because not all IDE’s are free like Xcode. You could be watching a great tutorial on C++ in Microsoft Visual Studio, but for someone who’s just learning to program, that might not be an initial product purchase you’d be willing to make. Then you’ll be in the same situation I was when I was 13; using some sort of entry level software, but watching tutorials on industry standard software. If you have a Mac, and a burning desire to learn some programming, then you have the ability to use a widely adopted language on a great platform for free; Objective-C and Xcode.

Day 38: Apple WWDC 2014, Swift, and OOP

Considering it’s mostly Apple technology that’s powering my creative pursuits (my MacBook, MacPro, Final Cut Pro X); whether it’s programming, editing video, or recording in my studio. I thought it’d only be appropriate to talk a little bit about Apple’s WWDC, mainly the release of their new programming language, Swift, and how that’s affecting my journey in the programming space.

What Is OOP

After finishing my first tutorial on the PHP programming language awhile back, I figured it’d be good to move into object oriented programming (OOP). Object-oriented programming is an approach to designing modular, reusable software systems. Instead of running a piece of code from the top-down on a script, OOP allows you to create objects the operate independently of procedural code. An online shopping system would have objects like shopping cart, customer, and product. Each object will have multiple methods that you can call upon at different times within your code. Productfor instance, might have different behaviours such as electronics, books, or kitchenware. This brings a sense of hierarchy, which in turn makes for more clean, readable, and manageable code… and for someone who’s just diving into programming, that’s always a plus.

OOP, iOS and Swift

iOS development uses the programming language Objective-C, an OOP language. I figured an exciting way to learn OOP, would be to dive into iOS development, and in turn, prepare myself to be able to take on the programming language, Swift, in the future. I’m a firm believer in remaining updated with the latest software, techniques, and hardware for whatever task it is that I’m working on. Seeing as how the iPhone and iPad are working even closer with desktop systems like OS X, it’s only reasonable to assume that the mobile development space is not even close to slowing down.

The following video is a basic look at the Xcode development software for Apple, and is one of the introductory lessons to the iOS App Development Essential Training course on Lynda.com.