挑戰 - 完成銀行專案功能

已完成

您有一個具備一些基本功能的程式。 但少了一項功能:將錢轉入其他帳戶。 這項挑戰包含新增此項功能,加上我們認為能提升現有 API 價值的另一項功能。

實作轉帳方法

建立轉帳方法時,請記住下列幾點:

  • 您必須能夠實作將錢轉入其他帳戶的功能。 在此案例中,您必須使用至少兩個帳戶 (而不是一個) 將程式初始化,和我們前面做的一樣。
  • 因為您要在核心套件中新增方法,所以請先建立測試案例,確保您能撰寫出正確的轉帳邏輯。 請密切注意您在函式與指標之間溝通的方式。
  • 您的轉帳方法應該收到您要轉帳的金額,且在某個帳戶物件中加入該金額。 請務必重複使用存款和提款方法以免重複 (特別是針對錯誤處理)。
  • 請記住,如果餘額不足,您就無法將錢轉入其他帳戶。

修改對帳單端點以傳回 JSON 物件

目前如果您想要將 /statement 端點公開為 API,則端點會傳回不適用的字串。 修改端點以傳回 JSON 格式的帳戶物件:

"{\"Name\":\"John\",\"Address\":\"Los Angeles, California\",\"Phone\":\"(213) 555 0147\",\"Number\":1001,\"Balance\":0}"

我們希望您假設使用您核心套件的任何人都可能會想實作其他對帳單方法來變更輸出。 因此您必須進行適當的變更,讓您的核心套件易於延伸。 換句話說,您必須:

  1. 建立具有 Statement() string 函式的介面。

  2. 在您的核心套件中建立新的 Statement() 函式,接收您建立為參數的介面。 此函式應該呼叫您結構中已有的 Statement() 方法。

    當您進行這些變更,您就可以建立自訂的 Account 結構和自訂的 Statement() 方法。 您可以回到有關結構 (內嵌) 和介面的課程模組,回想如何進行這些程式碼變更。

祝各位編碼程式愉快!