Objective-C lacks one very important feature: Generics. Luckily, Swift has this feature. Generics enable you to declare functions, classes and structs that work with different types.
In Swift there are two types of values: constants and variables. This is very common for a programming language – however, there is one important difference in using constants in Swift.
Encapsulation is one of the most important object-oriented design principles: It hides the internal states and functionality of objects. You can achieve this by using the access control features of Swift. Why is access control important? As said before, access control is the most important way to achieve a good encapsulation. If your code is good encapsulated… Continue reading Swift: Access Control
An enum is a data type that has a finite set of possible values. In this post we discuss will the most important aspects of enums in Swift.
Every variable can be declared as a so-called optional in Swift. As an optional, the variable is allowed to become nil what is equivalent to the absence of a value.
Swift 2.0 has a new way of error handling. It uses a do-try-catch syntax, which is the replacement for NSError . In this post we will discuss how to use this new syntax.
Some people love it, some people hate it – but in the end everybody uses it: the singleton pattern. It is used if just one instance of an object is desired. For example, that could be a database connection.
One year ago Apple introduced Swift, which was a very surprising move. What remains after one year?
defer is another new keyword in Swift. With this statement you can declare clean-up code, that is executed just before the current scope ends. For example, this scope can be a function or a loop.
In Swift 2, there is a new keyword for handling the control-flow of a block of code. It guarantees, that a specific condition holds true for the further code. Otherwise, it ensures that the following code will not be executed. Let us start with a simple example. Imagine you have a function, that has an optional… Continue reading Swift 2: guard