Publication and book publisher for iOS and macOS developers, covering Objective-C, Swift, and SwiftUI.
HN commenters recommend it as great reading on iOS and OS X APIs, including a TextKit introduction, and list it among learning resources for Apple developers.
I think the best argument against swift is the plethora of knowledge, tutorials, stackoverflow answers there is for objective-c. When I started learning Unity in 2009, I wanted to use C#. Yet 90 % of all the tutorials, docs, etc.. was in javascript at the time. As I was fairly new to programming then, translating from javascript to C# slowed me down. In hindsight, if I just used javascript I would've progressed much quicker than I did. I think the situation within a year will be different, the iOS community is producing swift tutorials en masse. But I would advice you to start with objective-c.
The best iOS material is:
- Objective-C programming book from big nerd ranch or Programming in Objective-C from Stephen G. Kochan (more in-depth)
- cs193p from Stanford (iTunesU) iOS 7 course is objective-c. iOS 8 course (starting in 2015) will be swift.
After cs193p you should know enough to make apps.
If you want to be a great iOS developer, you should also learn:
- ios / cocoa design patterns
- cocoapods | git
- visit http://nshipster.com
- visit http://objc.io
- Learn from other apps source code: http://maniacdev.com/2010/06/35-open-source-iphone-app-store-apps-updated-with-10-new-apps/
Handy links:
Obj-C online reference: http://rypress.com/tutorials/objective-c/
Obj-C cheat sheet: http://cdn1.raywenderlich.com/downloads/RW-Objective-C-Cheatsheet-v-1-5.pdf
iOS tutorials: http://nscookbook.com/recipes/ | http://www.appcoda.com | http://www.raywenderlich.com ! |…
Sure. Hacking with Swift [0] is great, CS193P [1] is very good (previous years were UIKit, now it's SwiftUI). Ray Wenderlich [2] and Swift by Sundell [3] are also good resources. The OG was NSHipster [4], but they haven't published much recently (some articles may be a bit outdated). For SwiftUI specifically, Swift with Majid [5] is a godsend and has amazing content. Finally, for learning good Swift language practices, the Swift book [6] is very friendly.
Edit: forgot https://www.objc.io, definitely one of the best
[0]: https://www.hackingwithswift.com
[1]: https://cs193p.sites.stanford.edu
[2]: https://www.raywenderlich.com
[3]: https://www.swiftbysundell.com
[4]: https://nshipster.com
[5]: https://swiftwithmajid.com
[6]: https://docs.swift.org/swift-book/
I'll add a few of my favourites:
- iOS Dev Weekly (https://iosdevweekly.com/)
- Little Bites of Cocoa (https://littlebitesofcocoa.com/)
- objc (https://www.objc.io/)
- NSHipster (http://nshipster.com/)
- NSBlog / Friday Q&A from Mike Ash (https://www.mikeash.com/pyblog/)
- This Week in Swift (https://swiftnews.curated.co/)
- Erica Sadun (http://ericasadun.com/)
- Quality Coding (http://qualitycoding.org/)
- Use Your Loaf (http://useyourloaf.com/)
- Swift Monthly (http://swiftmonthly.com/)
- Cocoa, Objective-C and Swift programming News aggregator (https://twitter.com/cocoadevblogs)
If you plan on using Core Data please read objc.io issue #4[1].
The reason I use Core Data is because the alternatives for data persistence are not that great. We basically have NSCoding Protocol[2] and FMDB[3]. I find both cumbersome to use.
Also, not that it matters for this conversation but it is Core Data, not CoreData.
[1] http://www.objc.io/issue-4/editorial.html
[2] https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Protocols/NSCoding_Protocol/Reference/Reference.html
[3] https://github.com/ccgus/fmdb
Artsy - Mobile Engineer - https://www.artsy.net/job/mobile-engineer - NYC based
Looking for someone with a bunch of experience under their belt to work with some of the people who have had the most impact on the Cocoa community. Articles like this, http://www.objc.io/issue-22/artsy.html resonate with you and you want to try improve accessibility to the arts.
We're a fun & diverse bunch, https://github.com/artsy/mobile/ and do great things together.
I literally googled a few hours ago for "Why is Apple documentation so shit?"
I mean, look at SwiftUI. Conceptually it's great, but it is also fucking buggy as hell, and I think one of the main reasons is that the developers themselves don't have good documentation available. The best documentation so far I found is this, but it's third-party: https://www.objc.io/books/thinking-in-swiftui/