iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
自我挑戰組

連續30天 初學者介紹Scala語言 系列

在30天內,以初學者學習Scala程式語言為視角,帶領大家簡單認識這個程式語言的語法及特性。

鐵人鍊成 | 共 30 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 11

[Day 11]Scala 函式與閉包

Methods Local functions 今天我們來談函式 當程式變大時,我們會需要某種方式來把它們分得更小塊、更易於管理。Scala提供了一種:把程...

DAY 12

[Day 12]Scala 函式與閉包 Part 2

First-class functions Placeholder syntax 今天繼續來談函式在Scala裡有一級函式(Fisrt-class func...

DAY 13

[Day 13]Scala 函式與閉包 Part3

Partially applied functions 部分套用函式 Closures 閉包 昨天介紹了函式常量跟函式值的應用,還有如何精簡地表示它們今天要...

DAY 14

[Day 14]Scala Currying

Currying 今天來談柯里化(Currying)簡單來說,柯里化就是一個可以接收多個參數列表的函式編寫方式。先看以下程式: def sum(x: Int...

DAY 15

[Day 15]Scala繼承與組合

今天來介紹Scala物件導向的概念 首先來介紹抽象類別(Abstract class)Scala的抽象類別就跟Java類似,在class之前寫上關鍵字abstr...

DAY 16

[Day 16]Scala繼承與組合 Part2

override final 今天來介紹子類別如何呼叫父類別的建構式(constructor) 延續昨天的抽象類別及它的子類別: abstract clas...

DAY 17

[Day 17]Scala Traits

今天要來介紹Scala的特徵(traits) 在Scala裡,多重繼承是不被允許的,所以要實現多重繼承的概念時就可以用特徵(trait),因為它可以被繼承多個。...

DAY 18

[Day 18]Scala Traits Part2

今天來介紹trait的不同用法 當作介面(interface)使用 定義抽象屬性(abstract fields) 當作抽象類別使用 當作介面使用 當我們想...

DAY 19

[Day 19]Scala Package

今天來聊聊Scala的套件(package) 想像在寫大型程式,我們會希望能降低不同區塊的程式彼此間的依賴程度,也就是說減少耦合(coupling)。程式之間的...

DAY 20

[Day 20]Scala Imports

今天來聊聊Scala的匯入(import) 在Scala裡,我們可以用import語句來匯入套件和它的成員,類似於Java的import,不過更有彈性。Scal...