
大家好,我是沙漠盡頭的狼。
我的網站 Dotnet9 (https://dotnet9.com) 進行了新一輪的重構:前台由 Vue 3 換回 ASP.NET Core Razor Pages,風格以簡約為主,主打內容為王,放棄花俏,網友稱風格類似早期部落格園,站長其實買的楊青青個人部落格(https://www.yangqq.com/)的靜態模板;後端採用 MASA Framework 搭建,框架位址是 https://www.masastack.com/framework,後端依然以 DDD 設計為開發指導,這次加入了 CQRS。開發總體規劃是:後端框架採用 MASA Framework 應該是不變了,並且前後台現在全面擁抱了 .NET 8。
對了,網站開源位址是:https://github.com/dotnet9/dotnet9 。
怎麼又重構了?
隨著技術的不斷發展,網站的重構已經成為了一個必然的趨勢。為了更好地滿足個人學習的需求,提高網站的效能和用戶體驗,Dotnet9 網站進行了新一輪的重構。本次重構主要包括前台和後台兩個方面。
前台重構
技術棧:ASP.NET Core 8.0 Razor Pages
在前台方面,Dotnet9 網站將原來的 Vue 3 換回了 Razor Pages。這是因為 Vue 3 雖然有很多優點,但是在效能和 SEO 方面還存在一些問題。而 Razor Pages 則更加適合於構建前台網站(服務端渲染),具有更好的效能和 SEO 優化效果。
同時,Dotnet9 網站在風格上也進行了一些調整。網站的風格以簡約為主,放棄了過多的花俏效果,更加注重內容的呈現。這種風格類似於早期的部落格園,讓用戶更加專注於閱讀和學習。
後台重構
技術棧:ASP.NET Core 8.0 Web API ( MASA Framework + EF Core 8.0(PostgreSQL), DDD + CQRS)
在後台後端方面,Dotnet9 網站採用了 MASA Framework 作為開發框架。MASA Framework 是 .NET 下一代微服務開發框架,助力開發者和企業開啟全新的現代化應用開發交付體驗。
在開發設計上,Dotnet9 網站依然採用了 DDD(領域驅動設計)的思想實踐。這種設計思想可以幫助開發者更好地理解業務需求,將業務邏輯和技術實現分離開來,從而提高程式碼的可維護性和可擴展性。
此外,Dotnet9 網站還加入了 CQRS(命令查詢職責分離)的設計模式,由 MASA Framework 提供技術支援。CQRS 是一種與領域驅動設計 (DDD) 和事件溯源相關的架構模式,它將事件(Event)劃分為 命令端(Command)和 查詢端(Query),可以提高系統的效能和可擴展性。在 Dotnet9 網站中,部落格文章的查詢就使用了查詢(Query),文章閱讀統計(開發中)使用了命令(Command)。
小結
Dotnet9 網站的重構,不僅提高了網站的效能和用戶體驗,還採用了最新的技術和設計思想,使得網站更加具有可維護性和可擴展性。在未來的發展中,Dotnet9 網站將繼續秉承這種理念,不斷優化和改進,為用戶提供更好的服務,當然主要以個人學習、不斷演進為主。
成果展示
首頁:

文章專輯:

文章詳情:

原始碼
這次把歷史分支也做了清理,只保留 develop 和 main 分支。
倉庫:https://github.com/dotnet9/dotnet9
解決方案結構如下:

前台主工程:Dotnet9.RazorPages

後端主工程:Dotnet9.Service

- Dotnet9.Commons:工具庫
- Dotnet9.Contracts:暫時放 Dto 類
- Dotnet9.RazorPages:前台主工程,逐步完善
- Dotnet9.Service:後端主工程,暫時將各種分層檔案放一個工程,有需要再分庫
- Dotnet9.Admin:後台前端暫定
等網站開發完成,寫個 Dotnet9 網站前後台開發系列教學分享,不是今年,就是明年....
本文就到這裡,去旅遊了....
技術交流
- 微信公眾號如下:Dotnet9
- 微信技術交流群:添加微信(codewf)備註「入群」
- QQ 技術交流群:771992300。
