30天快速上手製作WPF選股工具 — 從C#基礎到LiteDB與Web API整合
這是一個為期30天的學習系列,專為想要快速上手 C# 與 WPF 的開發者設計。系列會帶你從 零基礎的C#語言概念 出發,逐步學會物件導向、集合操作、非同步程式設計,再進入 WPF桌面應用程式開發,包括 XAML 介面設計、MVVM 架構、資料繫結與介面客製化。
除了語言與UI基礎,我們也會實作一個 選股工具,透過以下技術串接:
LiteDB:輕量化本地資料庫,存放股票清單與篩選結果。
Web API 呼叫:從公開或模擬的API取得即時股票資料。
昨天我們學會了如何從 UI 呼叫 API,把股票清單顯示在 DataGrid 上。今天要解決一個新問題:離線狀態要怎麼用? 解法是:下載的資料存進 LiteDB...
昨天我們已經把下載的股票清單存進 LiteDB,並且可以從本地載入。今天要進一步加上 搜尋與篩選功能,讓使用者可以: 輸入關鍵字搜尋代號或名稱 勾選「只顯示...
為什麼需要 Style 一致性:按鈕、輸入框、表格的外觀一致。 可維護:修改一處資源,全站同步。 可複用:專案擴充時不需重複貼樣式。 基本觀念:Resou...
今日目標 今天我們把前幾天的成果串起來,完成 選股工具的資料基礎建設: 使用 IStockApiService 抓取股票的 日 K 線資料(近一年或增量補齊)...
你會得到什麼 在 MyStockApp 中導入 MS.DI 的最小可行實作 用 Generic Host 建立 IServiceProvider 一次註冊...
今日目標 在這篇中,我們要解決一個實務問題:FinMind API Token 要放哪裡? 許多人在專案中會直接把 Token 寫在程式碼裡,例如: var a...
今天我們暫時放下程式功能開發,聊聊一個每位 C# 工程師都會遇到的問題:try-catch 要怎麼寫才寫得好? 很多人以為「有捕例外就安全」,但實際上,不完整的...
今天我們不講程式、不講架構,來聊一個幾乎所有開發者都在用的工具:Git。但這次不講指令大全,而是聊聊「為什麼你的 Git 流程讓同事抓狂」,以及怎麼讓自己的 c...
寫程式時最常聽到的一句話是: 「我只是改了一行,結果別的功能壞了。」 這就是沒有測試的代價。今天,我們要談的是能讓你在重構時依然安心、改程式不必靠運氣的武器...
經過這 30 天,我們從 C# 語法基礎 出發,一路學到 WPF 架構、資料繫結、LiteDB 本地資料儲存、API 整合、技術指標計算、單元測試,最終完成了一...