Functional Programming in Kotlin with Arrow showcases how to solve the main concerns that any Android app can have by using Functional Programming. This course achieves Functional Programming using Arrow, which the Instructor is a contributor of.
The Functional paradigm provides very valuable bits like determinism and testability, among many others. It helps to minimize errors like race conditions by removing side effects and shared state. It also helps by abstracting your code thanks to concern separation between the operation composition (algebras) and the runtime execution.
You will learn many important concepts of Functional Programming through the use of Arrow and Kotlin. You can take this course also as a pure Functional Programming course to learn most of the basics and key concepts on this paradigm. Use this knowledge afterwards to build up your complete app architecture!