Objective-C Fundamentals

Author: Christopher Fairbairn, Collin Ruffenach & Johannes Fahrenkrug
Publisher: Manning
Pages: 368
ISBN: 978-1935182535
Aimed at: Existing programmers wanting to learn Objective-C
Rating: 4
Pros: Focuses on Objective-C in context of iOS development
Cons: Not suitable for complete beginners
Reviewed by: Mike James

Is this book a suitable choice if you want to get on top of Objective-C before you start to create iOS apps?

Author: Christopher Fairbairn, Collin Ruffenach & Johannes Fahrenkrug
Publisher: Manning
Pages: 368
ISBN: 978-1935182535
Aimed at: Existing programmers wanting to learn Objective-C
Rating: 4
Pros: Focuses on Objective-C in context of iOS development
Cons: Not suitable for complete beginners
Reviewed by: Mike James

Objective-C is a strange language. It has a sort of life of its own, but in practice it is mostly tied to Apple software development and recently to iOS development in particular. There are many books on iOS development that give you a short introduction to Objective-C or simply assume that you know the language or can pick it up as you go along. What do you do if you would like to get on top of Objective-C before you start to create iOS apps? There are a few books that attempt to treat Objective-C as if it had nothing to do with Apple development, but to be honest this approach doesn't really do justice to how the language is used. This particular book takes a more realistic attitude in that it attempts to explain the language in the context of iOS programming. It is important to note that this isn't a book about creating iPhone or iPad apps but about explaining the language.

 

Banner

 

This said, Chapter 1 starts off with a complete iOS application. First you install the development software and then work your way through a complete application. You also get a chapter each on data types, objects and collections.  This ends the first part of the book and by this point you should have a reasonable idea of what makes the language tick.

What is odd is that while some very basic ideas are discussed there is no special mention of control statements. For example, the for loop is introduces as part of a discussion on arrays and if statements are just dropped in along the way. What this means is that you need to have a grasp of programming before you are likely to get much about Objective-C from this book. Ideally you probably should already programming in C but if this is the case then some of the early simple material is going to seem irrelevant.

The good news, however, is that Appendix B is on C - surely it should have been possible to make it appendix C.  This is a lightening look at basic C coding, including conditionals and loops. It would probably be better to move this and make it an earlier chapter in the book so that beginners can't miss it. So if you are a beginner and don't know C syntax then read Appendix B first. However, notice that the overall speed of presentation of C isn't slow enough for a complete beginner.

Part II of the book deals with building your own objects. This is essentially a standard course in object-oriented programming in Objective-C. Topics covered include classes, inheritance and so on. Later chapters deal with protocols, dynamic typing and memory management. This would be a suitable course for a programmer needing to convert to the special way that Objective-C has of doing many standard tasks.

The final section is about using the framework and deals with exception handling, key-value coding, reading and writing data, blocks and finally debugging.

This is a book with a difference in that it is focused on Objective-C in its natural habitat. It isn't suitable for the complete beginner but if you have a basic idea of how to program you should be able to learn how Objective-C works and Appendix B will get you up to speed on C.

At the end of the book you will still need another book on iOS development but then this is as it should be and you can start to learn the structure of iOS secure in the knowledge that you know Objective-C.

 

Banner


Software Architecture In Practice

Author: Len Bass, Dr. Paul Clements and Rick Kazman
Publisher: Addison-Wesley Professional
Pages: 464
ISBN: 978-0136886099
Print: 0136886094
Kindle: B094CPJ96B
Audience: Software architects
Rating: 4.5
Reviewer: Kay Ewbank

This is the fourth edition of a book widely regarded as a classic since its firs [ ... ]



The Rust Programming Language, 2nd Ed

Author: Steve Klabnik and Carol Nichols
Publisher: No Starch Press
Date: June 2023
Pages: 560
ISBN: 978-1718503106
Print: 1718503105
Kindle: B0B7QTX8LL
Audience: Systems programmers
Rating: 4.8
Reviewer: Mike James

There's a new edition of what has become the standard text on Rust. Has it matured along with [ ... ]


More Reviews

Last Updated ( Wednesday, 02 November 2011 )