iT邦幫忙

elixir相關文章
共有 85 則文章
鐵人賽 Modern Web DAY 9

技術 Day 9 |> 模組函式 (Named Function)

匿名函式可以有效的作為資料或參數傳遞,有著好用的靈活性。但我們總是會希望將相同功能的function進行封裝,方便找查與拿來使用,因此才會有模組(Module)...

鐵人賽 Modern Web DAY 8

技術 Day 8 |> 匿名函式 (Anonymous Function)

因為Elixir是函數式的程式語言,因此function在elixir中是一等公民,可直接宣告存進變數中,也可以做為參數傳入其他函式做執行,基本上跟一般的資料型...

鐵人賽 Modern Web DAY 7

技術 Day 7 |> 資料的不變性 (Immutability) 以及 模式比較 (Pattern Matching)

資料的不變性 (Immutability) Elixir是個函數式的程式語言,因此他有一個特性,也就是資料具有不變性。簡單講就是當一個資料被生成後就無法對其進...

鐵人賽 Modern Web DAY 6

技術 Day 6 |> 集合資料型態 ( Collection ) - Map (映射)

Map (映射) Map是一種類似於JS的Object或是Python的Dictionary的資料型態,其表示法是用%{}包裹,並且以key => va...

鐵人賽 Modern Web DAY 5

技術 Day 5 |> 集合資料型態 ( Collection ) - List (串列)

