SWPatterns.com
Home
Patterns
Languages
Contribute
  • Strategy - Dart

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. This example demonstrates the Strategy pattern by defining different shipping cost calculation strategies (Standard, Express, Overnight). …

    Read More
  • Strategy - Scala

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. This example demonstrates using traits in Scala to define different shipping cost calculation strategies. The ShippingCostCalculator …

    Read More
  • Strategy - PHP

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. This implementation uses an interface PaymentStrategy to define a common method for making payments. Concrete strategies like …

    Read More
  • Strategy - Ruby

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. Here, we define different shipping cost calculation strategies (e.g., for ground, air). The ShippingContext class accepts a strategy …

    Read More
  • Strategy - Swift

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. In this Swift implementation, we define a protocol SortingStrategy with a single method sort. Different concrete strategies like …

    Read More
  • Strategy - Kotlin

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from clients that use it. In this Kotlin example, we use a functional approach with function types to define different shipping strategies (e.g., ground, air). The …

    Read More
  • Strategy - Rust

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. Here, we define a trait CompressionStrategy representing the compression algorithms. Concrete strategies like ZipCompression and …

    Read More
  • Strategy - Go

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It lets you vary an algorithm independently from clients that use it. This implementation uses interfaces to define the strategy (a ShippingMethod interface with a CalculateCost method). Concrete strategies …

    Read More
  • Strategy - C

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows selecting an algorithm at runtime without modifying the client code. This implementation achieves this by defining a function pointer type Operation representing the strategy. Different operation …

    Read More
  • Strategy - C++

    The Strategy pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. It allows an algorithm to vary independently from the clients that use it. This is achieved by having a context class that holds a strategy object and delegates work to it.

    The C++ code implements this using an …

    Read More
    • ««
    • «
    • 1
    • 2
    • »
    • »»

Recent Posts

  • Retry with Backoff
  • Master-Slave
  • Health Check Endpoint
  • Null Object
  • Load Shedding
  • Service Discovery
  • Resequencer
  • Outbox Pattern

C 56 C++ 56 C_SHARP 56 GO 56 JAVA 56 JAVASCRIPT 56 KOTLIN 56 PYTHON 56 RUST 56 DART 55 PHP 55 RUBY 55 SCALA 55 SWIFT 55 TYPESCRIPT 55

BEHAVIORAL 147 ARCHITECTURAL 37 DDD 33 CONCURRENCY 26 INTEGRATION 21 CREATIONAL 18 DISTRIBUTED SYSTEMS 15 GOF 15 STRUCTURAL 13 RELIABILITY 10 SCALABILITY 10 PERFORMANCE 9 RESILIENCE 9 MICROSERVICES 7 OBSERVABILITY 6 MESSAGING 5 OPERATIONAL 5 DATA ACCESS 4 DEPLOYMENT 4 WEB 4 BEST PRACTICE 3 CLOUD 3 DATA 3 INFRASTRUCTURE 3 PRESENTATION 3 SECURITY 3 ARCHITECTURE 2 ASYNCHRONOUS 2 COMMUNICATION 2 DATA PROCESSING 2 DESIGN PATTERNS 2 DISTRIBUTED 2 DISTRIBUTED SYSTEM 2 EVENT-DRIVEN 2 FUNCTIONAL 2 IDIOMATIC 2 OBJECT-ORIENTED 2 ORM 2 SYSTEM 2 UI 2 AI 1 ANTI_PATTERN 1 AUTOMATION 1 CACHING 1 COLLABORATION 1 CONCURRENT 1 CQRS 1 CROSS-CUTTING 1 DATA MODELING 1 DATABASE 1 DESIGN PRINCIPLES 1 DEVELOPMENT 1 DEVOPS 1 DOMAIN 1 ENTERPRISE INTEGRATION 1 EXTENSIBILITY 1 FOUNDATIONAL 1 FRONTEND 1 KUBERNETES 1 LEGACY 1 LOOSELY COUPLED 1 MEMORY MANAGEMENT 1 MESSAGE 1 MESSAGE-QUEUE 1 METAPROGRAMMING 1 MIDDLEWARE 1 MONITORING 1 NETWORKING 1 OBJECT-CREATION 1 OBJECT-RELATIONAL 1 OBJECT-STRUCTURAL 1 OOA 1 OPERATIONS 1 PARALLELISM 1 PERSISTENCE 1 PROCESSING 1 REACTIVE 1 REFACTORING 1 RELEASE 1 ROBUSTNESS 1 SOFTWARE ARCHITECTURE 1 STATE 1 STATE MANAGEMENT 1 STRATEGIC 1 STRATEGIC DESIGN 1 TRADITIONAL 1 TRANSVERSAL 1 WEB APPLICATION 1

ABSTRACT FACTORY 15 ADAPTER 15 BLACKBOARD 15 BRIDGE 15 BUILDER 15 CHAIN OF RESPONSIBILITY 15 CLEAN ARCHITECTURE 15 CLIENT-SERVER 15 CLUSTER-BASED ARCHITECTURE 15 COMMAND 15 COMPOSITE 15 DECORATOR 15 DEPENDENCY INJECTION 15 EVENT-DRIVEN ARCHITECTURE 15 EXTENSION OBJECT 15 FACADE 15 FACTORY METHOD 15 HEXAGONAL ARCHITECTURE 15 INTERPRETER 15 ITERATOR 15 LAYERED ARCHITECTURE 15 LAZY INITIALIZATION 15 MASTER-SLAVE 15 MEDIATOR 15 MEMENTO 15 MESSAGE BROKER 15 MICROKERNEL 15 MICROSERVICES 15 MODULE 15 MONOLITH 15 MULTITON 15 N-TIER 15 NULL OBJECT 15 OBJECT POOL 15 OBSERVER 15 ONION ARCHITECTURE 15 PEER-TO-PEER 15 PIPES AND FILTERS 15 POLICY 15 PROTOTYPE 15 PROXY 15 PUBLISH-SUBSCRIBE 15 SELF-CONTAINED SYSTEMS 15 SERVICE LOCATOR 15 SHARED-NOTHING 15 SINGLETON 15 SNAPSHOT 15 SOA 15 SPACE-BASED ARCHITECTURE 15 SPECIFICATION 15 STATE 15 STRATEGY 15 TEMPLATE METHOD 15 VISITOR 15 FLYWEIGHT 14 SUPERVISOR-WORKER 10
SWPatterns.com

Licenza Creative Commons - Made with ❤️ in Bologna - for info contact me on GitHub or Twitter