Saturday, April 19, 2025
HomeiOS DevelopmentEvaluating manufacturing unit design patterns - The.Swift.Dev.

Evaluating manufacturing unit design patterns – The.Swift.Dev.



· 1 min learn


Be taught what is the distinction between static manufacturing unit, easy manufacturing unit, manufacturing unit methodology and summary manufacturing unit utilizing the Swift language.

I believed that I’d be good to have a summarized comparability between all of the manufacturing unit patterns, so right here it’s every part that you need to find out about them. Setting up them is comparatively easy, on this instance I’m going to make use of some UIColor magic written within the Swift programming language to point out you the fundamentals. 🧙‍♂️

Static manufacturing unit

  • no separate manufacturing unit class
  • named static methodology to initialize objects
  • can have cache & can return subtypes
extension UIColor {
    static var major: UIColor { return .black }
    static var secondary: UIColor { return .white }
}

let major = UIColor.major
let secondary = UIColor.secondary

Easy manufacturing unit

  • one manufacturing unit class
  • change case objects inside it
  • encapsulates various code
  • if record is just too huge use manufacturing unit methodology as a substitute
class ColorFactory {
    enum Model {
        case major
        case secondary
    }

    func create(_ model: Model) {
        change model
        case .major:
            return .black
        case .secondary:
            return .white
    }
}
let manufacturing unit = ColorFactory()
let major = manufacturing unit.create(.major)
let secondary = manufacturing unit.create(.secondary)

Manufacturing facility methodology

  • a number of (decoupled) manufacturing unit lessons
  • per-instance manufacturing unit methodology
  • create a easy protocol for manufacturing unit
protocol ColorFactory {
    func create() -> UIColor
}

class PrimaryColorFactory: ColorFactory {
    func create() -> UIColor {
        return .black
    }
}

class SecondaryColorFactory: ColorFactory {
    func create() -> UIColor {
        return .white
    }
}

let primaryColorFactory = PrimaryColorFactory()
let secondaryColorFactory = SecondaryColorFactory()
let major = primaryColorFactory.create()
let secondary = secondaryColorFactory.create()

Summary manufacturing unit

  • combines easy manufacturing unit with manufacturing unit methodology
  • has a worldwide impact on the entire app
// very same manufacturing unit methodology sample from above
protocol ColorFactory {
    func create() -> UIColor
}

class PrimaryColorFactory: ColorFactory {
    func create() -> UIColor {
        return .black
    }
}

class SecondaryColorFactory: ColorFactory {
    func create() -> UIColor {
        return .white
    }
}

// easy manufacturing unit sample from above utilizing the manufacturing unit strategies
class AppColorFactory: ColorFactory {

    enum Theme {
        case darkish
        case mild
    }

    func create(_ theme: Theme) -> UIColor {
        change theme {
        case .darkish:
            return PrimaryColorFactory().create()
        case .mild:
            return SecondaryColorFactory().create()
        }
    }
}

let manufacturing unit = AppColorFactory()
let primaryColor = manufacturing unit.create(.darkish)
let secondaryColor = manufacturing unit.create(.mild)

So these are all of the manufacturing unit patterns utilizing sensible actual world examples written in Swift. I hope my sequence of articles will make it easier to to achieve a greater understanding. 👍

Associated posts


· 1 min learn


Be taught what is the distinction between static manufacturing unit, easy manufacturing unit, manufacturing unit methodology and summary manufacturing unit utilizing the Swift language.

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments