awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesOpen-source alternativesSelf-hosted softwareBlogPlan du site
ProjetÀ proposHow we rankPresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

9 dépôts

Awesome GitHub RepositoriesInterface-Based Polymorphism

The ability of code to operate on different types that share a common interface or set of methods.

Distinct from Trait Object Polymorphism: Candidates focus on binary serialization or Rust traits rather than general JavaScript duck-typing polymorphism.

Explore 9 awesome GitHub repositories matching software engineering & architecture · Interface-Based Polymorphism. Refine with filters or upvote what's useful.

Awesome Interface-Based Polymorphism GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • clojure/clojureAvatar de clojure

    clojure/clojure

    11,006Voir sur GitHub↗

    Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic S-expression language that represents programs as nested data structures, allowing code to be manipulated and evaluated as data. The project provides a framework for JVM interoperability, enabling the invocation of Java methods and integration with other JVM-based languages. It distinguishes itself through a persistent data structure library that uses bitmapped vector tries to manage immutable collections and a programmatic REPL for interactive software development and real-tim

    Decouples interface definition from implementation by allowing any data type to implement a set of required functions.

    Java
    Voir sur GitHub↗11,006
  • airbnb/epoxyAvatar de airbnb

    airbnb/epoxy

    8,556Voir sur GitHub↗

    Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth

    Generates interfaces from shared view props for type-safe polymorphic model access.

    Java
    Voir sur GitHub↗8,556
  • torokmark/design_patterns_in_typescriptAvatar de torokmark

    torokmark/design_patterns_in_typescript

    5,430Voir sur GitHub↗

    Ce projet est une bibliothèque de design patterns TypeScript et un guide d'architecture. Il fournit une collection de patterns d'architecture logicielle standards de l'industrie implémentés en TypeScript pour démontrer la création et la communication d'objets. La bibliothèque sert de référence pratique pour appliquer les principes de conception orientée objet, utilisant le typage statique pour imposer les exigences structurelles de ces patterns durant la phase de compilation. Le contenu couvre l'implémentation de patterns de création pour découpler l'instanciation d'objets de la logique métier, de patterns structurels pour organiser les classes et objets en compositions plus larges, et de patterns comportementaux pour gérer la communication et la distribution des responsabilités entre objets.

    Demonstrates how to use shared contracts to allow interchangeable class implementations via polymorphism.

    TypeScriptadapterbuildercommand
    Voir sur GitHub↗5,430
  • gopl-zh/gopl-zh.github.comAvatar de gopl-zh

    gopl-zh/gopl-zh.github.com

    4,958Voir sur GitHub↗

    Ce projet est une traduction chinoise d'un guide complet sur le langage de programmation Go. Il sert de ressource éducative localisée et de manuel technique conçu pour fournir des conseils sur la syntaxe, la conception et le développement logiciel. La ressource couvre un large éventail d'enseignements sur le langage Go, y compris l'implémentation de modèles de programmation et la conception système. Elle inclut des leçons traduites et des exemples axés sur les fonctionnalités fondamentales du langage telles que la concurrence et l'utilisation des interfaces. Le contenu couvre divers domaines, notamment les fondamentaux du langage, la modélisation de données, la réflexion au runtime et la gestion de la mémoire. Il fournit également une couverture détaillée de l'architecture logicielle, de la gestion des erreurs, de l'assurance qualité et du réseau web. La documentation est structurée comme un manuel technique comprenant du contenu traduit, des errata et des corrections pour garantir un apprentissage précis.

    Guides the implementation of interface-based polymorphism to treat different concrete types uniformly.

    Goprogramming-language
    Voir sur GitHub↗4,958
  • jakubvojvoda/design-patterns-cppAvatar de JakubVojvoda

    JakubVojvoda/design-patterns-cpp

    4,536Voir sur GitHub↗

    Ce projet est une bibliothèque de modèles de conception (design patterns) C++ et une référence de programmation. Il fournit une collection de modèles d'architecture logicielle structurels, créationnels et comportementaux implémentés en C++ pour servir de plans pour l'organisation des classes et des objets. La bibliothèque couvre l'implémentation de modèles standard pour l'instanciation d'objets, la communication et l'organisation structurelle. Elle démontre l'application de modèles de conception conformes aux normes de l'industrie pour résoudre des problèmes de conception logicielle courants via une architecture orientée objet. La base de code inclut des implémentations de modèles créationnels pour standardiser la création d'objets, de modèles structurels pour organiser les relations entre classes, et de modèles comportementaux pour coordonner la communication et la responsabilité entre les objets.

    Provides implementations of abstract base classes and virtual methods to decouple logic from implementation.

    C++abstract-factory-patternbehavioral-patternscpp
    Voir sur GitHub↗4,536
  • typedb/typedbAvatar de typedb

    typedb/typedb

    4,353Voir sur GitHub↗

    TypeDB est une base de données orientée graphe fortement typée et un système de gestion de graphes de connaissances. Il sert de magasin de données multi-modèles qui unifie les structures relationnelles, documentaires et de graphes dans un environnement unique, fonctionnant à la fois comme une base de données conforme ACID et un moteur de requête déclaratif. Le système se distingue par l'utilisation de la modélisation par hypergraphes n-aires et de hiérarchies de types polymorphes. Il emploie un schéma fortement typé pour appliquer des règles structurelles et valider l'intégrité des données, permettant une inférence polymorphe basée sur les types et un polymorphisme d'interface basé sur les rôles pour résoudre automatiquement les relations complexes lors de l'exécution des requêtes. La plateforme couvre un large éventail de capacités, notamment le calcul de relations récursives via le tabling, les transactions avec isolation par snapshot et la récupération de données déclarative. Elle prend également en charge la haute disponibilité via la réplication de cluster basée sur le consensus, le contrôle d'accès basé sur les rôles et l'intégration avec des agents IA pour la récupération de données structurées. La gestion est prise en charge via une interface de ligne de commande, et le système fournit des outils pour visualiser les schémas de graphes et auditer l'activité administrative.

    Implements role-based interface polymorphism to allow different entity types to be used interchangeably within a single relation role.

    Rustdatabaseinferenceknowledge-base
    Voir sur GitHub↗4,353
  • aceld/golangAvatar de aceld

    aceld/golang

    3,935Voir sur GitHub↗

    This project is a technical programming guide and educational resource focused on Go internals, runtime mechanisms, and advanced language features. It provides detailed conceptual analysis of the language's execution model, including its scheduler, memory escape analysis, and garbage collection mechanisms. The material distinguishes itself through deep dives into high-concurrency system design, exploring the implementation of worker pools and communication channels. It also covers low-level network programming with a focus on I/O multiplexing and TCP state management, alongside a study of dis

    Explains how Go uses interface types to operate on different concrete types sharing a common method set.

    Voir sur GitHub↗3,935
  • marijnh/eloquent-javascriptAvatar de marijnh

    marijnh/Eloquent-JavaScript

    3,097Voir sur GitHub↗

    Eloquent-JavaScript is a comprehensive JavaScript programming textbook and interactive coding tutorial designed for web development education. It serves as both a language reference and a practical guide, combining theoretical lessons with an environment where learners can execute and modify code examples. The project focuses on the fundamental principles of the JavaScript language, including lexical scoping, prototype-based inheritance, and asynchronous patterns. It provides detailed instruction on object-oriented programming, functional programming, and the use of the browser DOM to create

    Teaches how to write polymorphic code that works with any object supporting a specific interface.

    JavaScript
    Voir sur GitHub↗3,097
  • ua-nick/data-structures-and-algorithmsAvatar de ua-nick

    ua-nick/Data-Structures-and-Algorithms

    2,773Voir sur GitHub↗

    Ce dépôt est une collection de structures de données fondamentales et d'algorithmes classiques implémentés en Go, conçus pour l'étude éducative et le développement des compétences techniques. Il fournit une bibliothèque complète de primitives de stockage standard et de procédures computationnelles destinées à démontrer une organisation efficace des données et de la logique. Le projet se distingue par un accent sur les principes de conception de base, utilisant des paramètres de type au niveau du langage et le polymorphisme basé sur les interfaces pour maintenir la sécurité des types et la modularité. Les implémentations reposent sur une logique itérative et une gestion directe de la mémoire via des pointeurs, privilégiant l'efficacité structurelle et une organisation du code claire et maintenable. La bibliothèque couvre un large éventail de sujets essentiels en informatique, y compris diverses techniques de recherche, de tri et de correspondance de motifs de chaînes. Ces implémentations servent de ressource pour analyser les performances, pratiquer les modèles algorithmiques et se préparer aux évaluations techniques.

    Employs interface-based polymorphism to allow interchangeable algorithm implementations.

    Goalgorithmalgorithmsalgorithms-and-data-structures
    Voir sur GitHub↗2,773
  1. Home
  2. Software Engineering & Architecture
  3. Interface-Based Polymorphism

Explorer les sous-tags

  • Generated View InterfacesCreates an interface from shared props across views, enabling type-safe access to common properties on different models. **Distinct from Interface-Based Polymorphism:** Distinct from Interface-Based Polymorphism: generates interfaces from view annotations for type-safe model access, not general polymorphic dispatch.
  • Protocol-Based PolymorphismA polymorphism mechanism where interface definitions are decoupled from implementations via protocols. **Distinct from Interface-Based Polymorphism:** Distinct from Interface-Based Polymorphism: specifically focuses on the protocol pattern where any type can implement required functions.
  • Role-Based Interface PolymorphismA specific form of polymorphism where different types are mapped to shared relation roles. **Distinct from Interface-Based Polymorphism:** Distinct from general interface polymorphism by focusing on mapping types to relation roles in a graph schema.