awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjektÜber unsHow we rankPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

24 Repos

Awesome GitHub RepositoriesPolymorphism Patterns

Techniques and abstractions for implementing polymorphic behavior across disparate data types.

Distinguishing note: Focuses on architectural patterns for dispatch rather than specific language implementations.

Explore 24 awesome GitHub repositories matching software engineering & architecture · Polymorphism Patterns. Refine with filters or upvote what's useful.

Awesome Polymorphism Patterns GitHub Repositories

Finde die besten Repos mit KI.Wir suchen mit KI nach den am besten passenden Repositories.
  • ryanmcdermott/clean-code-javascriptAvatar von ryanmcdermott

    ryanmcdermott/clean-code-javascript

    94,454Auf GitHub ansehen↗

    This project is a collection of engineering guidelines and best practices for writing readable and maintainable JavaScript source code. It serves as a clean code guide and refactoring manual to help developers improve the structure of their codebases. The repository provides a reference for applying SOLID principles to reduce coupling and enable extensions without modifying existing logic. It includes a naming convention standard for using explicit, searchable identifiers and a guide for asynchronous patterns to replace nested callbacks with clearer execution flows. The guidelines cover soft

    Demonstrates how to replace complex conditional logic with polymorphic object-oriented patterns.

    JavaScriptbest-practicesclean-architectureclean-code
    Auf GitHub ansehen↗94,454
  • elixir-lang/elixirAvatar von elixir-lang

    elixir-lang/elixir

    26,543Auf GitHub ansehen↗

    Elixir is a functional, concurrent programming language designed for building scalable and maintainable applications. It operates on the Erlang virtual machine, leveraging a distributed, fault-tolerant runtime environment that manages lightweight processes to ensure system reliability. By utilizing an actor-model supervision strategy, the language enables the creation of high-concurrency backend systems that automatically recover from failures and maintain stability under heavy loads. The language distinguishes itself through a powerful metaprogramming environment that allows developers to ex

    Implements flexible interface definitions that allow different data types to share common behaviors without requiring complex class hierarchies.

    Elixir
    Auf GitHub ansehen↗26,543
  • flutter-team-archive/pluginsAvatar von flutter-team-archive

    flutter-team-archive/plugins

    17,710Auf GitHub ansehen↗

    This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies. The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu

    Provides unified interfaces that map to concrete native implementations across different operating systems.

    Dartandroiddartflutter
    Auf GitHub ansehen↗17,710
  • piotrplenik/clean-code-phpAvatar von piotrplenik

    piotrplenik/clean-code-php

    12,455Auf GitHub ansehen↗

    This project is a PHP clean code guide and software architecture reference. It provides a set of standards, naming conventions, and design patterns intended to improve the long-term maintainability and readability of PHP codebases. The guide emphasizes a structured approach to refactoring and system design, focusing on the application of SOLID principles to reduce coupling and increase extensibility. It advocates for object-oriented design through the use of composition over inheritance, the use of final classes to prevent unexpected overrides, and the implementation of strict type declaratio

    Demonstrates how to replace complex conditional blocks with polymorphic class implementations to reduce cognitive load.

    PHP
    Auf GitHub ansehen↗12,455
  • didi/chameleonAvatar von didi

    didi/chameleon

    8,966Auf GitHub ansehen↗

    Chameleon is a cross-platform application framework and component library used to develop applications for the web and various mini-app platforms from a single shared codebase. It functions as a multi-platform build pipeline that compiles source code into different target formats while providing an MVVM-based user interface system for managing application state. The framework employs a polymorphic protocol to extend custom components and APIs, allowing for platform-specific implementations while maintaining cross-end compatibility. It includes a specialized build tool for static analysis that

    Employs a polymorphic protocol to map unified component and API interfaces to platform-specific implementations.

    JavaScript
    Auf GitHub ansehen↗8,966
  • react-native-image-picker/react-native-image-pickerAvatar von react-native-image-picker

    react-native-image-picker/react-native-image-picker

    8,637Auf GitHub ansehen↗

    react-native-image-picker is a cross-platform mobile media picker used to select images and videos from a system gallery or capture new media via the device camera. It serves as a native device camera interface and a mobile gallery file picker for accessing local storage. The library includes a media metadata extractor to retrieve technical details from selected files, such as image dimensions, file size, video duration, and EXIF data. The project provides a bridge between JavaScript and native mobile operating systems to trigger system-provided gallery and camera interfaces. It handles the

    Maintains platform-specific implementations for Android and iOS that map to a unified JavaScript interface.

    Javaimage-pickerpickerreact-native
    Auf GitHub ansehen↗8,637
  • software-mansion/react-native-svgAvatar von software-mansion

    software-mansion/react-native-svg

    7,990Auf GitHub ansehen↗

    This project is a graphics library for React Native that provides a cross-platform vector rendering engine. It maps SVG XML elements to native graphics APIs, allowing for the creation of scalable shapes and custom illustrations that maintain visual consistency across mobile and web environments. The library functions as a mapper that converts standard SVG markup into declarative component structures. It enables the creation of interactive vector interfaces by providing components that can detect and respond to user touch events. Its capability surface includes drawing basic geometric primiti

    Renders vector data through different host implementations for mobile and web to ensure consistent visual output.

    TypeScript
    Auf GitHub ansehen↗7,990
  • wbt5/real-urlAvatar von wbt5

    wbt5/real-url

    7,813Auf GitHub ansehen↗

    real-url is a multi-platform stream resolver and data extraction tool. It functions as a live streaming URL extractor that retrieves direct HLS and m3u8 stream addresses and a live chat data scraper for fetching real-time bullet-chat messages and metadata from various broadcasting platforms. The project converts platform-specific room identifiers into authenticated media playback links across dozens of services. It includes an HLS stream link parser capable of extracting secure media addresses and the signature tokens required for high-bitrate playback. The system manages stream quality by s

    Implements unique extraction routines for different streaming services to handle varying API responses and formats.

    Pythonbilibilidanmudouyin
    Auf GitHub ansehen↗7,813
  • matthew-andrews/isomorphic-fetchAvatar von matthew-andrews

    matthew-andrews/isomorphic-fetch

    6,913Auf GitHub ansehen↗

    isomorphic-fetch is a cross-runtime fetch API and isomorphic HTTP client that provides a standardized request interface across different JavaScript environments. It functions as a WHATWG fetch polyfill, ensuring that network request logic behaves identically in both web browsers and Node.js. The project enables universal JavaScript development by allowing a single codebase to perform HTTP requests without environment-specific code. It integrates the fetch interface into Node.js and supports application bundling for the browser.

    Implements a unified interface that maps to platform-specific implementations to ensure WHATWG specification compliance.

    JavaScript
    Auf GitHub ansehen↗6,913
  • bogdan-lyashenko/under-the-hood-reactjsAvatar von Bogdan-Lyashenko

    Bogdan-Lyashenko/Under-the-hood-ReactJS

    6,835Auf GitHub ansehen↗

    This project is a technical breakdown and implementation of a user interface framework's internal architecture, focusing specifically on the mechanics of the virtual DOM, reconciliation, and component lifecycles. It serves as a resource for understanding how a core logic layer manages the transition from high-level component descriptions to physical browser elements. The project distinguishes itself by providing detailed visualizations, including flowcharts and block schemes, to map the reconciliation process and code execution paths. It explores how a platform-agnostic core can be adapted fo

    Uses platform-specific injectors to map unified core logic to concrete environment implementations.

    JavaScriptdebuggingfiberflow
    Auf GitHub ansehen↗6,835
  • react-native-device-info/react-native-device-infoAvatar von react-native-device-info

    react-native-device-info/react-native-device-info

    6,672Auf GitHub ansehen↗

    This is a cross-platform mobile device information library for iOS and Android applications. It provides utilities to retrieve hardware specifications, operating system details, and unique device identifiers. The project specializes in unique device identification by providing hardware, software, and installation IDs, serial numbers, and build fingerprints. It also includes environment detection to distinguish between physical devices, emulators, and tablets. The library covers a broad range of system introspection capabilities, including application metadata retrieval, hardware specificatio

    Executes distinct source code paths for iOS and Android to access proprietary system APIs and identifiers.

    TypeScripthacktoberfestreact-native
    Auf GitHub ansehen↗6,672
  • rebeccahughes/react-native-device-infoAvatar von rebeccahughes

    rebeccahughes/react-native-device-info

    6,669Auf GitHub ansehen↗

    This project is a cross-platform mobile device information library designed to retrieve hardware, software, and network specifications from iOS and Android devices. It serves as a tool for accessing unique device identifiers, hardware models, and processor architectures to distinguish individual mobile devices. The library provides specialized capabilities for mobile hardware identification and operating system metadata retrieval, including build numbers and API levels. It also functions as a system state monitor for real-time tracking of battery levels, charging status, and network connectiv

    Implements unified interfaces that map to platform-specific Java and Objective-C code for accessing device details.

    TypeScript
    Auf GitHub ansehen↗6,669
  • rust-lang/rfcsAvatar von rust-lang

    rust-lang/rfcs

    6,406Auf GitHub ansehen↗

    The Rust RFCs repository is the formal home for the Rust language evolution process, housing the structured design documents and community review mechanisms that govern changes to the Rust programming language, its compiler, and its standard library. It defines the complete lifecycle for proposing, discussing, and implementing substantial changes through RFC documents, from initial submission and community feedback through final comment periods and sub-team sign-offs. The repository codifies the governance and collaboration processes that shape Rust's development, including mechanisms for com

    Documents the platform-specific symlink creation API in Rust's standard library.

    Markdownrfcrfc-processrust
    Auf GitHub ansehen↗6,406
  • ivpusic/react-native-image-crop-pickerAvatar von ivpusic

    ivpusic/react-native-image-crop-picker

    6,349Auf GitHub ansehen↗

    react-native-image-crop-picker is a cross-platform mobile image picker for selecting, cropping, and capturing images and videos from a device gallery or camera. It serves as a bridge to access the mobile camera and photo library to upload media files into an application. The library provides integrated tools for media cropping and compression, allowing images to be resized to specific dimensions or aspect ratios. It supports a unified workflow where images can be cropped immediately during the selection process. Capability areas include camera media capture, gallery media selection for singl

    Implements separate native logic in Swift, Objective-C, Java, and Kotlin to handle OS-specific media workflows.

    Objective-C
    Auf GitHub ansehen↗6,349
  • soffes/samkeychainAvatar von soffes

    soffes/SAMKeychain

    5,368Auf GitHub ansehen↗

    SAMKeychain ist ein Objective-C Keychain-Manager, der eine programmatische Schnittstelle zum Erstellen, Lesen und Löschen sicherer Anmeldeinformationen bietet, die im macOS- und iOS-System-Keychain gespeichert sind. Er dient als leichtgewichtiger Wrapper zur Verwaltung von Passwörtern und sensiblen Daten auf Apple-Plattformen. Das Projekt bietet eine einheitliche API, die die Implementierungsunterschiede zwischen macOS und iOS abstrahiert. Es umschließt Low-Level-C-APIs in Objective-C-Klassen, um eine objektorientierte Schnittstelle für die Interaktion mit dem System-Sicherheits-Daemon bereitzustellen. Die Bibliothek deckt die sichere Speicherung von Anmeldeinformationen und Zugriffskontrolle ab, einschließlich der Möglichkeit, Kontopasswörter und Authentifizierungs-Token in verschlüsseltem persistentem Speicher zu speichern, abzurufen und zu löschen.

    Provides a unified API that abstracts the implementation differences between macOS and iOS keychain services.

    Objective-Ciosmacosobjective-c
    Auf GitHub ansehen↗5,368
  • soffes/sskeychainAvatar von soffes

    soffes/sskeychain

    5,368Auf GitHub ansehen↗

    sskeychain ist eine Objective-C-Bibliothek, die eine vereinfachte Programmierschnittstelle zur Verwaltung sicherer Datenpersistenz auf iOS und macOS bietet. Sie dient als objektorientierter Wrapper für das Apple Security Framework und ermöglicht das Speichern und Abrufen von Passwörtern und Anmeldeinformationen. Die Bibliothek handhabt die Übersetzung zwischen Low-Level-System-APIs und High-Level-Objektschnittstellen zur Verwaltung sensibler Informationen. Sie enthält Mechanismen zur Definition von Zugriffsebenen für Keychain-Elemente, um zu steuern, wann gespeicherte Daten für eine Anwendung verfügbar sind. Das Projekt bietet eine gemeinsame Schnittstelle zur Verwaltung verschlüsselter Anmeldeinformationsspeicher über mobile und Desktop-Apple-Plattformen hinweg. Dies umfasst Unterstützung für attributbasierte Abfragelogik zum Filtern und Abrufen spezifischer Elemente aus dem Systemdatenspeicher.

    Provides a unified interface that maps to different keychain implementation details across iOS and macOS.

    Objective-C
    Auf GitHub ansehen↗5,368
  • c3lang/c3cAvatar von c3lang

    c3lang/c3c

    5,147Auf GitHub ansehen↗

    c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte

    Maintains collections of values implementing specific interfaces for runtime polymorphic programming.

    C3c3compilerlanguage
    Auf GitHub ansehen↗5,147
  • zoontek/react-native-permissionsAvatar von zoontek

    zoontek/react-native-permissions

    4,370Auf GitHub ansehen↗

    react-native-permissions ist eine plattformübergreifende Berechtigungsbibliothek, die eine einheitliche Schnittstelle zum Anfordern und Überprüfen von Systemberechtigungen unter iOS, Android und Windows bietet. Sie fungiert als Manager für Berechtigungsstatus und Auditor für Gerätefunktionen, um festzustellen, ob der Zugriff auf sensible Daten oder Hardware gewährt, verweigert oder blockiert ist. Das Projekt enthält einen Medienzugriffs-Controller, um den eingeschränkten Zugriff auf Fotos und Kontakte über systemeigene Picker zu handhaben. Es verfügt zudem über einen Systemeinstellungen-Integrator, der Benutzer zu den Geräteeinstellungsseiten leitet, um Anwendungs- und Benachrichtigungsberechtigungen manuell umzuschalten. Die Bibliothek deckt ein breites Spektrum an Zugriffskontrollfunktionen ab, einschließlich der Überprüfung der Standortgenauigkeit, der Verwaltung von Benachrichtigungsberechtigungen und der Möglichkeit, Benutzer mit Begründungen zur Berechtigungserteilung aufzufordern. Unter Android bietet sie spezifische Dienstprogramme für das Auditieren von Systemfunktionen wie exakte Alarme und Vollbild-Intents.

    Provides a unified interface that maps to platform-specific native implementations on iOS, Android, and Windows.

    Objective-C++authorizationpermissionsreact
    Auf GitHub ansehen↗4,370
  • mouredev/hello-javaAvatar von mouredev

    mouredev/hello-java

    4,304Auf GitHub ansehen↗

    Dieses Projekt ist eine Sammlung von Lehrmaterialien und Lehrplänen, die darauf ausgelegt sind, die Sprache Java zu vermitteln. Es bietet einen strukturierten Programmierkurs, einen Grundlagenleitfaden und ein Tutorial zur objektorientierten Programmierung, unterstützt durch eine Reihe praktischer Programmierübungen und Implementierungsaufgaben. Der Lehrplan konzentriert sich auf die Implementierung objektorientierter Muster, einschließlich Vererbung, Polymorphismus und Abstraktion. Er deckt die Erstellung von Klassen, die Verwendung von Interfaces zur Definition von Verhaltensverträgen und die Anwendung von Zugriffsmodifikatoren zur Steuerung der Datensichtbarkeit ab. Die Bildungsinhalte umfassen zudem Sprachgrundlagen wie Variablenverwaltung, bedingte Logik und iterative Schleifen. Es enthält Anleitungen zur Verwaltung von Datenstrukturen durch Listen, Sets und Maps sowie zur Implementierung der Fehlerbehandlung mittels Try-Catch-Blöcken und benutzerdefinierten Exceptions. Zusätzliche Themen behandeln String-Manipulation und die Verwendung von Scannern für Benutzereingaben über die Konsole.

    Teaches how to manage different subclass instances through a single base type to invoke shared methods.

    Javacursojavapoo
    Auf GitHub ansehen↗4,304
  • troessner/reekAvatar von troessner

    troessner/reek

    4,126Auf GitHub ansehen↗

    Reek ist ein statischer Code-Analysator für Ruby-Projekte, der Designfehler und Wartbarkeitsprobleme, sogenannte Code Smells, identifiziert. Er fungiert als Qualitätssicherungstool, das den Quellcode ohne Ausführung auf strukturelle Schwächen und technische Schulden untersucht. Der Analysator erkennt spezifische Muster wie zu große Klassen, zu lange Methoden und unklare Benennungen. Zudem identifiziert er komplexere Designprobleme, darunter Feature Envy, Data Clumps, simulierte Polymorphie und Control Coupling. Das Tool umfasst Funktionen für Issue-Baselining zur Verwaltung von Legacy-Code sowie konfigurationsbasiertes Filtern zum Ausschluss bestimmter Verzeichnisse. Es unterstützt automatisierte Qualitätsprüfungen in CI-Pipelines und liefert Analyseberichte in Formaten wie JSON, YAML, XML und HTML.

    Identifies case statements and repetitive conditionals where polymorphism should replace manual dispatch.

    Ruby
    Auf GitHub ansehen↗4,126
Vorherige12Nächste
  1. Home
  2. Software Engineering & Architecture
  3. Polymorphism Patterns

Unter-Tags erkunden

  • Cross-Platform View ProjectionsMechanisms that ensure consistent visual output by projecting vector data through different platform-specific host implementations. **Distinct from Platform-Specific API Implementations:** Focuses on consistent visual projection across mobile/web rather than just API implementation abstraction
  • Interface-Based Polymorphic CollectionsCollections that store multiple types sharing a common interface for polymorphic dispatch. **Distinct from Polymorphism Patterns:** Distinct from general Polymorphism Patterns by implementing a specific collection type (list) for interface-based values.
  • Platform-Specific API Implementations1 Sub-TagUnified interfaces that map to different concrete implementations based on the target platform. **Distinct from Polymorphism Patterns:** Focuses on cross-platform API abstraction rather than general polymorphism patterns.
  • Simulated Polymorphism DetectorsAnalyzers that detect case statements and repetitive conditionals where a polymorphic design would be more appropriate. **Distinct from Polymorphism Patterns:** Identifies the lack of polymorphism (a smell) rather than providing patterns to implement it.