diff --git a/README.md b/README.md index 70cdc87..c6b9ed2 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,47 @@ -朋友们,零度新版架子今日正式开始搭建。我们非常激动地宣布,新一代架子起名为 “HelloShop”, 这个架子将演示新一代 .NET 技术栈开发架构,作为一个电商应用,之所以起名为 HelloShop,是以为我们希望这个架子被更多的人能够理解购物这种简单的业务流程。 +鏈嬪弸浠紝闆跺害鏂颁竴浠e熀鏋朵粖鏃ユ寮忓紑濮嬫惌寤恒傛垜浠潪甯告縺鍔ㄥ湴瀹e竷锛屾柊涓浠e熀鏋惰捣鍚嶄负 HelloShop 椤圭洰锛 杩欎釜鍩烘灦灏嗘紨绀烘柊涓浠 .NET 鎶鏈爤寮鍙戞灦鏋勶紝涔嬫墍浠ヨ捣鍚嶄负 HelloShop 鏄互涓虹畝鍗曠殑鍟嗗簵搴旂敤鑳藉婕旂ず鍑轰竴涓郴缁熺殑鎵鏈夋妧鏈紝褰撶劧锛岃繖涓晢鍩庣郴缁熶篃鍙互鏄叾瀹冪郴缁燂紝鍙浣犺兘澶熺悊瑙h繖涓熀鏋剁殑璁捐鎬濇兂锛屼綘灏辫兘澶熷揩閫熸惌寤轰竴涓郴缁熴 -新一代架子将使用微软最新技术栈向你展示各种技术的最佳实践,主要技术包括:Aspire + .NET8 + EF Core + ASP.NET 8 Blazor + gPRC+ PostgreSQL + MonngDB + Redis + SignalR + Blazor + 基于 Identity 改造的认证和授权系统 + Orleans + 全文检索 + 服务发现 + 健康状况监测 + 分布式日志 + 分布式跟踪 + 分布式事件 + 指标度量 + 单元测试 + 集成测试 + 压力测试 + MAUI 跨平台(桌面,安卓,IOS) 等。 +### 鎵鍚妧鏈 -我们一直秉持化繁至简、坚持最佳实践最少依赖的原则,确保框架的实时更新。当然,我们也参阅了其它优秀的框架,这包括 ABP ,eShop 、微软开源库、设计模式、云设计准则和模式、其它开源库等,为了更好的分割每种技术的应用场景,我们尽量将不同的技术置与不同的微服务中,一方面可以更好的参阅某种技术的最佳用法,其次是很很方面的组合不同的技术。我们一直认为企业没有通用架子这个说法,只有合适的设计,虽然 HelloShop 也算一个架子,但这个架子更像是一个技术应用示例库,如果需要用到某种技术,你总能找到某个最佳实践,如果能达成这个目标,我们就心满意足了。 +Visual Studio 2022 .NET 8銆丆# 12.0銆丄spire銆丄SP.NET Core锛孍F Core銆乄ebApi銆乬PRC銆丅lazor銆丮AUI銆丳ostgreSQL銆丮onngDB銆丷edis銆丼ignalR銆両dentity銆丱rleans銆佹棩蹇楄褰曘佸瘑閽ョ鐞嗐佸悗鍙板畾鏃朵换鍔°佹湇鍔″彂鐜般佸彂甯冭闃呫佸垎甯冨紡璺熻釜銆佸仴搴锋鏌ャ佹ц兘鎸囨爣鎺㈡祴銆侀厤缃鐞嗐佸鍣ㄥ寲鎶鏈佸崟鍏冩祴璇曞拰闆嗘垚娴嬭瘯銆佸熀浜 Roslyn 鐨勬簮浠g爜鑷姩鐢熸垚鍣ㄥ拰澧為噺鐢熸垚鍣ㄣ -新一代架子取消了 DDD 模式。我们认为 DDD 设计在大多数企业无法落地,加之它的复杂度让很多程序员乱用,所以我们取消了 DDD,用零度推荐最简单的洋葱模型。当然 DDD 边界划分和业务拆分的方法论仍然适用于 HelloShop 的微服务边界。对于大多数人来说,有一个基本的权限系统,然后用某种 UI 技术(MAUI、Blazor,MVC)开始快速组合几种需要的技术开始快速撸代码,是大多数程序员的诉求。如果时间允许,我们 Blazor 和 MAUI 都将基于谷歌 Material UI 库提供一个 UI 层面的模板。 +### 浠撳簱缁撴瀯 -优雅是零度一直追求的。因此我们的代码坚持优雅的语言和最新的框架。希望你也能够参与这种优雅。 +鍦ㄤ粨搴撶殑缁撴瀯涓婏紝鎴戜滑璺熼殢浜嗗井杞儻鐢ㄧ殑椋庢牸锛岀洰褰曠粨鏋勫涓嬶細 -目前,仓库地址公布于此: -国外仓库地址:https://github.com/bit365/hello-shop (实时同步) -国内仓库地址:https://gitee.com/bit365/hello-shop (每周更新) -另外,在仓库的结构上,我们跟随了微软惯用的风格,目录结构如下: +- assets 涓浜涘浘鐗囷紝鍥炬爣锛岃璁$ǹ绛夈 -assets 一些静态资产 -build 自动化构建过程 -docs 一些设计文档,说明书,架构图,需求说明等。 -samples 一些示例代码 -src 解决方案源代码 -tests 一些测试,单元测试,集成测试。 -tools 在搭建过中用到的一些工具。 -scripts 一些自动化构建脚本 +- build 涓浜涙瀯寤鸿剼鏈紝鍖呮嫭 Dockerfile锛宒ocker-compose.yml锛孋I/CD 鑷姩鍖栬剼鏈瓑銆 -我们使用了微软最新的技术,也会不断跟随最新技术,所有需要用到 Visual Studio 2022 最细预览版和 .NET 最新预览版,而不是正式版。 +- docs 涓浜涙枃妗o紝鍖呮嫭璁捐鏂囨。锛屾灦鏋勬枃妗o紝寮鍙戞枃妗o紝閮ㄧ讲鏂囨。绛夈 -关于这套架子的版权,我们将采用 MIT 开源协议,这意味着你可以在任何地方使用这套架子,包括商业用途,但我们希望你能保留版权信息,如果你觉得这套架子对你有帮助,你可以给我们一个 Star,这是对我们最大的鼓励。 +- samples 涓浜涚ず渚嬩唬鐮侊紝鍖呮嫭鍩轰簬 Blazor 鐨 Web 搴旂敤锛屽熀浜 MAUI 鐨勬贩鍚堝簲鐢紝鍩轰簬 gRPC 鐨勫井鏈嶅姟绛夈 -本套架子会有一些配套视频在 www.xcode.me 上发布。如果你想要获取最新的视频可以关注我们的订阅号 zerostack。我们会在公众号上发布最新的动态。 +- src 涓浜涙簮浠g爜锛屽寘鎷井鏈嶅姟锛屽叡浜」鐩紝涓绘満锛學eb 搴旂敤锛屾贩鍚堝簲鐢ㄧ瓑銆 -除此之外我们为了演示整套架子的搭建和部署,刚刚还注册了 helloshopnet.com 和 helloshopnet.cn 这个两个域名用于后期的架子部署所用,也算是给 HelloShop 安一个家,目前还没有备案,正准备备案中。 +- tests 涓浜涙祴璇曚唬鐮侊紝鍖呮嫭鍗曞厓娴嬭瘯锛岄泦鎴愭祴璇曪紝绔埌绔祴璇曠瓑銆 -最后我们希望这套架子能帮助到你如果你有任何问题可以在 Github 上提出我们会尽快回复。 \ No newline at end of file +- tools 涓浜涘伐鍏凤紝鍖呮嫭浠g爜鐢熸垚鍣紝鏁版嵁搴撹剼鏈敓鎴愬櫒锛屾暟鎹簱杩佺Щ宸ュ叿锛屾暟鎹簱瀵规瘮宸ュ叿绛夈 + +- scripts 涓浜涜剼鏈紝鍖呮嫭鑷姩鍖栬剼鏈紝CI/CD 鑴氭湰绛夈 + +### 浠g爜浠撳簱 + +鍥藉浠撳簱瀹炴椂鍚屾锛歨ttps://github.com/bit365/hello-shop + +鍥藉唴浠撳簱姣忓懆鍦板潃锛歨ttps://gitee.com/bit365/hello-shop + +### 鍚庣画璁″垝 + +鎴戜滑鍒氬垰杩樻敞鍐屼簡 helloshopnet.com 鍜 helloshopnet.cn 涓や釜鍩熷悕鐢ㄤ簬鍚庢湡鐨勫熀鏋堕儴缃诧紝涔熺畻鏄粰 HelloShop 瀹変竴涓锛岀洰鍓嶆鍑嗗澶囨锛屽悗鏈熸姇鐢ㄣ + +### 寮婧愬崗璁 + +鍏充簬杩欏鍩烘灦鐨勭増鏉冿紝鎴戜滑灏嗛噰鐢 MIT 寮婧愬崗璁紝杩欐剰鍛崇潃浣犲彲浠ュ湪浠讳綍鍦版柟浣跨敤杩欏鍩烘灦锛屽寘鎷晢涓氱敤閫旓紝浣嗘垜浠笇鏈涗綘鑳戒繚鐣欑増鏉冧俊鎭紝濡傛灉浣犺寰楄繖濂楀熀鏋跺浣犳湁甯姪锛屼綘鍙互缁欐垜浠竴涓 Star锛岃繖鏄鎴戜滑鏈澶х殑榧撳姳銆 + +### 鎶鏈帰璁 + +鏈鍩烘灦浼氭湁涓浜涢厤濂楄棰戝湪 www.xcode.me 涓婂彂甯冦傚鏋滀綘鎯宠鑾峰彇鏈鏂扮殑瑙嗛鍙互鍏虫敞鎴戜滑鐨勫井淇¤闃呭彿 zerostack锛屾垜浠細鍦ㄥ叕浼楀彿涓婂彂甯冩渶鏂扮殑鍔ㄦ併 + + +鏈鍚庢垜浠笇鏈涜繖濂楀熀鏋惰兘甯姪鍒颁綘濡傛灉浣犳湁浠讳綍闂鍙互鍦 Github 涓婃彁鍑烘垜浠細灏藉揩鍥炲锛屽潥鎸佷紭闆呯殑缂栫爜鏄垜浠竴鐩存墍杩芥眰鐨勭殑锛屽洜姝ゆ垜浠殑浠g爜鍧氭寔浼橀泤鐨勮瑷鍜屾渶鏂扮殑妗嗘灦銆傚笇鏈涗綘涔熻兘澶熷弬涓庤繖绉嶄紭闆呫