List (串列) 在elixir中,List串列是資料結構中的single-linked-list的實作,他長得像這樣:[1, "haha&quo...

鐵人賽 自我挑戰組 DAY 6

技術 Day 06 - 混合神奇魔藥:Elixir Programming Language

Elixir Programming Language 是 Ruby Programmer José Valim 嘗試提升Ruby效能時,發現Ruby沒有適合的...

鐵人賽 Modern Web DAY 4

技術 Day 4 |> 集合資料型態 ( Collection ) - Tuple (元組)

元組 (Tuple) 元組是一組固定大小的記憶體空間,用大括號包裹,裡面可存放種型態的資料,並且與其他語言的陣列一樣,讀取所花的時間是O(1)。 iex(1)...

鐵人賽 Modern Web DAY 3

技術 Day 3 |> 基本資料型態

如同各個語言,elixir有整數,並且在不同的前綴下被視為不同進位的整數 iex(1)> 24 24 iex(2)> 0b11000 24 iex...

鐵人賽 Modern Web DAY 2

技術 Day 2 |> 安裝,啟動,開始練丹

在各個不同的作業系統下,通常會有不同的安裝流程,所以安裝過程大家就自己去看官網的教學。安裝說明 安裝elixir的過程中,通常也會將erlang一起安裝下來,因...

鐵人賽 Modern Web DAY 1

技術 Day 1 |> Elixir介紹,為甚麼要學Elixir

這次開賽的主題,是因為在偶然間認識了elixir這個語言,其中函數式編程的概念,特別的吸引我。 如果去看官網的logo,可以看到一個大大的水滴狀,是非常好看的...

鐵人賽 Software Development DAY 30

技術 30 |> days |> beyond

透過 30 天的文章,我們看過了絕大部份的 Elixir 語法、背景與哲學,說明了 Phoenix 的世界觀,並概略的瀏覽過各個組件的運作方式。藉著思考用什麼...

鐵人賽 Software Development DAY 30

技術 多型: Protocol

雖然我也很想趕快發個感想文結業,但是題目講不完只好再寫一篇。這一篇想來示範所謂的新的角度看程式的一個例子,就是不需要封裝與繼承,還是可以有多型這回事。 一點點理...

鐵人賽 Software Development DAY 29

技術 Elixir 中的平行運算

Elixir 繼承 Erlang 語言的特性,說平行運算是它最重要的功能也不為過。先前曾提到在 Elixir / Erlang 裡的 light-weight...

鐵人賽 Software Development DAY 28

技術 Macro 及 web.ex

在討論 Phoenix 的 web.ex 之前,我們先來聊聊 Elixir 中我最喜歡的特性,macro。熟悉 Ruby 的人,可能會知道 Ruby 帶有許多好...

鐵人賽 Software Development DAY 27

技術 Channel.part_2

上一篇示範了如何做出一個會動的 Channel,接著要來解釋這些是怎麼運作了。在昨天我們修改過的檔案中,排除掉增加網頁元素的 templates/page/in...

鐵人賽 Software Development DAY 26

技術 Channel.part_1

Phoenix 在最初設計時,其中一個重要的目標就是想解決高併發的訊息傳送情境。雖然 Erlang / Elixir 原本就有 message passing...

鐵人賽 Software Development DAY 25

技術 測試與文件,and one more thing…

測試跟文件是許多 developer 最不想面對,卻也是非常重要的部份。 Elixir 在相關工具的整合上非常用心,讓大家能輕鬆愉快養成寫文件與測試的好習慣。由...

鐵人賽 Software Development DAY 24

技術 View 與 Template

之前幾次在 五倍紅寶石的 React 講座 裡,我都會這樣說: 人類在開發各式 Web 框架的過程中,意識到了其實 View 分為兩個部份,一是 view...

鐵人賽 Software Development DAY 23

技術 不是 ORM,但是更好用: Ecto

上一篇提到了 Context 及 Schema 的概念,這篇要來談談實作的部份。Phoenix 從最初就是採用 Ecto 這個函式庫來處理資料庫相關的事務。所以...

鐵人賽 Software Development DAY 22

技術 再會, model

之前我們不斷的明示暗示 Phoenix 已經不太算是個 MVC framework 了 (雖然某些官方文件還是會用 MVC 這個字) 。最主要的原因,在於 20...

鐵人賽 Software Development DAY 21

技術 沒有很 thin 的 Controller

前情提要 經由 Endpoint 的 pipeline 處理,並依 URI 進行分派之後,connection 將會傳到的 Controller 的個別函式中。...

鐵人賽 Software Development DAY 20

技術 Router.part_2

話說進行到了第二十篇還停在 Router,我幾乎要確定三十篇寫不完想講的東西了。一定是之前碎念太多了。今天要來繼續談 Router 的其它功能。 scope 在...

鐵人賽 Software Development DAY 19

技術 Router.part_1

上一篇我們從 Endpoint 手中接過了 connection,裡面有經過初步處理的 HTTP request 內容。 在大多數的情況下,開發者很少需要自己寫...

鐵人賽 Software Development DAY 18

技術 Plug 及 Endpoint

Plug 在繼續解釋其它的元件之前,要先來解釋一下 Plug。Plug 是 elixir 網路應用間溝通界面的規範,官方有管理一個通用的實作。如果你熟悉 Rub...

鐵人賽 Software Development DAY 17

技術 資料夾結構與 CRUD

本篇將介紹 Phoenix 的資料夾結構,及用於快速產生 CRUD 功能的模版生成指令。 接續上次的文章,我們來看看 hello_phx 資料夾裡目前有什麼東...

鐵人賽 Software Development DAY 16

技術 那種會從灰燼裡復活的鳥: Phoenix

中場前言: Unlearnt what you know 請容我引用一句話做為開場: Command line interface is user frien...

鐵人賽 Software Development DAY 15

技術 mix 專案,與使用其它模組裡的函式

本篇將解釋 mix project 的基本概念,以及各種函式的呼叫方式。 mix mix 是 elixir 內建的多功能指令。它可以用來新建專案、安裝管理函式庫...

鐵人賽 Software Development DAY 14

技術 Sigil 及 Struct

Sigil 也是個鍊金術哏,中文的意思是「符文」。這個語法是為了統一各種情況所需的文字類表達式,並提供語言上擴充的空間,以符合各種不同領域的需求。 文字類表達式...

鐵人賽 Software Development DAY 13

技術 條件分支,還有不是你以為的那個 for

江湖上總有個傳言,說函數式編程的神人不需要 if 跟 else,只要 map, filter, reduce 就可以把事情都做完了。我覺得這個傳言該是要有中文版...

鐵人賽 Software Development DAY 12

技術 Immutability 及 Lazy evaluation

「不可變性」聽起來就怪怪的 談到函數式編程時,總是會看到 immutable 及它的名詞 immutability。我們今天就試著解釋這個觀念,及它在函數式編程...