Rust 學習之路─第六章:列舉和型樣匹配 2018 年 6 月 16 日 Magic Len 研究分享、 Rust 在先前的章節中我們已經稍微用過「Result」列舉了,在這個章節中,我們將會學著定義自己的列舉型別,以及使用另一個同樣是由Rust內建,也很常用的「Option」列舉。列舉和同樣我們先前已經用過的「match」關鍵字經常互相搭配著使用,在這個章節中,我們也會更深入地學習「match」關鍵字和「if let」、「while let」語法的用法。 繼續閱讀
Rust 學習之路─第五章:使用結構體(struct) 2018 年 6 月 15 日 Magic Len 研究分享、 Rust 結構體(struct)可以將多個不同類型的資料命名並包裝起來,將它們組合成一個有特殊意義的群組,就像是物件導向概念中的物件所擁有的屬性。在這個章節中我們將會比較元組和結構體的差異、學習如何使用結構體,並替結構體定義方法(method)和關聯函數(associated function)。 繼續閱讀
Rust 學習之路─第四章:瞭解擁有權(Ownership) 2018 年 6 月 14 日 Magic Len 研究分享、 Rust Rust程式語言的擁有權概念使它能不使用垃圾回收(Garbage Collection)機制就能保證記憶體的安全性,也是Rust的一大特點,因此瞭解擁有權的工作原理是很重要的。 繼續閱讀
Rust 學習之路─第三章:Rust程式語言的基礎概念 2018 年 6 月 13 日 Magic Len 研究分享、 Rust 在這個章節將會介紹許多其它程式語言也都有的基礎概念,包含變數、資料型別、函數、註解以及條件和迴圈的流程控制。 繼續閱讀
Rust 學習之路─第二章:用Rust寫個猜數字程式吧! 2018 年 6 月 13 日 Magic Len 研究分享、 Rust 在這個章節,我們將會直接使用Rust程式語言來建立出猜數字程式的專案,並逐步將它完成!並在撰寫程式的過程中,來練習Rust程式語言基礎的程式語法和引用外部套件的方式。這支小程式在執行之後,將會先從1到100的整數中,隨機抽取一個數字作為答案,並且允許使用者輸入要猜的數字,如果答錯了,程式會回答使用者輸入的數字究竟是大於答案,還是小於答案,並持續讓使用者繼續猜下去;如果答對了,程式會出現使用者贏了的... 繼續閱讀
Rust 學習之路─第一章:認識Rust程式語言 2018 年 6 月 12 日 Magic Len 研究分享、 Rust Rust是一種程式語言,可以幫助您開發出更快、更可靠的軟體。直覺又易懂的高階程式語言(如Golang、Python、JavaScript、PHP)和高效卻難懂而相對低階的程式語言(如C、C++),在設計程式時,這兩者經常會被區分開來。好比說,現在要開發一個網站,通常人們會選擇使用Golang、PHP等專門開發伺服器程式的程式語言,而非選擇C或C++這樣的程式語言;但如果現在是要開發一個講究效能的資... 繼續閱讀
Rust 學習之路─第零章:為什麼要學習Rust程式語言? 2018 年 6 月 10 日 Magic Len 研究分享、 Rust Rust是一個由Mozilla主導開發的程式語言,2015年釋出正式版本。它主打著「安全,並發,實用」,引入了多種其他程式語言的優點,藉由編譯階段時嚴謹的檢查來實現出安全性和效能皆優於其它大部份程式語言的功能。除了適合用來開發高效能的作業系統、系統程式與應用程式之外,也適合用來進行Web服務的開發。 繼續閱讀
如何使用Node.js取得Linux作業系統的記憶體資訊? 2017 年 11 月 11 日 Magic Len 研究分享、 Rust、 JavaScript 使用Node.js開發後端程式的時候,在某些情況下可能會需要查看運行環境還剩下多少的記憶體來決定是否繼續進行工作,那麼該如何使用Node.js來獲取運行環境的記憶體資訊呢? 繼續閱讀
如何在Node.js上使用「sysconf」取得Linux系統的組態資訊? 2017 年 10 月 22 日 Magic Len Rust、 JavaScript 在Linux系統上使用C/C++語言開發程式的時候可以透過引用「unistd.h」來呼叫「sysconf」函數,在程式執行階段(runtime)獲取指定的系統組態資訊,例如記憶體大小、CPU數量、最大行程(process)數或各種的最大字數。然而,如果是想要在Node.js上抓取這些系統組態資訊,該怎麼做呢? 繼續閱讀
計數排序法(Counting Sort),只需線性時間就能完成的超快排序法 2017 年 10 月 21 日 Magic Len 研究分享、 Go、 Java、 Rust、 演算法、 JavaScript 計數排序(Counting Sort)演算法是不需進行比較的排序演算法,顧名思義,它會去數元素的數量來進行排序。這種排序法只需要線性時間和空間的複雜度就可以完成排序,比時間複雜度為O(nlogn)的演算法還快,而且作法也不會太難。雖然如此,計數排序法是並不算是常見的排序演算法,因為它只能用來排序已知數值範圍的序列(由於要直接對應序列的索引值,所以這組數值通常會是一組整數)。舉例來說,已知序列中的每... 繼續閱讀