Sunday, January 11, 2015

Resources for Beginning iOS Development

Recently, a coworker was interested in learning iOS development and asked me to recommend to him a few resources for learning and I thought that I would also share this here.

Here are a couple resources for learning iOS:

Intro Books
1. iOS Programming: The Big Nerd Ranch Guide (4th Edition) - This book only covers iOS 7 and Objective-C, but a lot of the same concepts will apply in iOS 8. This would be good intro to iOS and also learning Objective-C. Some of the text might be out of date since the Xcode UI has changed a little bit. I originally started learning with the Beginning iPhone Development book (below), and I read this one after; I thought that the Big Nerd Ranch book went in to more in depth on almost all the topics and I was able to pick a few tips on how to better structure my code.

2. Beginning iPhone Development with Swift: Exploring the iOS SDK - This book is also gives a good intro to iPhone development, but this one is written for iOS 8 and is in Swift if you want to skip the Objective-C part.

Learning Swift
1. I recommend just reading Apple's book on Swift to learn the language. It's available in iBooks here and on the web here
2. There is also a second part of the book above that covers using Swift with Cocoa and Objective-C, which goes into more advanced topics but is a good follow up read after reading the first part. The iBooks link is here.

A common question I see is should I learn Swift or Objective-C? I think that if you are looking for a job as a iOS developer, you will need to learn both because most likely the company/client already has existing code that is in Objective-C. You can mix and match Swift and Objective-C code, but you need an understanding of both to do so. If you are able to develop an app from scratch, you can probably get away with only learning Swift. It is also good to point out that the 3rd party library support for Swift is very weak right now, so if you don't mind reinventing the wheel (a good way to learn) then this is the way to go. You can also always refer to open source libraries written in Objective-C and convert them to Swift yourself (another benefit for learning both languages).

Other resources (tutorial sites and blogs)
1. http://www.raywenderlich.com/ - This site has a lot of useful tutorials for not only beginners but also intermediate and advanced iOS developers. When I was first starting out, I frequented this site and tried to do as many tutorials as I could. Even still today, I find myself visiting this site to continue learning.
2. http://nshipster.com/ - This iOS blog is written by the creator of AFNetworking and has a lot of in depth articles on Cocoa, Objective-C and Swift topics that are commonly overlooked.
3. https://iosdevweekly.com/ - This newsletter is a great way to get a pulse on the iOS community. I've been able to learn about a lot of useful tools and libraries from this weekly email.
4. WWDC videos (all years) - The videos from the WWDC presentations are extremely useful, but can be quite advanced and dry sometimes. If you are unsure of what the best practice of doing something is, I would recommended these videos; It's also a great way to learn about the new things that were introduced in every new version of iOS. Also see ASCIIwwdc.

Hopefully this is a good enough start. There is also always the Apple docs (sometimes confusing and hard to find), Google and Stack Overflow. Good luck!

13 comments:

  1. A friend has started IOS Game Development career by using "iPhone App
    Development I think this should be great start for him It's a great online tutorial for beginner keep it.

    ReplyDelete
  2. Yes, I agree with you Alex Andrina....It really a great online tutorial for beginner who wants to start their carrer in IOS Development.
    IOS Development

    ReplyDelete
  3. This comment has been removed by the author.

    ReplyDelete
  4. The war between humans, orcs and elves continues earn to die . Lead your race through a series of epic battles, using your crossbow to fend off foes and sending out units to destroy castleshappy wheels . Researching and upgrading wisely will be crucial to your success! There are 5 ages total and each one will bring you new units to train to fight in the war for you cause.
    earn to die 2
    Whatever you do, don’t neglect your home base because you cannot repair it and once it is destroyed, you lose! Age of War is the first game of the series and really sets the tone for the Age of War games . Also try out the Age of Defense series as it is pretty similar.
    In this game, you start at the cavern men’s age, then evolvetank trouble ! There is a total of 5 ages, each with its units and turrets. Take control of 16 different units and 15 different turrets to defend your base and destroy your enemy.
    The goal of the game also differs depending on the level. In most levels the goal is to reach a finish line or to collect tokens. Many levels feature alternate or nonexistent goals for the player.

    ReplyDelete
  5. I am a recruiter looking for some android and iOS people for a start up with 80 million in funding less that 150 employees backing from Khosla Ventures and Eric Schmidt. This will be a huge company. If you know anyone looking in this space please e-mail me radardkooy @gmail.com or radar @ eaglerockrecruiting.com This company will be huge.

    ReplyDelete
  6. Really nice blog post.provided a helpful information.I hope that you will post more updates like this Ruby on Rails Online Training Hyderabad



    ReplyDelete

  7. Really good information to show through this blog. I really appreciate you for all the valuable information that you are providing us through your blog. ios app development online training Bangalore

    ReplyDelete
  8. The blog was very articulated and very well putt. You can also check If you want our latest blog on Ios development and marketing in the USA at: http://www.thedigizones.com/IOS-app-development-and-marketing-in-the-USA.php

    ReplyDelete
  9. Absolutely the content has shown a lot of character. You can approach 24-7 caregivers
    for the best quality caregiving services here in Port Saint Lucie for your love ones. Around the clock.

    ReplyDelete
  10. A lot more learn from this informative post. Nice article.
    dental implants karachi

    ReplyDelete
  11. Apps Cre8ve is truly a standout in the world of iOS development. Their commitment to creating exceptional apps is unparalleled. For beginners looking to kickstart their iOS development journey, Apps Cre8ve offers a wealth of insights and resources. Their expertise in this field is a valuable asset for anyone embarking on their iOS development adventure.

    ReplyDelete
  12. Like mastering iOS development, finding the perfect teether toy for infants demands careful research. Both processes, though different, highlight the significance of selecting the right tools for optimal outcomes.

    ReplyDelete
  13. Your curated list of iOS development resources is invaluable for beginners. The mix of introductory books, Swift learning guides, and recommended blogs provides a comprehensive learning path. DME of America

    ReplyDelete