|Swift Programming In Easy Steps|
Author: Darryl Bartlett
Starting to program is always tough, but learning to create apps for a phone is attractive enough to be motivating. Until recently, however, the idea of using iOS as your first encounter with programming wasn't a very good idea. The reason was that Apple's preferred language, Objective C, was a difficult first language, even some would argue a difficult second or third language! Today you can program iOS apps in Swift, which is much friendlier and modern.
At this point, however, I have to inject a personal note. I gave up programming iOS apps a few years ago not for technical reasons, but because of the way Apple runs the whole enterprise. The iPhone, iPad and increasingly the Mac represent a closed ecosystem and Apple can take your toys away from you if you do anything to upset it. I would advise against entering Apple's walled garden unless you are fully aware of what freedoms you are giving up, see items in our Fear and Loathing In The App Store series. You can say that Google's Android is just as bad, but most would agree that it isn't quite as bad and is a better choice for the beginning app developer.
However, if you still want to learn Swift and all things iOS, then this is a good book - both cheap at around $10 and cheerful, being printed in color. The biggest negative is that it is very short at 192 pages and rather than restrict itself to the basics it covers a lot of ground - there is even a chapter on machine learning!
It starts off nice and slowly with how to get Xcode set up - you will of course need a Mac. Then it covers some basics of programming but not in sufficient depth, detail or slowly enough for the complete beginner. We have covered variables, conditionals, arrays, dictionaries, loops and function in ten pages.
After this basic introduction the approach is mostly task-oriented. Chapter 3 explains user interaction and we start to get to grips with the UI. Again this is just enough for you to go and explore the less used widgets. Chapter 4 explains the camera and photo library a topic usually left until later but it is motivating. Chapter 5 explains maps and geocoding etc. Chapter 6 is about Firebase and Chapter 7 introduces game development using simple sprites. Chapter 8 is about advanced Swift but its really about advanced iOS and here you will find machine learning alongside using Google AdMob to make some cash. The final chapter tells you how to really make some cash with your app by submitting to the App Store - good luck.
In my opinion this isn't a book for the 100% beginner. If you have never touched programming at all then you will need something slower and more gentle to give you the basic ideas. If you know a little programming - loops, conditionals how to call functions and some idea about objects - then this could be a good brief introduction. It would function well as a quick refresher or reference and at the price it is worth having even if you only use it to look things up.
This is a short ride in a fast machine. If you can hang on then you will learn a lot, but my guess is that you are going to have to spend a lot of time looking things up online. You should be fine as long as you follow the plot, but as soon as you go off on your own you are going to need more help. There is no avoiding the fact that learning to be an expert iOS programmer needs a big book - but this one will get you started.
To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.
|Last Updated ( Saturday, 23 November 2019 )|