Implementing a Singleton Class in Swift

The Singleton design pattern guarantees that only on object of a class will exist in a system.

// Creating Singleton
// Only one instance of this class can be created
class CloudCodeExecutor {

    // Declare class instance property
    static let sharedInstance = CloudCodeExecutor()
   
    // Declare an initializer 
    // Because this class is singleton only one instance of this class can be created
    init() {
        print("CloudCodeExecutor has been initialized")
    }

    // Add a function
    func processCloudCodeOperation() {
        print("Started processing cloud code operation")

        // Your other code here
    }
}


// Call function of Singleton class
CloudCodeExecutor.sharedInstance.processCloudCodeOperation()

// Call cloud code operation function again
CloudCodeExecutor.sharedInstance.processCloudCodeOperation()

// And again to see that class initializer was called only once
CloudCodeExecutor.sharedInstance.processCloudCodeOperation()

Learn iOS Development with these Video Courses


How to Make a Freaking iPhone App - iOS 10 and Swift 3
icon icon


iOS 10 & Swift 3: From Beginner to Paid Professional
icon


The Complete iOS 10 Developer Course - Build 21 Apps
icon


Swift 3 - Learn to Code with Apple's New Language
icon icon


Learn How to Build Mobile Apps for iOS with Swift, PHP and MySQL
icon icon

Follow me on one of your favourite social networks to learn about new video tutorials and code examples:

Twitter: @SwiftVideoBlog
Google Plus: https://plus.google.com/+SergeyKargopolov/posts
Facebook: Swift Developer Blog on Facebook