Tech Talk: ReSwift + RxSwift = ReRxSwift

Tech Talk Time – Diesmal ging es um Software-Architektur/-Design in der iOS-Entwicklung. In der traditionellen iOS-Entwicklung mit MVC (Model View Controller) oder heutzutage “trendigem” MVVM (Model View ViewModel) wird wenig bis keine Rücksicht auf den State (bzw. die Daten) in der App genommen. Das führt oft zu schwer verständlichem, und schlecht wartbarem Code, da alles undefiniert und quer verstreut in der App gemacht wird. Daher ist es essentiell, sich um die Organisation des States in der App zu kümmern.

Um das Rad nicht neu zu erfinden, bedienen wir uns an Frameworks/Libraries wie ReSwift*, RxSwift** und die Verbindung der beiden “Technologien” über ReRxSwift***. Diese bieten ein gutes State-Management, was dazu führt, dass der State nur an einer Stelle in der App (im s.g. Store) verwaltet wird und nur kontrolliert (über s.g. Actions/Reducers) verändert werden kann. Über s.g. Subscriptions kann man den aktuellen Stand und Änderungen des States erfahren (z.B. in ViewControllers oder Views).

* Swift Implementierung von Redux (JavaScript)

** Swift Implementierung von reactiveX (für quasi jede populäre Programmiersprache verfügbar)

*** Swift Implementierung von react-redux (JavaScript)

 

Hier gibt es die Slides zum Talk von Martin:

Klicken Sie auf den unteren Button, um den Inhalt von www.slideshare.net zu laden.

Inhalt laden

PGlmcmFtZSBzcmM9Ii8vd3d3LnNsaWRlc2hhcmUubmV0L3NsaWRlc2hvdy9lbWJlZF9jb2RlL2tleS9zbHNQTjE3b3FmamtEaiIgd2lkdGg9IjU5NSIgaGVpZ2h0PSI0ODUiIGZyYW1lYm9yZGVyPSIwIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIiBzY3JvbGxpbmc9Im5vIiBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjQ0NDOyBib3JkZXItd2lkdGg6MXB4OyBtYXJnaW4tYm90dG9tOjVweDsgbWF4LXdpZHRoOiAxMDAlOyIgYWxsb3dmdWxsc2NyZWVuPiA8L2lmcmFtZT4=