Giter VIP home page Giter VIP logo

design-patterns-swift's Introduction

alt text

An open-source repo of design pattern implementations in Swift programming language.
All examples are located HERE. Check out the table below for convenience.

Table of Implementations

๐Ÿ‘ฎ๐Ÿผ Behavioural ๐Ÿ‘ท๐Ÿผ Creational ย  ย  ย  ๐Ÿ‘จ๐Ÿผโ€๐Ÿญ Structural ย  ๐Ÿ‘จ๐Ÿผโ€๐ŸŽ“ Non-GOF ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ฌ Functional
Chain of Responsibility Factory Method Facade Dependency Injection Functor
Strategy Abstract Factory Decorator Object Pool Applicative
Command Singleton Proxy Caching Monad
State Builder Adapter Private Class Data Callback
Observer Prototype Flyweight Delegate Factory Kit
Memento Bridge Multicast Delegate Future & Promise
Iterator Composite DataSource
Template Method Lazy Loading
Mediator Throttling
Interpreter
Visitor

Overview

Each pattern is overviewed in a separate Markdown file which contains description, structure, UML, advantages/disadvantages etc. Click on a pattern title to see more.

๐Ÿ‘ฎ๐Ÿผ Behavioural

Design patterns that identify common communication patterns between objects and realize these patterns. By doing so, these patterns increase flexibility in carrying out this communication.

Chain of Responsibility
Strategy
Command
State
Observer
Iterator
Memento
Template Method
Mediator
Interpreter
Visitor

๐Ÿ‘ท๐Ÿผ Creational

Design patterns that deal with object creation mechanisms, trying to create objects in a manner suitable to the situation.

Factory Method
Abstract Factory
Singleton
Builder
Prototype
Class Cluster

๐Ÿ‘จ๐Ÿผโ€๐Ÿญ Structural

Design patterns that ease the design by identifying a simple way to realize relationships between entities.

Facade
Decorator
Proxy
Adapter
Flyweight
Bridge
Composite

๐Ÿ‘จ๐Ÿผโ€๐ŸŽ“ Non-GOF

Design patterns that are not described in the GOF book.

Dependency Injection
Object Pool
Private Class Data
Delegate
Multicast Delegate
DataSource
Lazy Loading
Throttling

๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ฌ Functional

Design patterns that come from functional programming.

Monad
Future & Promise
Factory Kit
Callback
Functor
Applicative Functor

design-patterns-swift's People

Contributors

oleh-zayats avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.