Friday, October 31, 2014

Pocket full of good material

I just finished reading O'Reilly's "Swift Pocket Reference" by Anthony Gray. This book is the go-to shortcut for existing programmers to get up to speed on Apple's new programming language Swift. Apple's own book on Swift is 458 pages of very well written explanation of the new language's features. I never got past the first few chapters. As an experienced developer I don't need all the detail that Apple offers in their volume. Mr. Gray has provided the perfect balance of useful information and brevity!

"Swift Pocket Reference" starts out with some good instruction on using Xcode's command line features and playgrounds for quickly writing code snippets to test ideas or learn the language. Next Mr. Gray takes you through the Swift language features very similarly to the Apple documentation. This is good for a couple reasons. If you don't get all you need from Mr. Gray's book you can find a similarly named chapter and section in the Apple book that will fill in details in more depth. It also allows you to read two explanations of a concept to get a better picture. Don't get me wrong, Mr. Gray is not merely rehashing the Apple documentation like many reference guides will do. Mr. Gray is explaining each feature of the language in a very precise manner providing examples of every feature in action! I can't express strongly enough how well this book provides both the explanation and example so well.

I attended WWDC 14 and sat through several Swift language seminars during the conference. I was amazed time and time again as I read through Mr. Gray's book that there were features in the new language that I was not aware existed. I also appreciated the very readable style of writing used throughout the book. Many reference guides can be overly technical or too brief - this book feels just about perfect when it comes to readability and depth of content.

This book will be used by me in my daily Swift writing projects!

I review for the O'Reilly Reader Review Program