Adapter Pattern vs. Bridge Pattern

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • Cloudways - Managed Cloud Hosting Platform
  • Scout APM - Less time debugging, more time building
  • SonarQube - Static code analysis for 29 languages.
  • JetBrains - Developer Ecosystem Survey 2022
  • iterator-functions

    A package that provides `array_*` like functions for iterators.

    To make it a bit easier working with the Iterators, I'll be using the iterator_map() function from my doekenorg/iterator-functions package.

  • cache

    [READ ONLY] Subtree split of the Illuminate Cache component (see laravel/framework) (by illuminate)

    Most frameworks have a caching system that has a single API for working with it, while providing adapters for different implementations, like: redis, memcache or a filesystem cache. Laravel calls these adapters a Store and you can find these stores in illuminate/cache. They provide the Target interface for such a store in the illuminate/contracts repository.

  • Cloudways

    Managed Cloud Hosting Platform. Cloudways leverages advanced technology and powerful servers. Cloudways is a one-click managed cloud hosting platform that provides cloud application and server management solutions.

  • contracts

    [READ ONLY] Subtree split of the Illuminate Contracts component (see laravel/framework)

    Most frameworks have a caching system that has a single API for working with it, while providing adapters for different implementations, like: redis, memcache or a filesystem cache. Laravel calls these adapters a Store and you can find these stores in illuminate/cache. They provide the Target interface for such a store in the illuminate/contracts repository.

  • Flysystem

    Abstraction for local and remote filesystems

    Another common thing is to write data to files. Files that may be located somewhere else, like: an FTP server, a Dropbox folder or Google Drive. One of the most used packages for writing data to files is thephpleague/flysystem. This packages provides a FilesystemAdapter interface that can have specific implementations. And because of this Target interface, others can build 3rd-party packages that provide another Filesystem; like: spatie/flysystem-dropbox by Spatie.

  • flysystem-dropbox

    A flysystem driver for Dropbox that uses the v2 API

    Another common thing is to write data to files. Files that may be located somewhere else, like: an FTP server, a Dropbox folder or Google Drive. One of the most used packages for writing data to files is thephpleague/flysystem. This packages provides a FilesystemAdapter interface that can have specific implementations. And because of this Target interface, others can build 3rd-party packages that provide another Filesystem; like: spatie/flysystem-dropbox by Spatie.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts