Series: Effective Software Development Series
Paperback: 320 pages
Publisher: Addison-Wesley Professional; 1 edition (May 26, 2013)
Language: English
ISBN-10: 0321917014
ISBN-13: 978-0321917010
Product Dimensions: 7 x 0.7 x 9.1 inches
Shipping Weight: 1.4 pounds (View shipping rates and policies)
Average Customer Review: 4.8 out of 5 stars See all reviews (49 customer reviews)
Best Sellers Rank: #398,011 in Books (See Top 100 in Books) #49 in Books > Computers & Technology > Programming > Apple Programming #218 in Books > Computers & Technology > Mobile Phones, Tablets & E-Readers > Programming & App Development #502 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
This is the best book I have seen regarding best practices for actually coding Objective-C. There are endless books available on coding for iOS and OSX, but all simply gloss over the actual Objective-C language. Many cover the basics, but none to date have gone into the detail this book does.I have been coding for over 30 years, starting in Pascal, then C, then C++, then Java. Moving back to the C world (via Objective-C) after years of Java was painful, but I'm getting good at it again. This book is taking me to the level where I feel truly proficient at coding in Objective-C, not just "getting by".The guidelines throughout this book are so useful that I'm refactoring my entire codebase to implement as many of these guidelines as necessary.If you're like I was with Objective-C - able to get things working, but all the while knowing you'd be a bit embarrassed if a "real" objective-c expert saw your code, have no fear, this book will give you the knowledge to BE that expert.Hats off to Matt Galloway for writing a concise, east-to-understand, invaluable book on Objective-C.
This book was a great read and mostly very informative. There are not many good books out there that are both aimed at the intermediate/advanced level and are worth reading - but this is one of the good ones.I personally benefited from the discussion of enum, object equality, object copying, class clusters, associated objects, processing of unrecognized messages, method swizzling, errors and exceptions, creating atomic getters and setters, other uses of GCD, etc.The one topic where I thought the book spent a little too much time was memory management. Mostly because ARC makes this such a non-issue most of the time. There were a few good tidbits, but some of the chapters could probably be consolidated.I would recommend this book to anyone who already knows Objective-C and iOS programming but wants to get a better understanding of certain advanced topics.If you are just starting out, put this book in your wish list, then read other books and gain experience first, then come back to this book. You won't be disappointed.
I am a self-taught iOS developer, and usually the only iOS developer on the team. Because of this it is difficult to keep up on how other people are doing things, and what patterns are emerging as best practices. This book is full of many great suggestions on how to make your code better, with good solid explanations of why. When the author is stating an opinion he says so, and other times refers the reader back to the Apple documentation that the recommendation is based on. I have adopted several of the suggestions into my day to day coding. This is a great book that you should make time to read.
the main challenge with objc/cocoa is that there are many different ways of doing things, none of them easy, and you often get to see the repercussions of your choices only much later when things are difficult to changethis book warns the reader about typical pitfalls and possible long-term repercussions and the cumulative effect of the the choices made far in advance, and thus saves plenty of time and effortone of the few exceptionally worthy books on the subject of objc/cocoa, highly recommended
What a useful book. Teaches you principles any expert objective c and ios developer should know. Highly recommended, one of those rare books that take you to the next level by being concise, informative, and wrll written.
I primarily write software for iOS platform. I try to refactor my code that honors latest design standards. It is not always easy to do so. Very few texts out there goes in depth explaining the nuts of bolts of a programming language and its standards. Luckily Effective Objective C is one of them.Chapters on Objective C run time , Blocks, GCD , API design are backed by good example that are clean and easy to read.I would recommend this book to any developer who is looking to hone their skills in Objective C and improve their app design.
This book holds a unique place on my bookshelf - it's a software book that can be read 10 pages at a time, is always enlightening, and won't go out of style (until we all convert to Swift). It's the best, most practical book I've bought in my iOS/Objective C development journey. The core premise of the book is to cover topical areas (categories, blocks, GCD, et. al.) and provide both a fundamental understanding of the topic, how to apply it, pitfalls, etc. It moved me past the intermediate/self taught phase. I can't recommend it highly enough.
I have been developing in Objective-C for 5 years and I thoroughly enjoyed this book. The writing style is engaging and easy to follow. There are quite a few gems inside. A few topics are pretty simple, even for beginners. Some of the chapters are deep enough to have even advanced objc programmers saying, "Oh, that's how that works!" A good example is the chapter on "associated objects."While we are all learning how to do a Swift right, this will improve our Objective-C code. Well done.
Effective Objective-C 2.0: 52 Specific Ways to Improve Your iOS and OS X Programs (Effective Software Development Series) Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) Effective C++: 55 Specific Ways to Improve Your Programs and Designs Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs: 44 Tips to Improve Your Network Programs Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library Effective Perl Programming: Ways to Write Better, More Idiomatic Perl (Effective Software Development Series) Improve Your Eyesight Naturally: How To Improve Your Vision Naturally - Learn Super Effective Eyesight Exercises To Improve Eyesight Without (Vision Therapy, Optometry, Eyesight Improvement) SWIFT: PROGRAMMING ESSENTIALS (Bonus Content Included): Learn iOS development! Code and design apps with Apple's New programming language TODAY (iOS development, swift programming) Apps: Mobile App Trends in 2015 (iOS, Xcode Programming, App Development, iOS App Development, App Programming, Swift, Without Coding) ((Android, Android ... App Programming, Rails, Ruby Programming)) Learn Objective-C on the Mac: For OS X and iOS School-Based Mental Health Services: Creating Comprehensive and Culturally Specific Programs (Applying Psychology to the Schools) Diving Into iOS 9 (iOS App Development for Non-Programmers Book 1) Learn to Code in Swift: The new language of iOS Apps (iOS App Development for Non-Programmers Book 2) Beginning iOS 7 Development: Exploring the iOS SDK Brooks/Cole Empowerment Series: Social Welfare Policy and Social Programs (SW 323K Social Welfare Programs, Policies, and Issues) Inside Cisco IOS Software Architecture (CCIE Professional Development) Brain Training: Power Brain! - Secret Techniques To: Improve Memory, Focus & Concentration (Brain teasers, Improve memory, Improve focus, Concentration, Brain power) Effective COM: 50 Ways to Improve Your COM and MTS-based Applications Insider's Guide to Graduate Programs in Clinical and Counseling Psychology (Insider's Guide to Graduate Programs in Clinical & Counseling Psychology)