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

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

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

square/ottoArchived

0
View on GitHub↗
square.github.io/otto↗

Otto

Otto 是一个专为 Android 应用设计的事件总线事件驱动通信系统。它提供了一种通过在应用组件之间路由事件来解耦组件的机制,而无需直接依赖。

该系统具有状态感知能力,这意味着它可以在注册后立即向新订阅者提供最近的已知值。它作为同步事件调度器运行,确保所有已注册的监听器在执行继续之前对对象做出响应。

该库包含事件订阅管理和线程执行强制功能,以将回调限制在特定线程。它利用基于类型的订阅者映射,根据接收到的事件类来组织监听器。

Features

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI
  • Event Bus Systems - Provides an event bus system for decoupled communication between components in Android applications.
  • Android Thread Management - Manages the routing of event callbacks to specific threads within the Android runtime to maintain UI stability.
  • Callback - Restricts event callbacks to a specific thread to prevent race conditions and ensure thread safety.
  • Event - Routes event delivery to a specific execution context to ensure listeners run on a designated thread.
  • Component Decoupling Patterns - Implements decoupling patterns to facilitate communication between application components without direct dependencies.
  • Event-Based Communication - Implements the architectural pattern of event-based communication to decouple application components.
  • Event Propagation Patterns - Follows architectural patterns for pushing state changes synchronously through an event log to downstream listeners.
  • Event Subscribers - Groups event listeners into subscribers based on the class of events they are registered to receive.
  • Event Type Subscriptions - Allows class instances to register interest in specific event types and receive matching events through method execution.
  • Synchronous Event Dispatchers - Executes event handlers within the caller's thread to ensure all listeners respond before execution continues.
  • Android Component Architectures - Provides an architectural structure for decoupling Android components using an event-driven communication bus.
  • Guava Event Bus Implementations - Implements an event bus based on Guava to decouple application components via event routing.
  • State-Aware Event Buses - Implements a state-aware event bus that provides the most recent known value to subscribers upon registration.
  • Initial Value Emission - Immediately dispatches the current state value upon the creation of a new event subscription.
  • Reflective Event Dispatchers - Uses Java reflection to identify and execute methods annotated as subscribers when events are published.
  • Subscription State Synchronization - Provides initial values to new subscribers to ensure they have the latest state immediately upon registration.
  • Initial State Injections - Provides the most recent known value to new subscribers immediately upon registration to synchronize application state.
  • Event Bus - Provides an enhanced, Guava-based event bus for Android.
  • 5,122 星标·829 分支·Java·Apache-2.0·2 次浏览

    Star 历史

    square/otto 的 Star 历史图表square/otto 的 Star 历史图表

    常见问题解答

    square/otto 是做什么的?

    Otto 是一个专为 Android 应用设计的事件总线事件驱动通信系统。它提供了一种通过在应用组件之间路由事件来解耦组件的机制,而无需直接依赖。

    square/otto 的主要功能有哪些?

    square/otto 的主要功能包括:Event Bus Systems, Android Thread Management, Callback, Event, Component Decoupling Patterns, Event-Based Communication, Event Propagation Patterns, Event Subscribers。

    square/otto 有哪些开源替代品?

    square/otto 的开源替代品包括: greenrobot/eventbus — EventBus is a publish-subscribe messaging library designed to facilitate decoupled communication between components in… doctrine/common — Doctrine Common is a set of shared libraries that provide foundational capabilities for parsing PHP docblock… geniusvjr/learningnotes — LearningNotes is a technical knowledge base and engineering study guide focused on Android framework internals, system… mroderick/pubsubjs — PubSubJS is a lightweight JavaScript library that implements the publish-subscribe pattern to manage decoupled… anthropics/financial-services — This project is an LLM financial agent framework and multi-agent orchestration system designed to execute complex… alibaba/beehive — BeeHive is a modular architecture framework for iOS applications. It provides a dependency injection container, an…

    Otto 的开源替代方案

    相似的开源项目,按与 Otto 的功能重合度排序。
    • greenrobot/eventbusgreenrobot 的头像

      greenrobot/EventBus

      24,760在 GitHub 上查看↗

      EventBus is a publish-subscribe messaging library designed to facilitate decoupled communication between components in Java applications. It functions as a central hub where producers dispatch events that are routed to subscribers based on the class type of the payload. By using annotation-based markers, the system maps event handlers to specific data types, allowing different parts of an application to exchange information without requiring direct references between classes. The library distinguishes itself through a focus on performance and execution control. It utilizes a compile-time inde

      Java
      在 GitHub 上查看↗24,760
    • doctrine/commondoctrine 的头像

      doctrine/common

      5,807在 GitHub 上查看↗

      Doctrine Common is a set of shared libraries that provide foundational capabilities for parsing PHP docblock annotations, managing event-driven communication, and handling typed object collections. At its core, it includes a docblock annotation parser that reads structured metadata from PHP docblock comments, enabling configuration for object-relational mapping and validation rules. It also offers a typed collection abstraction with lazy-loading support, allowing efficient management of object groups through array-like operations. The library extends these capabilities with an event managemen

      PHP
      在 GitHub 上查看↗5,807
    • geniusvjr/learningnotesGeniusVJR 的头像

      GeniusVJR/LearningNotes

      13,145在 GitHub 上查看↗

      LearningNotes is a technical knowledge base and engineering study guide focused on Android framework internals, system architecture, and mobile performance optimization. It serves as a reference for analyzing the Android boot sequence, process bootstrapping, and system service initialization. The project provides detailed guides on mobile performance, including strategies for reducing memory footprints, identifying memory leaks, and optimizing image decoding. It further covers Android inter-process communication using AIDL and the Binder kernel driver, as well as software architecture manuals

      在 GitHub 上查看↗13,145
    • mroderick/pubsubjsmroderick 的头像

      mroderick/PubSubJS

      4,862在 GitHub 上查看↗

      PubSubJS is a lightweight JavaScript library that implements the publish-subscribe pattern to manage decoupled communication between different parts of an application. It functions as a dependency-free message broker and event bus, allowing components to exchange data without requiring direct dependencies. The system enables the orchestration of events through named topics, allowing developers to register subscriber callbacks and broadcast messages to all interested listeners. It specifically supports the decoupling of component communication and the notification of state changes across multi

      JavaScript
      在 GitHub 上查看↗4,862
    查看 Otto 的所有 30 个替代方案→