awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

24 个仓库

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

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • ryanmcdermott/clean-code-javascriptryanmcdermott 的头像

    ryanmcdermott/clean-code-javascript

    94,454在 GitHub 上查看↗

    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
    在 GitHub 上查看↗94,454
  • elixir-lang/elixirelixir-lang 的头像

    elixir-lang/elixir

    26,543在 GitHub 上查看↗

    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
    在 GitHub 上查看↗26,543
  • flutter-team-archive/pluginsflutter-team-archive 的头像

    flutter-team-archive/plugins

    17,710在 GitHub 上查看↗

    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
    在 GitHub 上查看↗17,710
  • piotrplenik/clean-code-phppiotrplenik 的头像

    piotrplenik/clean-code-php

    12,455在 GitHub 上查看↗

    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
    在 GitHub 上查看↗12,455
  • didi/chameleondidi 的头像

    didi/chameleon

    8,966在 GitHub 上查看↗

    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
    在 GitHub 上查看↗8,966
  • react-native-image-picker/react-native-image-pickerreact-native-image-picker 的头像

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

    8,637在 GitHub 上查看↗

    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
    在 GitHub 上查看↗8,637
  • software-mansion/react-native-svgsoftware-mansion 的头像

    software-mansion/react-native-svg

    7,990在 GitHub 上查看↗

    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
    在 GitHub 上查看↗7,990
  • wbt5/real-urlwbt5 的头像

    wbt5/real-url

    7,813在 GitHub 上查看↗

    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
    在 GitHub 上查看↗7,813
  • matthew-andrews/isomorphic-fetchmatthew-andrews 的头像

    matthew-andrews/isomorphic-fetch

    6,913在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,913
  • bogdan-lyashenko/under-the-hood-reactjsBogdan-Lyashenko 的头像

    Bogdan-Lyashenko/Under-the-hood-ReactJS

    6,835在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,835
  • react-native-device-info/react-native-device-inforeact-native-device-info 的头像

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

    6,672在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,672
  • rebeccahughes/react-native-device-inforebeccahughes 的头像

    rebeccahughes/react-native-device-info

    6,669在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,669
  • rust-lang/rfcsrust-lang 的头像

    rust-lang/rfcs

    6,406在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,406
  • ivpusic/react-native-image-crop-pickerivpusic 的头像

    ivpusic/react-native-image-crop-picker

    6,349在 GitHub 上查看↗

    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
    在 GitHub 上查看↗6,349
  • soffes/samkeychainsoffes 的头像

    soffes/SAMKeychain

    5,368在 GitHub 上查看↗

    SAMKeychain 是一个 Objective-C 钥匙串管理器,提供了一个程序化接口来创建、读取和删除存储在 macOS 和 iOS 系统钥匙串中的安全凭据。它作为一个轻量级封装器,用于管理 Apple 平台上的密码和敏感数据。 该项目提供了一个统一的 API,抽象了 macOS 和 iOS 之间的实现差异。它将底层 C API 封装在 Objective-C 类中,为与系统安全守护进程交互提供了面向对象的接口。 该库涵盖了安全凭据存储和访问控制,包括在加密持久存储中存储、检索和删除账户密码及认证 Token 的能力。

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

    Objective-Ciosmacosobjective-c
    在 GitHub 上查看↗5,368
  • soffes/sskeychainsoffes 的头像

    soffes/sskeychain

    5,368在 GitHub 上查看↗

    sskeychain 是一个 Objective-C 库,为管理 iOS 和 macOS 上的安全数据持久化提供了简化的编程接口。它作为一个 Apple 安全框架的面向对象封装器,支持密码和账户凭据的存储与检索。 该库处理底层系统 API 与高级对象接口之间的转换,以管理敏感信息。它包括用于定义钥匙串项可访问性级别的机制,以控制存储的数据何时可供应用使用。 该项目为管理跨移动和桌面 Apple 平台的加密凭据存储提供了共享接口。这包括支持基于属性的查询逻辑,以过滤和检索系统数据存储中的特定项。

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

    Objective-C
    在 GitHub 上查看↗5,368
  • c3lang/c3cc3lang 的头像

    c3lang/c3c

    5,147在 GitHub 上查看↗

    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
    在 GitHub 上查看↗5,147
  • zoontek/react-native-permissionszoontek 的头像

    zoontek/react-native-permissions

    4,370在 GitHub 上查看↗

    react-native-permissions 是一个跨平台权限库,为 iOS、Android 和 Windows 提供了请求和检查系统权限的统一接口。它充当权限状态管理器和设备能力审计器,以确定对敏感数据或硬件的访问是被授予、拒绝还是阻止。 该项目包含一个媒体访问控制器,通过系统原生选择器处理对照片和联系人的受限访问。它还具有系统设置集成器,可引导用户前往设备设置页面手动切换应用和通知权限。 该库涵盖了广泛的访问控制功能,包括位置精度验证、通知权限管理以及在提供理由的情况下提示用户授予权限。在 Android 上,它专门提供了用于审计系统能力(如精确闹钟和全屏意图)的实用工具。

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

    Objective-C++authorizationpermissionsreact
    在 GitHub 上查看↗4,370
  • mouredev/hello-javamouredev 的头像

    mouredev/hello-java

    4,304在 GitHub 上查看↗

    This project is a collection of instructional resources and curriculum materials designed to teach the Java language. It provides a structured programming course, a fundamentals guide, and an object-oriented programming tutorial, supported by a series of practical coding exercises and implementation challenges. The curriculum focuses on implementing object-oriented patterns, including inheritance, polymorphism, and abstraction. It covers the creation of classes, the use of interfaces to define behavioral contracts, and the application of access modifiers to control data visibility. The educa

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

    Javacursojavapoo
    在 GitHub 上查看↗4,304
  • troessner/reektroessner 的头像

    troessner/reek

    4,126在 GitHub 上查看↗

    Reek 是一个用于 Ruby 项目的静态代码分析器,旨在识别被称为“代码异味”的设计缺陷和可维护性问题。它作为一个质量保证工具,在不执行源代码的情况下对其进行检查,以发现结构性弱点和架构债务。 该分析器可以识别特定的模式,如大类、长方法和不具描述性的命名。它还能检测更复杂的设计问题,包括特性依恋、数据泥团、模拟多态和控制耦合。 该工具包括用于管理遗留代码的问题基线功能,以及用于排除特定目录的配置驱动过滤功能。它支持通过 CI/CD 流水线进行自动化质量检查,并提供 JSON、YAML、XML 和 HTML 等格式的分析报告。

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

    Ruby
    在 GitHub 上查看↗4,126
上一个12下一个
  1. Home
  2. Software Engineering & Architecture
  3. Polymorphism Patterns

探索子标签

  • 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 个子标签Unified 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.