(Part 2) Top products from r/iOSProgramming
We found 27 product mentions on r/iOSProgramming. We ranked the 96 resulting products by number of redditors who mentioned them. Here are the products ranked 21-40. You can also go back to the previous section.
21. Cocoa Programming for Mac OS X (3rd Edition)
Sentiment score: 2
Number of reviews: 2
22. Clean Code: A Handbook of Agile Software Craftsmanship
Sentiment score: 1
Number of reviews: 2
Prentice Hall
23. Core Data: Data Storage and Management for iOS, OS X, and iCloud
Sentiment score: 1
Number of reviews: 2
Used Book in Good Condition
24. Swift Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides)
Sentiment score: 1
Number of reviews: 2
Addison-Wesley Professional
25. Cocoa Programming for OS X: The Big Nerd Ranch Guide (5th Edition) (Big Nerd Ranch Guides)
Sentiment score: 1
Number of reviews: 2
26. iOS Programming: The Big Nerd Ranch Guide (5th Edition) (Big Nerd Ranch Guides)
Sentiment score: 1
Number of reviews: 2
27. Working Effectively with Legacy Code
Sentiment score: 1
Number of reviews: 1
Prentice Hall
28. dodocool USB C Hub 6-in-1 with Type-C Power Delivery, 4K HD Output Port, 4 SuperSpeed USB 3.0 Ports for MacBook/MacBook Pro/Google Chromebook Pixel and More (Silver)
Sentiment score: 1
Number of reviews: 1
6-in-1 Multifunction USB-C Hub: Extend four SuperSpeed USB 3.0 ports, one Power Delivery USB-C charging port and one HD output port from one USB-C port or Thunderbolt 3 (USB-C) port.4 SuperSpeed USB 3.0 Ports: Simultaneously connect up to four USB-A peripherals to a USB-C laptop and transfer data at...
30. Sams Teach Yourself iPhone Application Development in 24 Hours, 2nd Edition
Sentiment score: 0
Number of reviews: 1
Used Book in Good Condition
31. Cisco IOS Cookbook: Field-Tested Solutions to Cisco Router Problems (Cookbooks (O'Reilly))
Sentiment score: 0
Number of reviews: 1
32. iOS 8 for Programmers: An App-Driven Approach with Swift (3rd Edition) (Deitel Developer Series)
Sentiment score: 1
Number of reviews: 1
33. Programming in Swift (Developer's Library)
Sentiment score: 0
Number of reviews: 1
34. Swift Developer's Cookbook (Includes Content Update Program) (Developer's Library)
Sentiment score: 1
Number of reviews: 1
35. Swift Programming: The Big Nerd Ranch Guide (2nd Edition) (Big Nerd Ranch Guides)
Sentiment score: 0
Number of reviews: 1
Big Nerd Ranch Guides
36. The Pragmatic Programmer: Your Journey To Mastery, 20th Anniversary Edition (2nd Edition)
Sentiment score: 1
Number of reviews: 1
37. Design Patterns: Elements of Reusable Object-Oriented Software
Sentiment score: 0
Number of reviews: 1
Great product!
38. iOS Programming: The Big Nerd Ranch Guide (2nd Edition) (Big Nerd Ranch Guides)
Sentiment score: 1
Number of reviews: 1
You can dive right into Objective C, I was only vaguely familiar with C and I've published a few apps without any problems. However, if you're intent on learning C pick up 'The C Programming Language' (K&R), not only the best C programming book, but one of the best programming books ever written.
Objective C books, I recommend one of the two or both books,
'Programming in Objective C 3rd edition' or
'Objective C: The Big Nerd Ranch Guide'
Both of these books are excellent resources for learning and I keep them close by whenever I have a question.
In terms of learning iOS development. I recommend going into iTunes U and downloading the latest Stanford University iPhone development course. I believe Winter 10 is the newest, follow along those classes and the class website, treat it like a real class, do the homework and all the assignments. There is no text book for the class, but this other book by Big Nerd Ranch, 'iOS Programming: The Big Nerd Ranch Way' is totally awesome.
After these classes and books you should have a great foundation for iOS development. Once you feel comfortable with everything and have an app or two under your belt, download Madison Technical College's Advanced iPhone Development course videos from iTunes U and Apple's own WWDC Session Videos.
Each MTC video is about 3 hours, watch them in chunks. The professor, Brad Larson is one of the best iPhone developers out there and in my opinion is one the best contributors to the community, (see his posts on stack overflow).
Lastly, check out www.raywenderlich.com. My personal favorite iPhone development website. It's updated every Monday, Wednesday, Friday with great technical tutorials that are funny and educational.
Best of luck to you and welcome to iOS development :-D.
Reading books is a good way to get a good grasp of how iOS applications work. This one is really good and isn't too difficult for a beginner especially if you already have some experience with object oriented programming languages.
This course is overall one of the best ressource you can find on the internet in my opinion. It is very well explained and after finishing this course almost everything you'll encounter will be a lot easier to understand.
The only downside to this course is that it's oriented for people who have a strong understanding on how OOP languages work. If you're kinda new to them, you'll be overwhelmed quickly. But this is what I like about this course. Unlike most tutorials you'll find on the web, this one isn't aimed at complete beginners and it'll teach your in depth the foundations of iOS applications. So if you're new, check out the first book first it's extremely potent.
Even if you look kind of new to programming you shouldn't be afraid. You don't have to be extremely good at programming to program applications. In fact it's the same for everyone, our first real application is not that great but eventually you'll build better and better applications. There is no shortcut to be a good programmer, everybody that's great at programming were at the same exact position as you are now. Yes there are people who'll understand things faster than you, but that's basically the same for everything. It doesn't prevent these people from being stuck a whole afternoon because of a stupid bug.
If you see someone on the internet that has an easy time at doing thing you find extremely difficult, it just means they just spent a lot more time than you on the subject.
If you're determined, just pick up a book or starts with the basics at http://www.raywenderlich.com/ simple as that.
You can read some stories about people who got into iOS programming or programming in general with no prior programming experience. In fact I remember seeing not too long ago, someone who just quit his job because of that. He planned to have enough money for him and his wife beforehand, because he couldn't bear his job anymore. I remember another dude who quit everything after getting his master's degree in law.
There are kids who start programming at 12 and make you feel like shit because they are way more competent, but there are also people starting programming past 30 years old who are as successful. No matter your age, your background, if you REALLY want to developp apps you will succeed. You'll just learn like everyone and it will take time but fortunately for you there are awesome people on the internet who can teach you things for free.
The one you linked might be fairly decent (I haven't read it yet, since it is brand new, but Matt Neuburg has done books in the past which are well done).
You might also consider the Swift Programming:
The Big Nerd Ranch Guide https://www.bignerdranch.com/we-write/swift-programming/ For beginners this is one of the most highly recommended books out there.
And if your looking for something to follow it up with I would recommend The Swift Developers by Erica Sadun https://www.amazon.com/Developers-Cookbook-Content-Program-Library/dp/0134395263 This is a great book once you've got the basics down and really want to refine your Swift skills.
I would say you'll see much better performance improvements from RAM than a faster processor. Even if you just take the difference between the upgrades: an i5 to i7 could maybe be a 10–20% performance gain, whereas 8gb to 16gb of RAM is a 200% increase. Plus I think RAM is much more important for most real-world situations than processor speed. Processor speed would be most noticed during compiling.
Side note, for the love of god do not get a (non-Pro) Macbook. You will regret it. They're incredibly slow, and they only have one port.
You're essentially comparing two different generations of computer. The MBPs 2015 and earlier have a wider variety of ports, better keyboards, but no USB C, a display that's not as good, and a slower SSD. MBPs 2016 and later have only USB C ports (meaning you need dongles for any real-world usage), worse keyboards that are prone to expensive failures, a beautiful and bright display, and a super fast SSD.
To answer your questions about MBPs:
Swift:
Objective-C
I've got started on iOS programming 3.5 years ago reading the Kochan Objective-C book (probably the 3rd edition).
I am (was) an experienced programmer and found Kochan very helpful, specially on the memory management side of it. Learning C came after that, when I needed to do something that required more performance on iOS.
I also read part of Hillegass Cocoa book because I had it at hand, which got me a good starting point to learn Cocoa Touch online.
NSUSerDefaults is meant to be used with strings, booleans and NSData representation of other data (serialised). I believe you serialise your class to be stored into UserDefaults which is fine.
When I started developing on the iPodTouch2G, I had issues storing and retrieving data more than a few hundred kilobytes. I took some months to understand the basics of CoreData (I never wanted to use raw SQLite, which is an option). Even today I have not mastered it because mastering core data can only happen with time and experience. I still don't like the way CoreData calls from multiple threads and the merge mechanisms but that is the way of life :)
Sooner than later your dataset will grow and you will be hard pressed for options. I suggest you start with simpler architecture (One entity with one property) and scale up the learning process.
This is a comprehensive guide to learning core data and mastering it ;) Core Data: Data Storage and Management for iOS, OS X, and iCloud (Pragmatic Programmers)! from one of the masters of core data.
I spent a lot of time learning specific architectures and patterns that were in common usage when I first started, but the specific patterns in vogue are constantly changing. I'd recommend reading all 3 of these books at some point earlier in your career, I think a lot of the popular software design practices are based on the foundation of ideas in here and if you read them you will start to naturally make the right choices when it comes to organizing your code.
https://www.amazon.com/Pragmatic-Programmer-journey-mastery-Anniversary/dp/0135957052/ref=pd_sbs_14_t_0/142-3028760-3243861?_encoding=UTF8&pd_rd_i=0135957052&pd_rd_r=8877e123-b48f-4ce7-9e92-fec38cbeb54f&pd_rd_w=CdI3a&pd_rd_wg=arKVG&pf_rd_p=5cfcfe89-300f-47d2-b1ad-a4e27203a02a&pf_rd_r=9JQWC8NFNAY0GN7FAN9D&psc=1&refRID=9JQWC8NFNAY0GN7FAN9D
https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670/ref=pd_sbs_14_t_2/142-3028760-3243861?_encoding=UTF8&pd_rd_i=0735619670&pd_rd_r=8877e123-b48f-4ce7-9e92-fec38cbeb54f&pd_rd_w=CdI3a&pd_rd_wg=arKVG&pf_rd_p=5cfcfe89-300f-47d2-b1ad-a4e27203a02a&pf_rd_r=9JQWC8NFNAY0GN7FAN9D&psc=1&refRID=9JQWC8NFNAY0GN7FAN9D
https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/ref=pd_sbs_14_t_1/142-3028760-3243861?_encoding=UTF8&pd_rd_i=0132350882&pd_rd_r=8877e123-b48f-4ce7-9e92-fec38cbeb54f&pd_rd_w=CdI3a&pd_rd_wg=arKVG&pf_rd_p=5cfcfe89-300f-47d2-b1ad-a4e27203a02a&pf_rd_r=9JQWC8NFNAY0GN7FAN9D&psc=1&refRID=9JQWC8NFNAY0GN7FAN9D
Sorry for all the questions but I want to learn the best way possible. This one?
https://www.amazon.com/Swift-Programming-Ranch-Guide-Guides/dp/0134398017/ref=pd_sim_14_9?_encoding=UTF8&psc=1&refRID=N4NTMT05S0YAJ91AVXN1
The Standard C Library might be the best library to look at first. Richard Stevens' Unix books are also very good.
Others include CoreFoundation, OpenGL, ffmpeg, etc.
Awesome, thanks so much! I'm wondering if this book is any good...
http://www.amazon.com/iOS-Programmers-App-Driven-Approach-Developer/dp/0133965260/ref=zg_bs_6133980011_2
You should read Working Effectively with Legacy Code by Michael Feathers. It's a fantastic book and will help you avoid the classic mistakes.
>https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/ref=pd\_sbs\_14\_t\_1/142-3028760-3243861?\_encoding=UTF8&pd\_rd\_i=0132350882&pd\_rd\_r=8877e123-b48f-4ce7-9e92-fec38cbeb54f&pd\_rd\_w=CdI3a&pd\_rd\_wg=arKVG&pf\_rd\_p=5cfcfe89-300f-47d2-b1ad-a4e27203a02a&pf\_rd\_r=9JQWC8NFNAY0GN7FAN9D&psc=1&refRID=9JQWC8NFNAY0GN7FAN9D
Thank you, which of those do you recommend to start with?
Big Nerd Ranch has a pretty good OS X book. http://www.amazon.com/gp/product/0134076958?keywords=big%20nerd%20ranch%20os%20x&qid=1452094223&ref_=sr_1_1&sr=8-1
Also the iOS equivalent are bibles for OS X and iOS developers.
Typically iOS devs at their level of polish are using core data to store information about the app entities. This is a object graph system that maps to disk, the web, a database, or really anything else.
Marcus Zarra wrote an excellent book on doing this.
To get the numbers, they then do fetches from the object store, then count things. Count things by days, or by type, etc.
When I was starting this book helped me the most.
http://www.amazon.com/gp/aw/d/0596527225
It's a really good read.
A lot of people have had success with the book I write for the company I work for:
iOS Programming: The Big Nerd Ranch Guide (6th edition)
https://www.amazon.com/dp/0134682335/ref=cm_sw_r_cp_api_i_XL35Ab39GGVNW
We also have a Swift book:
Swift Programming: The Big Nerd Ranch Guide (2nd Edition)
https://www.amazon.com/dp/013461061X/ref=cm_sw_r_cp_api_i_NM35AbQ45T962
If you have questions about either, let me know.
There really isn't a difference for iOS except for your UI layout. iOS will also have more file restrictions as well.
But, that same group does have a Mac series: https://www.amazon.com/Cocoa-Programming-OS-Ranch-Guides/dp/0134076958
Big Nerd Ranch's Swift book came out in December 2015 and its iOS programming (5th Edition) book was released a day later. So the code should work side-by-side.
You can find them on Amazon: [Swift] (http://www.amazon.com/Swift-Programming-Ranch-Guide-Guides/dp/0134398017) and iOS Programming (5th Edition)
In the Swift book, you'll be making command-line programs that teach you the basics of the language. But I find that app development isn't so much about knowing Swift/Obj-C but more about knowing how to use the frameworks/APIs, which is what BNR's iOS Programming will teach you.
I actually learned from this book
http://www.amazon.com/Yourself-iPhone-Application-Development-Edition/dp/0672332205
Its really straight forward and walks you through the basic concepts with tutorials and example projects for each "hour". By the end you'll have enough knowledge to have an app on the store (and a hunger to learn more!)
Is this the book you have in mind?
I didn't look through your code.
Just some general advice: Don't force design patterns into your app. Design patterns are solutions to common problems. You should just be familiar with them to recognize when you're trying to solve a common problem.
You should read this:
http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_1?ie=UTF8&qid=1427141980&sr=8-1&keywords=design+patterns
By the way, a new book on Cocos2d was just released. My copy arrives today. Remind me, and I'll post observations after I've had a chance to work with it.
Third-party documentation is a win in cocos2d's column, but I hate to let that be the deciding factor, because it often boils down to "I'm using this because everybody else is using it."