All Projects → WiKi123 → Reactivecocoa_use

WiKi123 / Reactivecocoa_use

RAC的基础用法,提高开发效率

Projects that are alternatives of or similar to Reactivecocoa use

Zhuishushenqi
追书神器Swift版客户端(非官方)。 不断更新中......
Stars: ✭ 196 (+120.22%)
Mutual labels:  reactivecocoa, mvvm
Swiftgoal
MVVM + ReactiveCocoa 4, in Swift
Stars: ✭ 305 (+242.7%)
Mutual labels:  reactivecocoa, mvvm
Mvvmreactivecocoademo
ReactiveCocoa的知识点及MVVM模式运用(不断更新中....)
Stars: ✭ 255 (+186.52%)
Mutual labels:  reactivecocoa, mvvm
Lpdmvvmkit
LPDMvvmKit - Elegant MVVM framework in Objective-C.
Stars: ✭ 400 (+349.44%)
Mutual labels:  reactivecocoa, mvvm
Swinjectmvvmexample
An example to use Swinject in MVVM architecture with ReactiveCococa
Stars: ✭ 301 (+238.2%)
Mutual labels:  reactivecocoa, mvvm
Wechat
🔥 iOS 利用MVVM + RAC + ViewModel-Based Navigation来搭建微信(WeChat 7.0.0+)的整体基本架构,以及实现微信朋友圈、通讯录、下拉小程序、搜索等主要功能,代码规范惊为天人、注释详解令人发指、细节处理精益求精、核心功能配备文档、接近98%还原度的原生App视觉体验,代码不多,注释多。(持续更新,敬请期待,欢迎Star和Fork…)
Stars: ✭ 870 (+877.53%)
Mutual labels:  reactivecocoa, mvvm
Wpfbindingerrors
💥 Turn WPF Binding errors into exception
Stars: ✭ 73 (-17.98%)
Mutual labels:  mvvm
Freesound Android
Unofficial Android client for the Freesound Project
Stars: ✭ 81 (-8.99%)
Mutual labels:  mvvm
Android App Architecture Mvvm Databinding
A simple but complete project (in both Java & Kotlin) to demonstrate the Android application architecture with MVVM pattern, a client app for The Movie DB Web API. Dagger2 is used for dependency injection and RxJava is used for RFP (Reactive Functional Programming).
Stars: ✭ 69 (-22.47%)
Mutual labels:  mvvm
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-28.09%)
Mutual labels:  mvvm
Androcat
AndroCat is a GitHub client for Android phones and provides to user GitHub user interface like how they used to.
Stars: ✭ 87 (-2.25%)
Mutual labels:  mvvm
Swift Design Patterns
🚀 The ultimate collection of various Software Design Patterns implemented in Swift [Swift 5.0, 28 Patterns].
Stars: ✭ 85 (-4.49%)
Mutual labels:  mvvm
Mvvm
A Flutter MVVM (Model-View-ViewModel) implementation. It uses property-based data binding to establish a connection between the ViewModel and the View, and drives the View changes through the ViewModel.
Stars: ✭ 80 (-10.11%)
Mutual labels:  mvvm
Dmskin
DMSkin WPF 样式 UI 框架 | WPF Borderless Window | Custom Controls & Styles | MVVM Support
Stars: ✭ 1,189 (+1235.96%)
Mutual labels:  mvvm
Sample Code Movies
This repository contains sample code. Its purpose being, to quickly demonstrate Android and software development in general, clean code, best practices, testing and all those other must know goodies.
Stars: ✭ 81 (-8.99%)
Mutual labels:  mvvm
Wzxarchitecture
搭建app框架-MVVM+RAC+路由
Stars: ✭ 71 (-20.22%)
Mutual labels:  mvvm
Recyclerviewpresenter
RecyclerView Adapter Library with different models and different layouts as convenient as possible.
Stars: ✭ 86 (-3.37%)
Mutual labels:  mvvm
Ale
✌️a Flexible and fast JavaScript view framework
Stars: ✭ 67 (-24.72%)
Mutual labels:  mvvm
Movietray
Its a playground application focusing on Paging3, MVVM architecture, Kotlin Extension functions, Retrofit, DSL, Navigation component, MotionLayout, SharedElementTransition, Single Activity Architecture, DataStore etc.
Stars: ✭ 78 (-12.36%)
Mutual labels:  mvvm
Archetype
[DEPRECATED]Badass MVVM architecture.
Stars: ✭ 84 (-5.62%)
Mutual labels:  mvvm

ReactiveCocoa_Use

  • 对于使用MVC的小伙伴来说,随着业务的增多,代码会显得越来越臃肿。
  • 本人也是如此感觉,于是学习ReactiveCocoa来进行MVVM+RAC架构。
  • 对于ReactiveCocoa的使用,本人会不定时更新。
  • 如果帮助到了各位看官,希望给个星星和Star。

ReactiveCocoa的使用.png

RACSignal常用操作.png


什么是函数响应式编程?

  • 满足函数式的一些特性
  • 面向离散事件流
  • 流散事件流操作

函数式编程的特性?

  • 闭包&高阶函数
  • 惰性计算
  • 不改变状态
  • 递归

什么是ReactiveCocoa?

  • Github mac客户端副产物
  • FRP在Cocoa框架下的实现
  • 富含了Cocoa框架多种组件
  • 提供基于时间变化的数据流的组合和变化
  • 简称RAC

如何理解基于时间变化的数据流?


#ReactiveCocoa基础知识

核心组件

  • RACSteam、 RACSequence、 RACSignal
  • RACSubscriber
  • RACDisposable
  • RACScheduler
  • Cocoa框架适配工具

① RACSteam

RACSteam的两个子类:

  • RACSequence:基于空间的数据流,在时间上是连续的。操作多,消耗高
  • RACSignal:基于时间的数据流,在时间上是离散的。

RACSteam.png

RACSequence VS RACSignal

  • Pull-driver vs Push-driver (看书&看电视)
  • Data vs Event
  • 其他差异

② Signal Subscirber Disposable

Signal Subscirber Disposable

③ RACScheduler

  • 用来做调度
  • 代替GCD
  • 异步与并发

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].