弦而時習之

對我來說軟體開發是一件非常有趣的事情,然而許多時候並不一定能滿足條件。

為此,我開始思考如何讓大眾「開心寫程式,製作有趣事物」的方法。

  1. 弦而時習之
  • 智慧搜尋
  • 系列連載
  • 網誌文章
蒼時弦也蒼時弦也
Aug. 21

深入 magnus 以 Rust 為基底的 Ruby Gem 開發

最近因為工作的關係稍微回顧了一下 Open Policy Agent 而發現了 AWS 推出的 Cedar Language 更適合在軟體應用上實現類似 AWS IAM 的 Policy(政策)機制,因為是以 Rust 為基底,為了讓 Ruby 可以使用,就決定嘗試使用 Rust 來撰寫 Extension。

  • #Ruby
  • #Rust
  • #經驗
了解更多Read More
蒼時弦也蒼時弦也
Aug. 16

ActiveRecord 的限制 - 重新思考 Rails 架構

當我們要透過 Ruby on Rails 這個框架來開發這樣的系統時,該如何進行設計呢?大多數時候我們會以模型(Model)為基礎思考,這在 MVC(Model ViewController)框架上還算常見,因為核心邏輯大多會被實作在 Model 上。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Aug. 09

通用化功能 - 重新思考 Rails 架構

在專案初期客戶有提到,第一階段要處理的客戶是最複雜的,只要能夠解決這個客戶的需求,未來就能夠讓客戶服務的其他客戶都能夠使用這套系統。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Aug. 02

報表機制 - 重新思考 Rails 架構

報表功能也是非常常見的情境,大多數時候我們都會直接使用 Rails 的資料庫內容,搭配 JOIN 類型的查詢進行處理,然而這並不總是個好辦法。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Jul. 26

時區換算 - 重新思考 Rails 架構

在整個系統的開發過程中,因為客戶的服務是世界性的,因此還需要考慮到時區問題。然而只是單純的時區換算並不會造成問題過於複雜,而是在時區的呈現上並不像我們平常理解的那樣。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Jul. 19

複雜的操作 - 重新思考 Rails 架構

現代大部分的軟體都會考慮到使用者體驗(User Experience)因此都會盡量設計成簡單易懂的操作,然而仍有一些例外的狀況,像是有高度專業需求的系統,或者一些傳統產業長久以來的習慣,當時客戶就屬於這一類型。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Jul. 12

資料驅動設計 - 重新思考 Rails 架構

當時收到新客戶的需求時,表示是一套很老舊的系統無法維護,急需開發一套新系統來維持業務的運作。客戶自己的工程師已經忙不過來,因此找到我當時任職的公司協助開發這套新系統,並且表示他們已經分析完畢,只需要依照 ERD(Entity-Relationship Diagram)實作即可。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
Jul. 05

軟體架構的挑戰 - 重新思考 Rails 架構

約 2010 年左右,我開始接觸到許多程式語言的社群、研討會,因此大量吸收許多軟體開發的知識。當時,在業界中一個很常被提到的職稱「架構師」對當時還是學生的自己似乎有點遙遠。而我直到十多年後,才意識到「架構」的意義。

  • #Rails
  • #Domain-Driven Design
  • #設計
  • #Clean Architecture
了解更多Read More
蒼時弦也蒼時弦也
May. 24

累積價值 - Cucumber 的文件測試法

經過一系列的實作,Cucumber 的特色讓我們很容易的在不同語言、環境中轉換,同時又能夠扮演文件的角色,更難得的是他可以在不同語言中使用,這讓我們在未來對應不同需求時能有更大的彈性。

  • #Cucumber
  • #心得
  • #測試
了解更多Read More
蒼時弦也蒼時弦也
May. 17

重現後端實作 - Cucumber 的文件測試法

經過調整成 ViteRuby 的專案結構後,我們已經讓 Vite 所撰寫的前端恢復基本的功能。然而我們使用 Grape 所撰寫的後端行為還無法正常運作,因此接下來我們要用類似的方法將後端重新實現,並且通過所有的 Cucumber 測試。

  • #Cucumber
  • #教學
  • #測試
  • #後端
  • #Rails
  • #ViteRuby
  • #Vite
了解更多Read More
上一頁
  1. 4
  2. 5
  3. 6
  4. 7
  5. 8
下一頁
Mastodon
Copyright © 2025 蒼時弦也. All rights reversed.