iT邦幫忙

elixir相關文章
共有 85 則文章
鐵人賽 Software Development DAY 30

技術 多型: Protocol

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

鐵人賽 Software Development DAY 30

技術 30 |> days |> beyond

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

鐵人賽 Software Development DAY 3

技術 什麼是函數式編程,與「等號究竟是什麼意思?」

function? 不是大家每天都在寫嗎? 曾經有人問說「只要會寫程式的人,都一定會定義 function 的啊!那我都用 function 寫程式,就是 fu...

鐵人賽 Software Development DAY 2

技術 環境安裝

Elixir 這個英文字的意思,是鍊金術裡類似「萬靈藥」的概念。所以之前在 google 時,常常會出現這個: 你也會發現 Elixir 語言相關的工具、套件等...

鐵人賽 Software Development DAY 1

技術 Elixir, Phoenix: what and why.

什麼是 Elixir Elixir 是個函數式,動態型別的程式語言。繼承 Erlang 可分散,高容錯的特性,作者 José Valim 希望能在保持 Erla...

鐵人賽 Software Development DAY 5

技術 親愛的,遞迴把記憶體塞爆了

那個很有名的英文程式問答網站 記得當我們昨天在一步步執行遞迴時,在加總前的最後一步是 (1 + (2 + (3 + 0))) 嗎?在遞迴的每一步想要回傳,但仍然...

鐵人賽 Software Development DAY 29

技術 Elixir 中的平行運算

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

鐵人賽 Modern Web DAY 5

技術 比較Phoenix之前,先來聊聊Elixir

這幾天陸續比較了Sinatra、Laravel、Django接下來自然是輪到Phoenix如果有人擔心在前五天就比較完所有框架,那接下來的二十幾天要寫什麼怎麼辦...

鐵人賽 Software Development DAY 28

技術 Macro 及 web.ex

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

鐵人賽 開發技術 DAY 2

技術 erlang 快速導覽之一

先來看看最基本的"變數賦值". erlang的變數,要大寫開頭,述句結束要用句點 "." 來代表結束, 然後erlang...

鐵人賽 Software Development DAY 12

技術 Immutability 及 Lazy evaluation

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

鐵人賽 Modern Web DAY 6

技術 Phoenix起步走:環境安裝與建立專案

今天的內容原本是昨天的後半部但介紹完Elixir之後,如果把Phoenix環境與概述講完感覺篇幅有點略長,安裝切一半又很奇怪不如整篇作為一個獨立的文章,方便有興...

鐵人賽 Software Development DAY 17

技術 資料夾結構與 CRUD

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

鐵人賽 Modern Web DAY 1

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

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

鐵人賽 自我挑戰組 DAY 6

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

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

鐵人賽 Software Development DAY 11

技術 更泛用的高階函式,與資料轉換的旅程

昨天雖然在介紹各個集合時,也順便提到了每個集合的專用函式。但其實在寫 elixir 時最常用到的,是兩個更為泛用的集合處理模組:Enum 及 Stream。而這...

鐵人賽 Software Development DAY 7

技術 匿名函式

Elixir 匿名函式最簡單的宣告語法如下: foo = fn (x) -> x + 1 end 參數的部份也是個 pattern matching,也...

鐵人賽 Software Development DAY 6

技術 Guards 與 Pipe operator

Guards 在函數式編程中,我們總是希望能寫出更富表達能力的函式,儘可能簡化每個 function body 需要處理的內容。Guards 讓你可以在函式的第...

鐵人賽 開發技術 DAY 30
蠻可愛的 Erlang 與 Elixir 系列 第 30

技術 開放電信平台OTP 介紹

概說 在前面的Erlang與Elixir的介紹裡面,已經有關於process的運作, 以及process之間的互動.也對BEAM及porcess有一定的了解....

鐵人賽 Software Development DAY 24

技術 View 與 Template

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

鐵人賽 Software Development DAY 27

技術 Channel.part_2

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

鐵人賽 Software Development DAY 4

技術 函式、模組,還有那些會跳針的。

具名函式:有名的都要比較正式 Elixir 中有兩種函式,具名函式及匿名函式。我們先從具名函式的語法開始: def add_one(x) do x + 1...

鐵人賽 Software Development DAY 23

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

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

鐵人賽 開發技術 DAY 29
蠻可愛的 Erlang 與 Elixir 系列 第 29

技術 Elixir 的 Concurrency

Erlang 與 Elixir的 Concurrency 原理 前面我們已經看過Erlang的Concurrency一些實例. 今天來講一下原理. Erlang...

鐵人賽 Software Development DAY 18

技術 Plug 及 Endpoint

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

鐵人賽 Software Development DAY 25

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

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

鐵人賽 Software Development DAY 8

技術 函式真正的名字、捕獲運算子及 partial application

具名函式的引用名稱 在 Elixir 中,要稱呼一個具名函式,有個固定的格式:模組.函式名/參數個數。這個名稱格式廣泛用於文件及網路上的溝通。打開 iex 試試...

鐵人賽 Software Development DAY 22

技術 再會, model

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

鐵人賽 Software Development DAY 21

技術 沒有很 thin 的 Controller

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

鐵人賽 Software Development DAY 26

技術 Channel.part_1

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