Welcome!

Blog Feed Post

Swift for Programmers Book Review

This is one of the best laid out programming books I have read in a while. The way it starts out providing summaries of Swift features found in other programming languages, Swift features that eliminate common programming errors, the list of Cocoa and Cocoa Touch frameworks, new key features in Xcode 6, special characters, numeric and boolean types, operators, conditional and loop statements, compound assignment operators, Classes, access modifiers, properties, initializers, methods, value and reference types, and making use of built in frameworks is perfect for developers from any other language.

By the time you are done the first few chapters you have gained a great deal of knowledge about Swift that is familiar from your experience with other languages. Below is a list of all the chapters included in the book.

1. Introduction to Swift and Xcode 6
2. Introduction to Swift Programming
3. Introduction to Classes, Objects, Methods and Functions
4. Control Statements; Assignment, Increment and Logical Operators
5. Functions and Methods: A Deeper Look; enums and Tuples
6. Arrays and an Introduction to Closures
7. Dictionary
8. Classes: A Deeper Look and Extensions
9. Structures, Enumerations and Nested Types
10. Inheritance, Polymorphism and Protocols
11. Generics
12. Operator Overloading and Subscripts
13. iOS 8 App Development: Welcome App
14. iOS 8 App Development: Tip Calculator App
A. Keywords
B. Operator Precedence Chart
C. Labeled break and continue Statements

After the initial introductory chapters the book digs deep into different topics by giving each major language feature a chapter of its own. The chapter names are reflective of the topics covered.

Object-oriented programming topics are covered throughout the book when topics being covered create the right context to cover them. However, chapter 10 is dedicated to covering Inheritance, Polymorphism and Protocols. This chapter does a good job of explaining how Swift is different than most object-oriented languages because it does not have a common superclass from which all other classes inherit basic capabilities.

The last two chapters of the book give us a glimpse into developing iOS 8 applications. Each chapter builds a small application and covers a bunch of topics at a high level. They also introduce storyboards and the Xcode interface. These two chapters are from the book iOS 8 for Programmers: An App-Driven Approach with Swift, which gives you an idea of whether or not you would like to read a book which takes you through building a bunch of small applications to introduce you to iOS 8 development.

The book includes code samples you can download, but one of the things I liked best about the book is the amount of code found in the book and the format in which they were presented. I could carry the book around and read it without feeling like I had to run the code samples on my Mac.

The samples include the results of running the code in the book. I know a lot of books do the opposite, making you type everything in, which is effective for the beginner, but this format is much more appealing to me.

The downloadable samples are very well organized by chapter and then labeled with the same figure name used in the book, making finding the really easy. I upgraded to iOS 8.3 and Xcode 6.3 and all the samples easily upgraded. I didn't have any problems with any of the examples before or after the upgrade.

Another thing I like about the book is the sidebars throughout the book. They have 5 different types of them including Good Programming Practices, Common Programming Errors, Error-Prevention Tips, Performance Tips, and Software Engineering Observations. They are usually 1 to 4 sentences, and are related to the material being covered in the section they are placed.

I saw that there is now a Swift Fundamentals LiveLessons available by the author. I have not seen this course, but have seen other LiveLessons, and they are usually pretty good. There are a few sample videos available on the publisher's web site.

The author's writing style and the layout of the book makes this an easy cover to cover read. The way the topics are covered also makes the book a good reference. There is no fluffy filler. The authors get right to the point of a topic and stick to it until it is thoroughly covered.

All in all I think this book is the perfect place for the experienced programmer of C#, Java, Objective-C, or C++ to get started with Swift.


Swift for Programmers (Deitel Developer Series)

Swift for Programmers (Deitel Developer Series)

Read the original blog entry...

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.

