驾一叶之扁舟 举匏樽以相属
寄蜉蝣于天地,渺沧海之一粟。哀吾生之须臾,羡长江之无穷。
挟飞仙以遨游,抱明月而长终。知不可乎骤得,托遗响于悲风。

从壹开始【学代码】|| 我开发中的用到的几个框架

大家好,我是老张的哲学,下周要放假了,加班了好几天,突然闲了一会儿,整理下我的Github,没想到,这一年我已经提交了32个项目了,当然还有几个不是开源的,突发奇想,给大家列出来,春节可以简单翻开看看,俗话说:三人行,必有我师,择其善者而从之,其不善者而改之。

 

 

 

一、单层小Demo,开发小页面利器

项目地址:NetCore-Sugar-Demo

欢迎程度:7 Star

技术栈:ASP.NET Core API、配合使用Sqlsugar的ORM

总结:

这种开发是最简单的,直接页面内写逻辑,简单的通过泛型仓储基类控制持久化,还可以支持CodeFirst,简单精悍,没有多余的东西,通过 new 实例化对象,没有依赖注入,动态代理那一堆东西,对于想快速开发一些小的Web页面,比如做个小Demo,或者小白入门NetCore+ORM的,是一个不错的选择

 

 

 

 

二、通用仓储三层模型,简单又封装性好

项目地址:Blog-EFCore-Sqlite

欢迎程度:3 Star

技术栈:ASP.NET Core API、EFCore、原生依赖注入、面向接口、ViewModel、UnitOfWork

总结:

如果你想要一个操作和开发简单的,又有一定的封装效果,这个框架无疑是最好的,除了仓储三层(和普通三层架构不一样)以外,还配合了最新最热的技术——EFCore和DI、中间件,接口和工作单元,当然也支持Seed种子数据,特别适用于那些已经掌握了学会了ASP.NETCore的,但是又想进一步掌握新知识点的小伙伴使用,通过仓储三层的限制,可以锻炼自己的封装能力。

 

 

三、通用权限框架开发全家桶,开箱即用服务子项目

项目地址:Blog.Core

欢迎程度:1.4k Star

技术栈:ASP.NET Core API、automapper、repository、t4、 sqlsugarcore、 dto、 redis、aop 、swagger、 cors、 jwt 、autofac、 dependency-injection、 rbac 、rbac-roles、UnitOfWork、identityserver4等 ASP.NET Core全家桶

总结:

BCVP(Blog.Core&Vue Project)开箱即用的企业级前后端分离【 .NET Core3.1 Api + Vue 2.x + RBAC】权限框架。这个框架主要就是ASP.NET Core开发中用到的全家桶都会使用到,除了基本知识,更有五种日志文件,供审计,直接ORM的扩展,多库与事务操作,可以作为服务器的子项目快速使用。特别适用于已经学会了ASP.NET Core,并且自己会搭建一个框架,想在公司内使用一个简单的服务级别的项目,支持多库和权限控制,可以尝试本项目。

 

 

四、Blog.Core去Service层版本

项目地址:https://github.com/anjoy8/Student.Achieve.Manager

欢迎程度:107 Star

技术栈:基本是上边Blog.Core项目中,去掉了 Service 和 IService 层版本。

总结:

这个是我半年前做一个私活的时候,做的一个学生成绩管理系统项目,所以害怕有隐私信息,就打算先看看,再开源出来,过两天开源,如果想要的,留言,私信给我都行,没问题,我就开源出去。

 

 

 

 

五、DDD-Lite 思想进行开发项目

项目地址:未开源

欢迎程度:0

技术栈:仓储、DDD-Lite、ASP.Net MVC、EFCore、Autofac、组件开发

总结:

这是我第一次尝试使用DDD,是两年前,发现失败了,毕竟是闭门造车,当时还没有用Github,也不太会找别人的好项目,所以充其量就是一个挂着DDD影子的项目,因为是公司的电商项目,就不开源了。

 

 

 

六、领域驱动设计,半落地项目

项目地址: ChristDDD

欢迎程度:336 Star

技术栈:ddd、aspnet-core、cqrs、asp-net-core-mvc、event-sourcing、automapper、ef-core、ddd-cqrs、mediatr

总结:

这是我借鉴了国外一个大佬的项目,看了很多,感觉还是这个靠谱,一个基于 DDD 领域驱动设计 + CQRS 命令查询职责分离 的 .net core 框架,不过很遗憾,没有落地成功,我在此基础上,做了修改和封装,然后也支持了IdentityServer4认证,下一步打算用RebitMQ来替换掉MediaR,实现消息。如果面向对象开发已经满足不了你,中间件,DI、组件开发已经烂熟于心,设计模式至少会三种以上,想学习新的设计思想,那可以尝试看看这个,一个DDD与CQRS读写分离结合的项目,简单尝试事件溯源。

 

七、企业级论坛网站,高可用, 功能丰富

原作者: dotnetclub-net / dotnetclub

欢迎程度:192 Star

技术栈:.net core mvc、docker、azure、efcore、原生DI、丰富的中间件设计、IdentityServer4、多种数据库、支持数据消息导入等等

总结:

这个是陈老师主导创建的项目,我看了源码,真的很漂亮,特别适用于,平时已经学会了NetCore的,想看看别人优秀的开发流程,设计思路,代码整洁之道,丰富的测试用例的,这个是不二选择,内容也涵盖了平时开发中的常见内容,值得一试。

 

 

 

 

 

八、雏形微服务(网友提供)

这个是网友提供的

项目地址: MsSystem-BPM-ServiceAndWebApps

原作者:MsSystem-BPM-ServiceAndWebApps

欢迎程度:225+6 Star

技术栈:.net core 面向SOA服务的 权限、工作流、OA系统 本项目只适用于学习研究

总结:

这是一个比较简单的一个微服务的版本案例,适用于ASP.NETCore 已经完全学会,并且对服务化开发已经有了一定的理解,可以自定义组件的话,可以简单看看这个框架,不仅有工作流,还是一个SOA的项目。

 

 

 

 

九、ASP.NET Core Reference Application(微软项目)

原作者:eShopOnWeb

欢迎程度:3.8k Star

技术栈:.net core 微服务的、Docker、Azure、EFCore、心跳检查、Ardalis.GuardClauses守卫组件、MediatR、CodeAnalysis、Swagger

总结

这个项目的内容可能不是最高最丰富的,但是却是一个比较好的学习Docker和Azure的案例,值得学习。

 

 

十、ABP (vnext)项目

这个我就不过多介绍了,我都没看过,上边八个我至少都看过,ABP现在好像是挺火的。

abpframework / abp

模块化,组件化的开发,是一个很丰富的思路,但是在丰富的设计理念中也是充斥着小小的问题,不多做评价,不过也值得一个尝试,适用于那些基础知识已经完全掌握,而且也对ddd领域驱动设计有一定的理解,特别是对对模块化,服务开发,甚至微服务有想了解的小伙伴可以看一看,可能我年后会简单说一下。

 

 (官方下载的项目模板)

 

 

 

 

 

未完待续

你如果有更好的ASP.NET Core项目推荐,可以评论留言哟。

 

posted @ 2020-01-13 18:22  老张的哲学  阅读(15346)  评论(44编辑  收藏  举报
作者:老张的哲学
好好学习,天天向上
返回顶部小火箭
好友榜:
如果愿意,把你的博客地址放这里
jianshu.com/u/老张
SqlSugar codeisbug.com