iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Software Development

Functional Programming in Kotlin 系列

主題將會由淺入深,包含了
- Functional programming 基本語法
- Functional programming 基本原則
- 解釋、應用 Monad
- Category theory 入門
- 實戰運用

鐵人鍊成 | 共 30 篇文章 | 31 人訂閱 訂閱系列文 RSS系列文 團隊Kotlin 鐵人陣
DAY 1

Function type and basic syntax

前言 這系列的文章算是我給自己的筆記,從學習 Functional programming 以來已經也有了兩年了吧!過程中跌跌撞撞,很常發現在跟別人介紹 Fun...

2020-09-10 ‧ 由 hungyanbin 分享
DAY 2

Function composition and lazy execution

Function composition 回想以前在學校的時候,對於數學函式的第一印象就是一堆 f(x) 跟 g(x) 了,還有他們的組合:f(g(x))。這在...

2020-09-11 ‧ 由 hungyanbin 分享
DAY 3

Pure function and immutability

上一篇的解答: infix fun <T, Q, R> ((T) -> Q).pipe(anotherFun: (Q) -> R): (...

2020-09-12 ‧ 由 hungyanbin 分享
DAY 4

Kotlin collections: List, Map and Set

Kotlin collections: List, Map and Set 上一篇的解答:答案是不一定,如果 Money 這個 class 的其中一個變數是 v...

2020-09-13 ‧ 由 hungyanbin 分享
DAY 5

Partial function and total function

上一篇的解答: private fun <K, V, R> Map<K, V>.fmap(transform: (V) -> R)...

2020-09-14 ‧ 由 hungyanbin 分享
DAY 6

Non-deterministic, side effect and Try

今天要來談談“意外”這件事,沒有人喜歡“意外”對吧?尤其是 PM 或是 QA 的神之手,有時候就是會給你“意外”的操作出一些 bug ,而你又重現不出來時,要怎...

2020-09-15 ‧ 由 hungyanbin 分享
DAY 7

[RxJava] Observable and error handling

上次的解答, fold 在之後還會看到它的,在 functional programming 中是一個常見的 operator: fun fold(succes...

2020-09-16 ‧ 由 hungyanbin 分享
DAY 8

[RxJava] side effect operators and advanced operator

Side Effect Operator 前一篇介紹了 Observable 跟 Try 是如何處理Exception 這個 side effect,那麼可能有...

2020-09-17 ‧ 由 hungyanbin 分享
DAY 9

More FlatMap : List and Try

今天再來講多一點 flatMap 的例子吧!首先從 List 開始! FlatMap for List 一樣先看例子,以下這個例子的目標是分解句子中的單字,其中...

2020-09-18 ‧ 由 hungyanbin 分享
DAY 10

Category theory

在本文開始之前先打個預防針,我學習 Category theory 的時間其實沒有多長,所以如果以下或之後的內容有誤,或是有不完善的地方請各位多多包含。另外為了...

2020-09-19 ‧ 由 hungyanbin 分享