Boxenn 的 error handling Boxenn 的實作可以在這邊複習。 Use Case 中的 error 可以分為兩種,可預期的錯誤和不可預期的...
24 - Design Pattern(4) - Calculator Calculator 的 design pattern 在平常算是沒看到的,主要是之前專...
在 Boxenn::UseCase 中處理 validation? dry-monads 中有提供 validate 的功能,他的特色是不會中斷執行,而是等到所...
23 - Design Pattern(3) - Builder Builder pattern 常常也被叫做 adapter,主要目的是提供一種根據情況 re...
22 - Design Pattern(2) - Presenter Presenter pattern 的原理是,是 Model-View-Controlle...
Use Case Spec 這邊以之前的 use case 當作例子來撰寫測試。 首先要能快速地建立測資,需要透過 Factory Bot 制定規則。 # or...
在實務中,常常會有花很長執行時間、或需要排程的邏輯,這時候便會需要進行非同步處理。 在 Boxenn Use Case 上擴充 sidekiq worker s...
21 - Draper 上篇 Design Pattern(1) - Decorator 簡單的介紹了自己生一個 decorator,不過可以發現東西會經過 h...
Domain 間的依賴 在專案中,除了 domain 內上下層的關係外,domain 之間也會有依賴關係,而為了不讓 domain 間過度耦合,我們透過 wis...
20 - Design Pattern(1) - Decorator Decorator pattern 的原理是,增加一個修飾類包裹原來的 class,包裹的...
Use Case 定義對外唯一的 method call 利用 dry-monads 的特性處理預期及非預期錯誤 use case 內利用 steps 拆...
19 - Activerecord-import 在寫入資料的時候,時常會有大量資料一次 import 的情況,可能是匯入整個 csv 檔案到資料表、或者是接收...
18 - Config 這篇將介紹與上篇 Configatron 相同功能類似的 Gem - Config。 gem install # Gemfile...
17 - Configatron Rails 內時常會用到共用的連結、字串、數字等 config,除了可以寫在 yml 來處理外,也可以安裝現成的 Gem 來使...
緣起 Use Case 的職責是把業務邏輯封裝,一個 Use Case 大致可以對應到一個 User Story。一開始我們對 Use Case 要怎麼設計並沒...
Q: 為甚麼原本 ActiveRecord 提供的 ORM 不用,要再包一層自己的 ORM? 在本系列的第2~5篇中有稍微提到過,這邊列點整理 Model 沒...
準備工作 在開始介紹如何測試 repository 之前,要先帶過有使用的一些套件本系列文章以 Rspec 作為測試用的框架,並且有使用 FactoryBot...
延續上篇 customize tooltips with data attribute 後,另外也來自己手刻一個麵包屑吧~ 可能想說套個 bootstrap 像...
Repository 將 source wrapper 、 record mapper 、 factory 都完成後,在 repository 裡只需要簡單的歸...
來檢討自己啦! 文章太過冗長,想說得太多,沒有好好整理,沒有清楚表達重點。 應該多說寫技術性的內容,用code或實作來解釋,反而效果不好。 這三十天,花在...
15 - customize tooltips with data attribute 雖然這次想介紹的東西偏向後端為主,不過畢竟寫 ROR 除非前後端完...
Source Wrapper source wrapper 的職責很簡單,他負責將外部資源的介面轉換給 Boxenn::Repository 使用。在 Boxe...
14 - counter cache 在許多情況下,會需要統計一對多關聯的資料數量。舉例來說像是 User has_many Post。這時如果要統計該 use...
很簡單的一個問題,但其實了解後蠻好玩的。 When google translate length : 長度。size : 尺寸。count : 計數。 Wh...
擴充 Record Mapper 大部分 domain 的 mapper 皆為 key 的轉換,而在此範例中使用的外部資源為 ActiveRecord,他大部分...
文章目的只有練習串接requset部分,不是實作。實作這樣搞,一定會出事。 1.建立專案及products、order。 建議安裝gem "figar...
13 - migration notes Database GUI 上個專案跟這個專案剛好 db 都是用 mysql,分享一下匯入資料的方法,還有一些 mig...
建議搭配之前的 sequence diagram 一起服用! Dry Initializer 在進到 Record Mapper 和 Factory 之前,先來...
12 - rescue exception 異常處理在開發過程中時常可見,舉例來說 Rails 中找不到對應的 routing 的時候則會丟出 Routing...
單純以node.js與Ruby.rb檔案測試。 V3訂單內容。 參考官方文件,只列出必填。 { "amount" : "與V2...