Biblioteca de utilitários para TypeScript com funções data-first e data-last para arrays, objetos e outras operações comuns.
ReactiveX/RxSwift
Implementação de Reactive Extensions (Rx) em Swift para compor eventos assíncronos e fluxos de dados com sequências Observable.
- Estrelas
- 24,627
- Forks
- 4,147
- Issues abertas
- 19
- Último commit
- há 2 meses
O que é?
O RxSwift leva o modelo de Reactive Extensions (ReactiveX) para Swift. Ele representa tarefas assíncronas, eventos de UI, observações de KVO e outros fluxos de dados como sequências Observable, que podem ser transformadas, filtradas e combinadas com um amplo conjunto de operadores, além de permitir inscrições para receber valores e eventos de conclusão.
O projeto é dividido em vários módulos. O RxSwift é o núcleo e não tem dependências externas. O RxCocoa adiciona recursos específicos do Cocoa para iOS, macOS, tvOS e watchOS, como bindings para controles do UIKit e AppKit, além de sequências compartilhadas e traits como Driver. O RxRelay fornece PublishRelay, BehaviorRelay e ReplayRelay, enquanto RxTest e RxBlocking ajudam a testar código baseado em Rx.
O RxSwift pode ser instalado pelo Swift Package Manager, Carthage, XCFrameworks ou submódulos do git. O repositório inclui um app de exemplo e documentação sobre como começar, traits, testes e armadilhas comuns.
Recursos principais
- 01As sequências Observable unificam operações assíncronas, eventos de UI e fluxos KVO.
- 02Um amplo conjunto de operadores para transformar, filtrar e combinar fluxos.
- 03O RxCocoa oferece bindings e sequências compartilhadas para frameworks de UI da Apple.
- 04O RxRelay oferece PublishRelay, BehaviorRelay e ReplayRelay como wrappers em torno de subjects.
- 05RxTest e RxBlocking ajudam a testar código baseado em Rx.
- 06Pode ser instalado pelo Swift Package Manager, Carthage ou XCFrameworks.
Casos de uso
- Vincular resultados de busca em uma API a uma table view, com debounce e cancelamento.
- Combinar várias chamadas assíncronas de API em um único pipeline reativo em um app iOS.
- Controlar o estado da UI com base na entrada do usuário e em mudanças no modelo em arquiteturas no estilo MVVM.
- Escrever testes unitários para a lógica de fluxos assíncronos usando RxTest.
Início rápido
- 1
Adicione RxSwift como dependência em Package.swift
- 2
Compile o projeto com o Swift Package Manager
swift build
Antes de usar
- O README menciona um bug não resolvido de dependências cruzadas do Swift Package Manager (SR-12303) que pode afetar as compilações.
Em coleções
Tópicos
Perguntas frequentes
- O que é RxSwift?
- Implementação de Reactive Extensions (Rx) em Swift para compor eventos assíncronos e fluxos de dados com sequências Observable. O RxSwift leva o modelo de Reactive Extensions (ReactiveX) para Swift. Ele representa tarefas assíncronas, eventos de UI, observações de KVO e outros fluxos de dados como sequências Observable, que podem ser transformadas, filtradas e combinadas com um amplo conjunto de operadores, além de permitir inscrições para receber valores e eventos de conclusão.
- RxSwift é gratuito? Qual é a licença?
- RxSwift é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- RxSwift ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de RxSwift foi em 4 de set. de 2026.
- Para que posso usar RxSwift?
- Vincular resultados de busca em uma API a uma table view, com debounce e cancelamento. Combinar várias chamadas assíncronas de API em um único pipeline reativo em um app iOS. Controlar o estado da UI com base na entrada do usuário e em mudanças no modelo em arquiteturas no estilo MVVM. Escrever testes unitários para a lógica de fluxos assíncronos usando RxTest.
- Como instalar RxSwift?
- Adicione RxSwift como dependência em Package.swift Compile o projeto com o Swift Package Manager: swift build
- Onde consigo RxSwift?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ReactiveX/RxSwift
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma biblioteca OCaml para criar cálculos que se atualizam com eficiência quando suas entradas mudam, baseada em computação autoajustável.
Um framework Go para criar interfaces de terminal usando o padrão model-update-view da The Elm Architecture.
Implementação das Reactive Extensions para a Java VM, que permite compor programas assíncronos e orientados a eventos com sequências observáveis.
Gerenciamento de estado simples e escalável para apps JavaScript e TypeScript, com rastreamento automático de dependências e renderização otimizada.
Um notebook reativo para Python que reexecuta automaticamente células dependentes, salva notebooks como arquivos .py simples e pode rodar como script ou app publicado.