軟體開發的過程時常會有"這我好像在哪看過"、"這我之前有寫過"的OS,為了讓自己更好的紀錄以及加速開發的流暢度,養自己的code base是一個不錯的方式。
作為此系列(同時是此部落格)的第一篇文章,以下針對已有的code base做描述及規劃:
- 專案結構
- 套件引用
- 未來code base規劃
專案結構
我的專案結構主要由一個快速測試用的console專案,作為共用函式庫的standard2的library專案,以及一個以.net framework MVC5為主的web專案。
由於,目前工作開發上主要.net版本為.net framework,因此以.net framework為主,未來有機會會再加入.net core的版本。
套件引用
因篇幅問題,此篇先記錄目前有用到的套件,後續篇章再一一記錄程式實作:
- Aspose.Cells(23.6.0)
- Aspose.Words(23.6.0)
- Autofac.Mvc5(6.1.0)
- Autotfac(7.0.1)
- StackExchange.Redis(2.6.116)
- Json.Net
- NLog
- Linq
未來規劃
Library的部分並不會將儲存及商業邏輯置於其中,而是著重在共用方法,以及套件的helper的撰寫,因此未來仍需新增儲存邏輯及商業邏輯的專案。
另外,由於目前工作上的實作,會另外切分一個api的專案出來,讓web的專案可以更關注在web的流程以及畫面,未來我的code base也會新增。
最後,由於大型的MVC專案在做model跟view的binding時,viewmodel有時候會多到吐血,因此會引入前端框架來處理這塊,目前是使用vue.js來處理。
結語
作為此系列紀錄用的第一篇文章,我會動態的調整此篇來確認code base已記錄的狀態,並作為後續文章的索引,如下:
個人CodeBase紀錄 - EP.1 先來加入類別庫 真酷
個人CodeBase紀錄 - EP.2 不想 Bind data 到吐,來自訂一下 Aspose 的擴充
個人CodeBase紀錄 - EP.3 點我下載! ajax呼叫action回傳檔案流
個人CodeBase紀錄 - EP.4 你說你錯了,那你錯在哪? NLog套件當你的貼身小祕...