专栏首页天马行空布鲁斯那些年用过的开源项目(.net/c# stack)

那些年用过的开源项目(.net/c# stack)

之前写过一篇文章(那些年用过的开源项目(一)),列出了一些曾经用过的基于java技术栈的开源项目;这篇文章总结用过的基于.net/c#技术栈的开源项目。

visual studio 微软出品的.net/c#开发IDE,很贵;但也有免费版,仅允许学生、小公司等使用,功能没有收费版全。

jetbrains rider JetBrains公司出品的.net/c#开发IDE,也是收费的。如果大家没听说过这个IDE,但一定听说过JetBrains公司出品的另一个非常流行的java开发IDE:intellij

resharper 功能非常强大的.net/c#开发插件,也是JetBrains公司出的。

nuget+msbuild .net技术栈里面用于包管理加项目构建的工具,类似于java技术栈里面的maven,nodejs技术栈里面的npm+grunt/gulp。

teamcity 持续集成持续部署工具,JetBrains公司出的。类似的还有jenkins。

coverity 静态代码扫描。

angular 当今非常流行的前端开发框架,从angularjs发展而来。

asp.net .net技术栈开发web项目的library,可类比于java技术栈的servlet。

asp.net mvc .net技术栈基于mvc模式开发web项目的library,可类比于java技术栈的spring mvc。更详细的关于java和.net技术栈的对比,可以参考我的另外一篇文章(从Java转向.NET/C#,Are You OK?)。

autofac DI框架,类似的还有unity、.net core自带的DI框架。

entity framework .net技术栈的ORM框架,类比于java技术栈的jpa。

sqlserver 微软的关系型数据库,sqlserver express是其免费版。

sqlite 轻量级数据库,可以作为in-memory数据库使用。

zookeeper 可以作为服务注册和分发组件,类似于eureka、consul。同时,其也可以用于实现分布式锁,可以参考我之前的一篇文章(liquibase和flyway中分布式锁实现的区别?)。

kafka 消息中间件。

nunit/xunit/msunit 单元测试框架。

nsubstitute mock框架。

Microsoft.AspNetCore.Mvc.Testing 用于asp.net core mvc项目的一个集成测试library。

selenum 用于模拟用户使用的一个集成测试框架。

nlog 记日志library。

Newtonsoft.Json json处理library。

antlr 用于词法语法解析的一个library。了解更多,可参考我的另外一篇文章(用antlr解析odata filter条件表达式)。

nginx 高性能负载均衡和反向代理工具。但是,要实现高并发负载均衡,可能还需要使用一些其它产品,比如f5。了解更多,可参考我的另外一篇文章(负载均衡在微服务架构中的典型应用场景)。

ocelot 开源的API Gateway组件。

kubernetes 当下非常流行的容器编排开源项目,可类比cloudfroundy,但是它们却有很大不同。

References

  • https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests?view=aspnetcore-3.1

本文分享自微信公众号 - 天马行空布鲁斯(gh_2feda5c053bd),作者:huazailmh

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 负载均衡在微服务架构中的典型应用场景

    图中主要包含三个部分:API Gateway、Service Registry Server、微服务。一般来说,为了提高并发处理能力,API Gateway和微...

    Bruce Li
  • 关于html的input元素,property和attribute的区别

    之前在项目中遇到一个很tricky的关于html的input元素的问题,个人觉得挺有意思,于是记录下来。这个问题也是在ui的自动化测试中,可能会碰到的一个问题。

    Bruce Li
  • liquibase和flyway中分布式锁实现的区别?

    大家可能都知道,锁的存在本质上是为了解决共享资源互斥访问的问题,为了解决这个问题,在单机系统中(一个进程),很多开发语言都提供了锁的特性,比如说java的syn...

    Bruce Li
  • Idea运行Tomcat 报 java.net.UnknownHostException

    剑行者
  • silverlight中如何方便在多个"场景"即Xaml文件之间随意切换?

    注:以下方法是百度上搜索得来的,整理一下转发于此 步骤1.先在silverlight项目中新建一个接口文件IContent.cs,内容如下(namespace请...

    菩提树下的杨过
  • AkShare-股票数据-破净股统计

    更新 破净股统计 接口,破净是指市值跌破净资产值,破净股是指股票的每股市场价格低于它每股净资产价格。数据的时间段为:2005年-至今

    AkShare
  • SAP最佳业务实践:SD–回扣处理(926)-1业务概览

    用途 回扣(协议)是一种向客户回溯付款的特殊折扣。 此折扣基于预定义时间期间的客户销售量,回扣将由客户服务人员通过创建贷项凭单进行结算,此贷项凭单将按照先...

    SAP最佳业务实践
  • .Net Core 学习之路-AutoFac的使用

    本文不介绍IoC和DI的概念,如果你对Ioc之前没有了解的话,建议先去搜索一下相关的资料 这篇文章将简单介绍一下AutoFac的基本使用以及在asp .net ...

    蓝夏
  • .net core安装及初体验

    .net core 作为微软的新一代技术,在开发跨平台、微服务等方面有很大的优势,也更贴近现代的编码习惯。在2.0版发布很久以后,近期终于决定进行学习和体验。

    拓荒者-NET
  • 【学术】如何在15分钟内建立一个深度学习模型?

    我们正在开源Lore,它是一个框架,可供机器学习研究人员使用。 Lore地址:https://github.com/instacart/lore 机器学习常常给...

    AiTechYun

扫码关注云+社区

领取腾讯云代金券