Elixir 最多被使用還是再web開發的領域,而其中最廣為人知的框架是Phoenix。
尤其是與Ruby有點神似的語法,讓他獲得了一些Ruby開發者的喜愛。
Phoenix 基於前幾章節所提到的Ecto, cowboy, plug等,集成了Elixir目前比較主流的一些開發工具,是即開即可用的開發環境。
而且配合 Elixir 精簡的語法,Phoenix 可以幫助開發者用快速簡潔的方式完成 web 應用。
並且根據官網介紹,Phoenix有以下幾個特點。
實時的交互,Phoenix 可以透過少量的程式碼容易的做到用戶之間的交互並知道其他節點的用戶的訊息,並且透過liveLive,可以減少前端的複雜性或是前後端共用邏輯。
與現在許多主流web框架一樣,Phoenix採用MVC的架構,可以幫助開發者快速並且有系統性的完成web應用。
內件的指令可以幫助開發者快速地完成許多需要完成的工作,並且有內建的實時儀表板,可以方便的監控自己的應用。
並且,還有許多Elixir本身的好處
因為本身運行再 Erlang VM 上,所以許多Erlang原本生態系的套件是可以互用的。
Elixir 有極輕量的Process,且在處理高併發的應用時,會有很好的效能,而且更容易實踐。
LiveView
LiveView 是 Phoenix 官方所推出的後端渲染的框架,也是我對Elixir最感興趣的一個部分(感覺很好玩XD)。
配合類似vue一般,在模板上加上phx-
的寫法,他可以透過web socket的方式來將前端使用者互動的邏輯搬到後端做處理,也可以做到前後端共用邏輯的效果(例如表單驗證等)。
希望在系列文的最後,可以用LiveView做出一點簡單的小東西玩玩。