0%

六角學院-專題成果發表-ETF自由配

經過兩個多月的專題開發打磨,回頭看看那些在腦袋中想做的功能,竟然活生生地出現,且依照開發功能依序做動時,不亞於以前開發機台交貨給客戶的快感,甚至有超出的感覺,真是不可思議!


上方為本次專題展示簡報,大家有興趣可以點擊看看


本次想跟大家分享我在六角學院JS直播班開發專題過程及心得,為了方便閱讀,我將專題分成三部分來說明。

一、專題發想-努力把夢做大,火力展示

  從九月課程開放後,會先被加入到 Discord 群組,看到每位學員為了自己專題盡情發想,以及許願想做的功能,而我也不例外加入一同許願,其中洧杰老師、卡斯伯老師及助教們也會給予相關建議及資源。

如下圖-當初洋洋灑灑列了許多功能

老師及助教也會給予建議

  後續就隨著課程一路從使用者故事、wireframe繪製、首頁版面編排、CTA(Call To Action)設計等等,逐漸將專題線稿圖完成,也將功能收斂至能在兩個月完成的範圍。

  1. 我是前台使用者,我想要知道市場上 ETF 目前投報率、持股比例、產業佔比。
  2. 我是前台使用者,我想要註冊/登入功能,可以觀看自己收藏及自組 ETF。
  3. 我是前台使用者,我想要建立/修改/刪除 自主 ETF 配置比例。
  4. 我是前台使用者,我想要知道自主 ETF 與市場上 ETF 績效比較。

網站地圖

線稿圖


二、開啟學習副本-當個海綿盡情吸收

當交出線稿圖的當下,立即就發現原本選定使用的股票行情 API,發送 request 後回傳 response 的時間約為3-5秒,不符合專題使用(使用者體驗不佳),而 富果股市API 僅提供每日的開收盤價、成交量,並沒有專題核心功能需要的 ETF 成分股比例及 產業占比,這時就面臨了 - 果斷放棄題目 or 自己開後端資料庫給API - 二選一的難題,而我選擇了後者。

學習Node.js - 自己挖的坑自己跳!

在決定學習後端後,挑選與JavaScript相近的Node.js作為後端開發語言,一路從 Firebase 資料庫串接、Mongoose / MongoDB 資料庫串接,Express 框架架設、 JWT登入驗證、 Middleware管理權限等等,也不僅將原先開立API功能目標達成,也新增會員註冊、登入、收藏等功能 (其中有許多坑就讓我之後再寫一篇補上吧)

建構 ETF DIY 功能之 Schema

特別要感謝 Ray 助教 所寫的部落格 - 是Ray不是Array,讓我少走許多 Node.js 的坑,在此致上最高的感謝。

重新再次學習 JavaScript - 寫得出來才代表了解!

在同一時間,跟著每周三、五晚上由洧杰老師、卡斯伯老師的直播課程,再次學習 JavaScript 有了不同的體悟,開始理解到面試時被問問題時背後的邏輯,例如:

  • var、let、const 三者的差別為何?
    => 怕你寫出全部都是由var命名的變數、或是用 let 宣告不能被更改變數,導致容易被函式更改其數值。
  • 說明AJAX背後邏輯?
    => 怕你寫完 code,結果接上 API 卻發現無內容(或顯示Promise),也不知道怎麼查錯。

也將這些內容一一的寫在個人部落格,在寫作的過程中不僅僅是筆記紀錄,更多得到的是反思背後邏輯以及如何表達,也讓自己對 JavaScript 語言特性理解增添不少 (每次寫文章都覺得比寫code難)


三、專題衝刺 - 與時間賽跑、切分成小里程碑

到了距離專題發表前三週,許多同學都開始焦慮起來,擔心自己可能完成不了作品,而我也是其中一員,而洧杰老師透過課程告訴我們,如何將開發進度切分、善用番茄鐘工具,讓自己能專注於目標上減少焦慮,而我也就列出要完成的目標,並規劃時程、每日查驗開發進度。


最終我也順利完成了本次專題作品 - ETF自由配

能將一個作品從無到有給實作出來,雖然那過程是辛苦且令人想放棄,但謝謝六角學院的老師助教同學們一同討論與學習,讓我能夠堅持到最後一刻,並完成作品。

謝謝您看到這,我是李國閔,與你分享我的座右銘:

把腦袋中的想法,從無到有實踐出來是件很令人興奮的事!