Java Lambda Tutorial

· 自行出版
5,0
9 avis
E-book
61
Pages

À propos de cet e-book

相對於 JavaScript、Python、Scala 等本身支援一級函式(First class function)的語言,Java 開發者對於一級函式是比較陌生的,因而在 2010 年 JCD 中的議程 Lambda/Closure - 從 JavaScript、Python、Scala 到 Java SE 7,我簡單地從 JavaScript、Python、Scala 等語言的一級函式特性開始介紹,分享了 Java 要加入 Lambda/Closure 會有什麼樣的考量。

Java 的 Lambda 語法後來歷經了數次的討論與改變,後來確定在 Java SE 8 中引入 Lambda,也引進了因應新語法而帶來的 API 新功能,因而我在 2012 年 Java TWO 議程 Java SE 8 的 Lambda 連鎖反應 中,從 Lambda 演算開始探討了 Lambda 的前世今生,以及會對 Java 帶來的新典範(Paradigm)與風格。

Java 引入的新典範其實有著函數式程式設計(Functional programming)的影子,想要善用 Java 引入的 Lambda 語法與新 API,先認識函數式程式設計會有非常大的幫助,因而在 2012 年 JCD 中,我於議程 Java 開發者的函數式程式設計 中探討了函數式程式設計,以及在 Java 中如何適當地運用函數式風格。

Java SE 8 確定於 2014 年 3 月發表,而我發現過去的這幾個議程可以整理成為系列文章,讓大家可以認識 Java 中 Lambda 的前世今生。除此之外,最後並加上了 JDK8 Functional API 的介紹,讓本書對 JDK8 Lambda 的介紹更為完整。

認識 Lambda/Closure

  • 從 JavaScript 的函式物件談起
  • 什麼是 Closure?
  • Python 對 Lambda/Closure 的支援
  • 從 Scala 中借鏡
  • Java 的稻草人提案
  • 一級函式與 Lambda 演算
  • JDK8 Lambda 語法
  • 方法參考與建構式參考

Java 開發者的函數式程式設計

  • 初探函數式程式設計
  • 代數資料型態
  • List 處理模式
  • 不可變特性
  • JDK8 預設方法
  • 惰性
JDK8 Functional API
  • 使用 Optional 取代 null
  • Consumer、Function、Predicate 與 Supplier
  • 使用 Stream 進行管線操作
  • Stream 的 reduce 與 collect
  • Optional 與 Stream 的 flatMap
  • Stream 與平行化

Notes et avis

5,0
9 avis

À propos de l'auteur

目前為自由工作者,專長為技術寫作、翻譯與教育訓練。喜好研究程式語言、框架、社群,從中學習設計、典範及文化。閒暇之餘記錄所學,技術文件涵蓋 C/C++、Java、Ruby/Rails、Python、JavaScript、Haskell 等領域。

Donner une note à cet e-book

Dites-nous ce que vous en pensez.

Informations sur la lecture

Smartphones et tablettes
Installez l'application Google Play Livres pour Android et iPad ou iPhone. Elle se synchronise automatiquement avec votre compte et vous permet de lire des livres en ligne ou hors connexion, où que vous soyez.
Ordinateurs portables et de bureau
Vous pouvez écouter les livres audio achetés sur Google Play à l'aide du navigateur Web de votre ordinateur.
Liseuses et autres appareils
Pour lire sur des appareils e-Ink, comme les liseuses Kobo, vous devez télécharger un fichier et le transférer sur l'appareil en question. Suivez les instructions détaillées du Centre d'aide pour transférer les fichiers sur les liseuses compatibles.