Latest Stories
In his session at @ThingsExpo, Dr. Robert Cohen, an economist and senior fellow at the Economic Strategy Institute, presented the findings of a series of six detailed case studies of how large corporations are implementing IoT. The session explored how IoT has improved their economic performance, had major impacts on business models and resulted in impressive ROIs. The companies covered span manufacturing and services firms. He also explored servicification, how manufacturing firms shift from se...
IoT is at the core or many Digital Transformation initiatives with the goal of re-inventing a company's business model. We all agree that collecting relevant IoT data will result in massive amounts of data needing to be stored. However, with the rapid development of IoT devices and ongoing business model transformation, we are not able to predict the volume and growth of IoT data. And with the lack of IoT history, traditional methods of IT and infrastructure planning based on the past do not app...
For far too long technology teams have lived in siloes. Not only physical siloes, but cultural siloes pushed by competing objectives. This includes informational siloes where business users require one set of data and tech teams require different data. DevOps intends to bridge these gaps to make tech driven operations more aligned and efficient.
For organizations that have amassed large sums of software complexity, taking a microservices approach is the first step toward DevOps and continuous improvement / development. Integrating system-level analysis with microservices makes it easier to change and add functionality to applications at any time without the increase of risk. Before you start big transformation projects or a cloud migration, make sure these changes won’t take down your entire organization.
It is ironic, but perhaps not unexpected, that many organizations who want the benefits of using an Agile approach to deliver software use a waterfall approach to adopting Agile practices: they form plans, they set milestones, and they measure progress by how many teams they have engaged. Old habits die hard, but like most waterfall software projects, most waterfall-style Agile adoption efforts fail to produce the results desired. The problem is that to get the results they want, they have to ch...
Organizations planning enterprise data center consolidation and modernization projects are faced with a challenging, costly reality. Requirements to deploy modern, cloud-native applications simultaneously with traditional client/server applications are almost impossible to achieve with hardware-centric enterprise infrastructure. Compute and network infrastructure are fast moving down a software-defined path, but storage has been a laggard. Until now.
Without a clear strategy for cost control and an architecture designed with cloud services in mind, costs and operational performance can quickly get out of control. To avoid multiple architectural redesigns requires extensive thought and planning. Boundary (now part of BMC) launched a new public-facing multi-tenant high resolution monitoring service on Amazon AWS two years ago, facing challenges and learning best practices in the early days of the new service.
Digital Transformation is much more than a buzzword. The radical shift to digital mechanisms for almost every process is evident across all industries and verticals. This is often especially true in financial services, where the legacy environment is many times unable to keep up with the rapidly shifting demands of the consumer. The constant pressure to provide complete, omnichannel delivery of customer-facing solutions to meet both regulatory and customer demands is putting enormous pressure on...
The best way to leverage your CloudEXPO | DXWorldEXPO presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering CloudEXPO | DXWorldEXPO will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at CloudEXPO. Product announcements during our show provide your company with the most reach through our targeted audienc...
DXWorldEXPO LLC announced today that All in Mobile, a mobile app development company from Poland, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. All In Mobile is a mobile app development company from Poland. Since 2014, they maintain passion for developing mobile applications for enterprises and startups worldwide.
With 10 simultaneous tracks, keynotes, general sessions and targeted breakout classes, @CloudEXPO and DXWorldEXPO are two of the most important technology events of the year. Since its launch over eight years ago, @CloudEXPO and DXWorldEXPO have presented a rock star faculty as well as showcased hundreds of sponsors and exhibitors!
JETRO showcased Japan Digital Transformation Pavilion at SYS-CON's 21st International Cloud Expo® at the Santa Clara Convention Center in Santa Clara, CA. The Japan External Trade Organization (JETRO) is a non-profit organization that provides business support services to companies expanding to Japan. With the support of JETRO's dedicated staff, clients can incorporate their business; receive visa, immigration, and HR support; find dedicated office space; identify local government subsidies; get...
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Both SaaS vendors and SaaS buyers are going “all-in” to hyperscale IaaS platforms such as AWS, which is disrupting the SaaS value proposition. Why should the enterprise SaaS consumer pay for the SaaS service if their data is resident in adjacent AWS S3 buckets? If both SaaS sellers and buyers are using the same cloud tools, automation and pay-per-transaction model offered by IaaS platforms, then why not host the “shrink-wrapped” software in the customers’ cloud? Further, serverless computing, cl...
All organizations that did not originate this moment have a pre-existing culture as well as legacy technology and processes that can be more or less amenable to DevOps implementation. That organizational culture is influenced by the personalities and management styles of Executive Management, the wider culture in which the organization is situated, and the personalities of key team members at all levels of the organization. This culture and entrenched interests usually throw a wrench in the work...