Summary
In this chapter, we developed a backend with the Swift Vapor library, which handles the Todo
items POST
, GET
, and DELETE
. Then, we developed a frontend iOS application that leverages functional programming, reactive programming, and State
management techniques declaratively. We started by developing our Todo
model in a functional style, and then we developed a Store
object and its extensions to handle State
storage, and Action
to handle State
changes. We defined and used Lens
to modify our properties and a WebServiceManager
with reflection techniques to request for backend resources.
In this case study, we were able to use value types such as struct
and enum
and avoid classes. In fact, the only four classes in this case study are related to the iOS SDK (UIViewController
, UITableViewController
, UITableViewCell
, and UIView
subclasses). We were able to centralize all State
mutations into the Store
object, only using Action
to change the State
in the Store
object. Although we did not...