---
# System prepended metadata

title: Rails Developer Foundation (Beta-0114)
tags: [課程筆記, Rails Develoepr Foundation]

---

---
tags:
 - Rails Develoepr Foundation
 - 課程筆記
---
# Rails Developer Foundation (Beta-0114)

連結：http://bit.ly/3Zzdk1m

![](https://i.imgur.com/YrsgYe7.png)


## 事前準備

考慮到練習的時間，課程基本上會以 Pair/Mob Programming 的形式進行，然而仍建議有自己的開發環境方便未來練習。

### 開發環境

請以能夠運行這個 [GitHub Repository](https://github.com/StarPortal/rails-developer-foundation-template) 的前提下安裝環境，相關的安裝說明可以參考 README 的內容。

| 環境        | 版本 |
|------------|------|
| Ruby       | 3.1+ |
| PostgreSQL | 14   |
| Node.js    | 18   |

#### 命令

請確認可以確運行以下命令

| 命令                    | 說明
|------------------------|----------------------------
| `bundle exec cucumber` | 驗收測試用，本次課程只會使用這個
| `bundle exec rspec`    | 單元測試用
| `./bin/dev`            | Rails 伺服器

### 工具

上課過程會使用以下工具

| 名稱              | 說明                             |
|------------------|---------------------------------|
| [FigJam](https://www.figma.com/file/Hd7t6fQpQ86YyDuG2OebDY/20230114---Rails-Developer-Foundation-Beta?node-id=0%3A1&t=oF2dzenqQJDlwzxl-1)           | 需求分析練習，請確認瀏覽器可以正常開啟 |
| [JetBrains Client](https://code-with-me.global.jetbrains.com/zYPJMEJGxLKhYScypuWlmQ#p=RM&fp=5D2EE1D4E6AC671D8F55DC4151A3A4964988F0E2BD9F827A19B7281F5021CC86) | 安裝連結上課當天公布                |
| 習慣的編輯器       | VSCode、Vim 等皆可                |

## 課後問卷

麻煩大家協助填寫改善課程品質，以及了解大家對哪些類型的內容更有興趣

https://www.surveycake.com/s/GPol9

## 講師資訊

課程內容無法涵蓋的部分，可以追蹤網誌、YouTube 會以小單元或者系列連載的方式分享出來。

| 網站 | 介紹 |
|-----------------|------|
| [個人網誌](https://blog.aotoki.me) | 系列文章連載、主題式討論
| [Facebook 粉絲專頁](https://fb.me/aotoki.me) | 主題式討論
| [YouTube 頻道](https://www.youtube.com/channel/UCcABbJfCL0DfNh3wDk_-7lg) | 技術講解
| [Discord 社群](https://discord.com/invite/t2Kd6PNvvA) | 技術討論，上課的問題也可以在此發問
| [訂閱電子報](https://mailchi.mp/aotoki/rails-developer-foundation) | 即時收到網誌通知

## Key Examples


* General 
    >一句話表達需求

    想做個贊助系統，一個對於單一創作者的單次匿名贊助服務

* Scope

    * 要的功能(不要混在一起寫，可再拆細)
        1. 可以顯示贊助資訊列表(日期 / 金額/ 贊助總金額 / 年月日篩選) 
        2. 贊助方式：藍新 / 最低台幣 100 元 / 可重複 / 可匿名免登入
        4. 贊助者贊助訊息：客製化(以 1000 塊為界)(要再細問訊息要顯示什麼)
        5. 有人贊助就馬上收到款項（但是這個會跟藍心金流取款規範有關須確認是不是可以100%取款以及匯款工作日，目前看官網的資訊是無法馬上取款）

* Assumptions 
> 盡量問跟實現需求的基礎功能，專注在 「贊助功能」上，bouns 先等等，會搞死自己

金額級距，如何設定？固定級距？使用者自己設定？

* Key Examples
     
`小詹`會進入一個蒼時的介紹頁面，並且有一個可以看到輸入金額的input並點擊贊助的按鈕

`小詹`贊助100元成功的話，會收到"謝謝"的 畫面 訊息


`蒼時` 可以在後台根據 `年份`, `月份`, `日期` 來做贊助的篩選，每筆資料只有日期跟金額。


## 共筆區域

> 歡迎在這裡撰寫筆記跟其他同學協力紀錄
> [name=蒼時弦や]


### 資訊 Information V.S. 資料 Data
- Information 有 context ； data 沒有。 Data 可以被轉為（有 context 的） information 。


> ex. 100 是 100，公分是公分，都是**資料**，但 100 公分就是具有意義的一種**資訊**。

### 需求和規格的差異在哪裡？
- 規格是有明確定義的

### 事件
事件是「已確定」被觀察到的事情，其中一件是「輸出」。

#### Actor -> Command -> System -> Event
Example:
Subscriber -> Subscribe -> Create subscription -> Subscribed
