What is a computed property
Classes, Structures and Enums may define a computed property.
It is a property that does not store value, instead it defines getter and setter to retrieve and set other properties and values indirectly. Continue reading “How to create a Computed property in Swift”
What are Any and AnyObject
Any and AnyObject are special types for working with nonspecific types.
Using Any and AnyObject is not recommended and it is always better to be specific about the types you work with. Continue reading “What is the difference between Any and AnyObject in Swift”
How to use as! and as? for downcasting and what are the differences between them
What is Downcasting ?
Behind the scenes a variable or constant of a class type may be a subclass of another class type.
For example a variable of type Any may be referring to a String. Continue reading “Downcasting using as! and as? in Swift”
Example of using throws and do-catch and try to handle errors in Swift
Throwing functions in Swift
To indicate that a function can throw error you just add the word “throws” after its parameters and before its return type.
It is then called a throwing function. Continue reading “Error handling using throws and do-catch in Swift”
In fact Array and Dictionary are generic collections, this is why you can create an Array of Int , String or any other type
What are Generics
Generics are one of the most powerful features of Swift, It allows you to create flexible Functions and Types that can work with any type.
If you used Array or Dictionary before in Swift then you already knows about Generics.
In fact Array and Dictionary are generic collections, this is why you can create an Array of Int , String or any other type and the same with Dictionary. Continue reading “What exactly are Generics”
Also called Type Properties
What is Static property
We all know Instance Properties that belong to an instance of type and every time you create an instance of that type it has its own property value. Continue reading “Static properties in Swift”
Learn about private, fileprivate, public and internal
Use it to restrict access to parts of your code from code in another modules or files.
You can assign access levels to Classes, Structs, Enumerations in addition to their Properties, Initializers, Methods and Subscripts. Continue reading “Access control in Swift”
Easily detect the absence of value in variable or constant using Optionals
Optional is an enum that has 2 states, the first state is where there is a value and that value is of some type for example Int, and the other state is nil where there is no value at all. Continue reading “Optionals in Swift”
Observe and respond to property changes
What is Property Observer
Property Observer observe and respond to changes in property’s value.
It is called every time a property’s value is set, even if the new value is the same as the old value. Continue reading “Property Observer in Swift”
By default function parameters are constants in Swift.
If you attempt to change a parameter within a function you will get a compiler error.
To Solve this issue and enable a function to have an effect outside its scope we should use In-Out parameters. Continue reading “In-Out parameters in Swift”