iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Modern Web

向 Rails 致敬!30天寫一個網頁框架,再拿來做一個 Todo List 系列

模仿 Rails,從無到有,建立一個 MVC 框架

從建立框架的過程中,理解「為什麼這樣做?」

從建立框架的過程中,學習 Ruby 各種技巧

從建立框架的過程中,了解原來 Rails 幫我們做了那麼多事情!

揭開 Rails「黑魔法」的面紗

跟我一起利用這30天,開發一個 web 框架向經典致敬

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

[DAY 21] 復刻 Rails - 用 Rails 的方式整理程式碼 Active Support

還記得之前我們實作 dependencies.rb 這個檔案的目的是什麼嗎? # mavericks/lib/mavericks/dependencies.rb...

DAY 22

[DAY 22]復刻 Rails - Application 啟動過程

關於 Rails web 應用程式的啟動過程,對於初學者來說並不會是首要目標,大多數還是會先從 MVC 架構開始學起,但如果學習到一定的程度,想要更深入了解 R...

DAY 23

[DAY 23] 復刻 Rails - 用 Rails 的方式整理程式碼 ActionController

經過這幾天的重構整理,看起來越來越有點樣子了,雖然剩下 7 天(扣除掉最後一天完賽宣言衝篇數),但其實還有很多功能還沒實作完成,尤其是看到 applicatio...

DAY 24

[DAY 24] 復刻 Rails - 關於 before_action

昨天我們示範了如何在 module 裡面用 super 來擴充方法,今天就來將昨天學到的觀念應用在我們的框架裡面 關於Metal Rails 在 ActionC...

DAY 25

[DAY 25] 復刻 Rails - 千層蛋糕 Rack Middleware

鐵人賽已經接近尾聲,今天要來聊聊 Rails 很重要的一個部分,也是初學者比較少了解到的東西,就是Rack Middleware,你可以在手邊的 Rails 專...

DAY 26

[DAY 26] 復刻 Rails - 關於 Routing

還記得我們最一開始是怎麼處理 routing 嗎? 程式碼大概是像這樣 class App def call(env) if env['REQUES...

DAY 27

[DAY 27] 復刻 Rails - Routing 威力加強版 - 1

昨天我們做了一個 MiniSinatra 來實作 routing 的部分,今天我們將會運用一樣的方式在我們的 Mavericks 加上這個功能,用 DSL 來寫...

DAY 28

[DAY 28] 復刻 Rails - Routing 威力加強版 - 2

承續昨天的實作,今天就來補上 Routing 的最後一個步驟 還記得我們怎麼實作 MiniSinatra 的 DSL 嗎? # MiniSinatra def...

DAY 29

[DAY 29] 復刻 Rails - View 威力加強版 - 1

其實我們的 Mavericks 已經做得差不多了,但就是那個 View 總覺得還可以再更好,如果仔細看 Rails 的原始碼,會發現有一個叫 ActionVie...

DAY 30

[DAY 30] 復刻 Rails - View 威力加強版 - 2

終於到最後一天了,那就不囉嗦直接進入正題吧! 關於 rendering.rb 之前我們的做法是把 render 寫在 Controller 裡面,畢竟 rend...

從南美回來的礦工的收藏
從南美回來的礦工的追蹤
從南美回來的礦工的Like
從南美回來的礦工的紀錄