Learning/DesignPatterns

Design Patterns implemented in Swift 5.0 A short cheat-sheet with Xcode 10.2 Playground (Design-Patterns.playground.zip). πŸ‡¨πŸ‡³δΈ­ζ–‡η‰ˆ πŸ‘· Project started by: @nsmeme (Oktawian Chojnacki) πŸ‘· δΈ­ζ–‡η‰ˆη”± @binglogo (棒棒彬) 整理翻译。 πŸš€ How to generate README, Playground and zip from source: GENERATE.md print("Welcome!") Table of Contents Behavioral Creational Structural 🐝 Chain Of Responsibility 🌰 Abstract Factory πŸ”Œ Adapter πŸ‘« Command πŸ‘· Builder πŸŒ‰ Bridge 🎢 Interpreter 🏭 Factory Method 🌿 Composite 🍫 Iterator πŸ”‚ Monostate 🍧 Decorator πŸ’ Mediator πŸƒ Prototype 🎁 FaΓ§ade πŸ’Ύ Memento πŸ’ Singleton πŸƒ Flyweight πŸ‘“ Observer β˜” Protection Proxy πŸ‰ State 🍬 Virtual Proxy πŸ’‘ Strategy πŸƒ Visitor πŸ“ Template Method Behavioral In software engineering, behavioral design patterns are design patterns that identify common communication patterns between objects and realize these patterns....

January 15, 2025

SOLID

SOLID: The First 5 Principles of Object Oriented Design | DigitalOcean #weblinks Dependency Inversion Principle Entities must depend on abstractions, not on concretions. It states that the high-level module must not depend on the low-level module, but they should depend on abstractions. The Dependency Inversion Principle is a software design principle that states that high-level modules should not depend on low-level modules. Instead, both should depend on abstractions. This allows for greater flexibility and maintainability of the code....

January 15, 2025

Learning/Architecture

iOS Architecture Analytics Architecture MVVM The MVVM (Model-View-ViewModel) architecture is a design pattern that is used to structure the code in iOS apps. It is similar to the MVC (Model-View-Controller) architecture, but it introduces a new component called the ViewModel. The ViewModel is responsible for exposing data to the View and facilitating communication between the Model and the View. One of the main benefits of using MVVM is that it helps to separate the business logic of an app from the user interface, which makes it easier to develop and maintain the app over time....

January 22, 2023