iT邦幫忙

鐵人檔案

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

30 天把自己榨好榨滿的四週四語言大挑戰! 系列

不知道大家有沒有看過一本書叫做七週七語言,這本書用七週的時間,每個禮拜都介紹一門新語言。而我最近剛好看到Hackerrank有一個專欄叫做 "30 Days of Code",於是我就想說,何不把這兩個概念結合在一起,來挑戰看看30天內用四種語言(Scala、Python、Golang、Rust),也就是四週四,來完成這個專欄呢?因此就有這個 "30天的四週四語言大挑戰" 計畫啦!我不會像坊間已經很多的101教學文,也不會只是貼Code,而是從實作出發,並拆解其中的精妙之處,讓你就算本來不懂,經過30天後也能和我一起對這四門語言有深入淺出的了解啦!(我也不知道為什麼我要這麼自虐呀呀呀呀)

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

[Day 10] 零壹零壹零零壹

今天的挑戰內容是把一個整數本來是十進位表示,變成是二進位表示。例如 5 變成二進位的話是 101,13 變成二進位是 1101。然而我們不只是要以二進位表示,而...

2019-09-27 ‧ 由 ryanyang1221 分享
DAY 12

[Day 11] 我的世界變多維了!

先前我們已經有講過 Array 以及各語言與 Array 類似的資料結構,現在讓我們進一步來看當我們的 Array 從 Single dimension 變成...

2019-09-28 ‧ 由 ryanyang1221 分享
DAY 13

[Day 12] 如果我有富爸爸

繼承是 Object-Oriented Programming 當中的一個概念。如果我們說一個類別 B 繼承了類別 A,則 B稱為 A的子類別,A 就是 B的父...

2019-09-29 ‧ 由 ryanyang1221 分享
DAY 14

[Day 13] 談談抽象這件事

今天的主題是 Abstract class,也就是抽象類別。抽象類別跟一般類別不同之處在於,抽象類別僅定義方法,而沒有實作,因此不能直接拿來生成物件。舉個例子...

2019-09-30 ‧ 由 ryanyang1221 分享
DAY 15

[Day 14] 楚河漢界劃清楚!

今天我們來聊聊 Scope 這件事吧!不要小看這件事情,有很多東西還是對進階的 Developer 有所幫助呢! Python 3 在 Python 的世界,...

2019-10-01 ‧ 由 ryanyang1221 分享
DAY 16

[Day 15] 手牽手心連心!

今天要來談的是,如何在這四個語言去實作出 Linked list。而 Linked list 是怎樣的資料結構呢?我們可以看到下面每個 Node 都有綠色和黃色...

2019-10-02 ‧ 由 ryanyang1221 分享
DAY 17

[Day 16] 知錯能改善莫大焉

今天我們來看看 Error handling 的部分吧!也就是如何處理異常和錯誤。異常和錯誤又有點不一樣,錯誤往往是指非預期的情況,必須透過修改程式來解決,而異...

2019-10-03 ‧ 由 ryanyang1221 分享
DAY 18

[Day 17] 發生問題趕快舉手!

今天的主題在 Hackerrank 的安排下是延續昨天的主題。昨天我們做的事情是當發現異常的時候,各種語言是用什麼樣的方式在解決。然而今天我們要來看看如何讓我們...

2019-10-04 ‧ 由 ryanyang1221 分享
DAY 19

[Day 18] 疊起來還是排起來

今天我們要來談談另外兩個很常見的線性資料結構:Queue 和 Stack。Queue 的概念就是先進先出啦!就像是排隊買東西,當然先來的人要讓他先買囉!而 St...

2019-10-05 ‧ 由 ryanyang1221 分享
DAY 20

[Day 19] 終於來談談介面

今天終於要來談談介面,也就是 Interface 啦!之前當我們在談繼承以及抽象類別的時候,說到在 Golang 跟 Rust 並沒有這樣的概念,在這兩個語言則...

2019-10-06 ‧ 由 ryanyang1221 分享