本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC。捐赠情况将由倾竹大人另行公示。

项目简介

作为一款旨在提升小型团队开发输出能力、提高团队效率、降低项目风险的应用框架,Util 的务实精神着实可贵。其作者何镇汐先生拥有丰富的开发经验和团队管理经验,多年来带队趟过项目一个又一个坑,其救火经历更是到达了一种让大多数人难以企及的高度。每每提及此事,他都只是谦逊地微微一笑,将功劳归结于肯吃苦加班的团队成员们。

尽管 Util 应用框架目前尚未完工(用 AlexLEWIS 的话来讲,就是远未达到初始战斗能力),但已获得了超过一千颗星的成绩,成为 NCC 的第二款破星项目(可喜的是,首个破星项目 CAP 目前已经获得了 1.4k 星的成绩),特此发文庆祝。

目前,Util 由常用公共操作类(工具类)、分层架构基类、UI 组件封装,第三方组件封装、第三方业务接口封装、配套代码生成模板、权限等组成。围绕 Util 的生态会越发丰富,包括神秘的多瑙河项目:)

项目:https://github.com/dotnetcore/Util
授权:MIT

作者
GitHub: https://github.com/UtilCore
博客: http://www.cnblogs.com/xiadao521 (据说明年开始恢复更新,虽然作者去年也这么说……2333)
QQ群:一号群 386092459;二号群 376124781,请挑选一个加入


有关 Util 这个名字,其实很有意思。根据作者的说法,是为了让别人好记,可是根据笔者的观察,结合作者 readme 的内容后认为……可能是因为懒……23333。好吧,我们不必过于纠结名字,正如同我们不比纠结 .net core 的各种不合理简写一样(神秘一笑)。以下总结了 Util 框架的特色和理念,分三部分:

关于技术

  • 时髦:使用 .NET Core、TypeScript 进行开发
  • 封装:对底层原始 API 的封装,降低学习成本,减少 BUG 概率;
  • 效率:增强代码的复用,提高开发效率;
  • 借鉴:Util 借鉴了大量优秀框架,包括 ABP 和 Nop;
  • 永不完美:Util 是一个不断在发展、不断在完善的应用框架,她永远不会止步不前;
  • 持续重构:Util 在技术飞速迭代的浪潮中持续重构,抛弃不合时宜的设计,与时俱进;
  • 简单易用:简单易学的 API 设计,快速上手,提供大量静态扩展方法和链式 API 设计;
  • 强类型化:充分发挥 Visual Studio 开发工具的优势;
  • 代码整洁:代码洁癖晚期患者的杰作,每一行代码都反复斟酌;
  • 本土气息:代码命名充满本土气息,乡土本色,并以中文注释进行补充。

关于 Flag

  • 愿景:让开发变得更简单;
  • 承诺:不必担心再次断更,代码会持续更新;

关于理念

  • 造轮子:Util 是对各类轮子的整合,因此可以讲,Util 是适合小型团队开发的单体解决方案。Util 不反对重复造轮子,Util 的作者何镇汐先生的观点是「如果你没几把刷子,建议还是省省吧」,言下之意是希望每一个有能力造轮子、且有足够自信能造好轮子的开源能人们不要吝于献技,不要陷入「不重复造轮子」的魔鬼陷阱。而笔者更期待每一个造出优秀轮子的作者们能加入 NCC,用集体的力量继续前进。

Util 自 NCC 创设之日起便已加入,作者低调朴素、持续更新,项目日趋成熟、追求完美,于 2018 年 5 月成为 NCC 第二个星数破千的项目,值得祝贺。为此,经 NCC 授权,由 AlexLEWIS 赠送 Util 作者何镇汐先生图书一本。


NCC 简介

NCC 全称 .NET Core Community(同时保有 .NET China Community 的名称,其缩写为 dotnet-china),成立于 2016 年年中。NCC(时名为 .NET Core 中国学习小组)最初项目为微软 ASP.NET Core 文档翻译项目,为第一批学习 ASP.NET Core 的中文圈开发人员提供了巨大便利,后微软逐步文档国际化,该翻译项目完成全部历史使命。后经历多次调整,最终更名为 .NET Core Community,是一个目前包括 12 个成员项目(含 1 个外部项目)、4 个子团队的正不断成长、完善,并正加速前进的 .NET/.NET Core 开源社区组织。

NCC GitHub:https://github.com/dotnetcore
NCC 成员项目一览:http://projects.dotnet-china.org
NCC 公开群:436035237


加入规范

首先项目须满足以下两个规范:

关于加入 NCC 的项目标准

凡加入 NCC 的项目,都需要满足以下标准

  • 使用 .net standatd 开发,可用于 nfx/core 的项目;
  • 具有清晰的 Git 提交记录(git commit log);
  • 具有完整的(覆盖率在65%以上的)单元测试;
  • 具有适当的跑分测试(对于基础设施项目,跑分测试是必须的);
  • 作者持续关注(项目在最近三个月内做过有效更新的);
  • 项目具有一定被关注度(要求项目星数在 50 星以上)
  • 代码优美,思路清晰,说明信息完整,示例代码到位;
  • 文档/Wiki 基本到位(可选);
  • 注释齐全(可选);
  • 有明确的开源许可;
  • 作者德才兼备,虚心谨慎,脚踏实地,积极向上。

  • 根据《例外情况》,可谨慎地对部分项目适当降低标准;
  • 本附加标准不可滥用

关于加入 NCC 的项目的例外情况

满足以下例外情况的一条或多条的项目,允许对其降低标准(即《关于加入 NCC 的项目标准》):

  1. 有足够的用户将该项目用于生产环境,且较长时间未发生问题的:允许适当降低单元测试、跑分测试的标准;
  2. 有足够博客教程、并有实例项目或代码的:允许适当降低文档/Wiki 的标准;
  3. 满足上述第一点或第二点的前提下,其项目 Git 提交记录(git commit log)未能做到清晰的,自获知本《标准》及《例外情况》后能改进的,则以该时间节点起的提交记录作为评估项。
  4. 针对项目优秀但星数较少(少于 50 星)的,须 NCC PMC Team 成员半数以上认可的,可降低星数要求。

加入流程

加入流程分为「提名」和「申请」两类。「申请」分支的流程为:

  1. 申请:在 NCC Home Repo 提交 Issue 以发起申请,内容务必填写详尽
  2. 初步评审:由 .NET Core Community 管理团队(.NET China Community Team)进行初步评审
  3. 技术评审:由 .NET Core Community PMC Team 进行技术评审
  4. 投票:由 NCC 管理团队和 PMC Team 共同投票(管理团队一人一票,PMC Team 一人三票),过半数赞成加入后,项目入列 NCC,并在 15 天内入列「dotnet-china 成员项目列表」

我们欢迎更多的优秀项目加入我们,如果你有什么好想法也可以告诉我们,让我们一起努力做好这个社区,如我们口号所言:「Making .NET GREATER together!」。

__EOF__

本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC。捐赠情况将由倾竹大人另行公示。

.NET Core Community 第二个千星项目诞生:Util的更多相关文章

  1. .NET Core Community 首个千星项目诞生:CAP

    项目简介 在我们构建 SOA 或者 微服务系统的过程中,我们通常需要使用事件来对各个服务进行集成,在这过程中简单的使用消息队列并不能保证数据的最终一致性, CAP 采用的是和当前数据库集成的本地消息表 ...

  2. .NET Core Community 第四个千星项目诞生:微服务框架 Surging

    本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC.捐赠情况将由倾竹大人在此处公示. 提及 .NET 微服务,我们脑海中浮现的一系列印象中,总有 Sur ...

  3. .NET Core Community 第三个千星项目诞生:爬虫 DotnetSpider

    本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC.捐赠情况将由倾竹大人在此处公示. DotnetSpider 至力于打造一个轻量化.高效率.易开发.可 ...

  4. 首次GitHub千星项目提交维护成功 留念

    现在有点激动,可能有混乱的地方.请大家见谅. 一直觉得千星项目,对我来说是一个遥不可及的地方.没想到第一次在GitHub上 提交Pull Request 就成功了,并且是一个千星项目. 虽然 只是提出 ...

  5. .NETCore 千星项目模块化开发框架 SimplCommerce 详解

    SimplCommerce 是 github 上过千星的.netcore 商城示例项目,本文详解他的模块化框架现实思路,其业务(如产品.订单)不作介绍.因作者文笔水平很差,它又很值得学习和推荐,就算不 ...

  6. 千星项目.Net Core 2.1移植填坑记--OpenAuth.Core诞生

    背景 很早就有把OpenAuth.Net----最好用的.net权限管理工作流框架(好吧!我在吹牛

  7. 中小研发团队架构实践之生产环境诊断工具WinDbg 三分钟学会.NET微服务之Polly 使用.Net Core+IView+Vue集成上传图片功能 Fiddler原理~知多少? ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) C#程序中设置全局代理(Global Proxy) WCF 4.0 使用说明 如何在IIS上发布,并能正常访问

    中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具 ...

  8. 《ASP.NET MVC 5 破境之道》:第一境 ASP.Net MVC5项目初探 — 第二节:MVC5项目结构

    第一境 ASP.Net MVC5项目初探 — 第二节:MVC5项目结构 接下来,我们来看看,VS为我们自动创建的项目,是什么样子的? 可以通过菜单中[View]->[Solution Explo ...

  9. 第二次作业——个人项目实战(sudoku)

    第二次作业--个人项目实战(sudoku) 一.作业要求地址 第二次作业--个人项目实战 二.Github项目地址 softengineering1--sudoku 三.PSP表格估计耗时 PSP2. ...

随机推荐

  1. 微信小程序 刷新当前页面

    刷新当前页面 Measure 法一: 需要的地方 this.onLoad(),试过之后,无用!!! 法二:亲测有效 在this.onReady()中进行获取数据操作(这样一来,就既可以在初次显示时直接 ...

  2. 微软语音引擎 TTS 最基本使用

    TTS(TextToSpeak) 需求:需要借助程序实现 文字合成语音/语音识别. TTS 介绍就不说了,这里介绍非常详细 >>> TTS详细介绍  +  SAPI(微软的TTS语音 ...

  3. Floyd算法_MATLAB

    %求图中任意两点之间的最短距离与最短路径 %floyd算法通用程序,输入a为赋权邻接矩阵 %输出为距离矩阵D,和最短路径矩阵path function D=floyd(a) n=size(a,);%行 ...

  4. QTP入门——玩玩小飞机

    1.什么是QTP? 百度百科中对QTP是这么介绍的: ——”QTP是QuickTest Professional的简称,是一种自动化测试工具.使用QTP的目的是想用它来执行重复的自动化测试,主要是用于 ...

  5. 2014年5月16至24日,杨学明老师为深圳创维RGB事业部提供两天的《软件测试管理》内训服务!

    2014年5月16日和24日,<在软件开发流程中构筑软件质量—软件测试管理>内训课程在深圳创维集团成功举办!来自创维研发.测试.生产等部门的管理人员和核心骨干等参加了此次培训,此次培训由研 ...

  6. 使用Visual Studio Team Services持续集成(二)——为构建定义属性

    使用Visual Studio Team Services持续集成(二)--为构建定义属性 1.从VSTS帐户进入到Build 2.编辑构建定义并单击Options Description:如果这里明 ...

  7. [20181206]关于一致性读取3.txt

    [20181206]关于一致性读取3.txt --//简单演示一致性读取以及如何读取undo重构数据块的.我不想转储对应的undo块,解析那些复杂的过程. 1.环境:SCOTT@book> @ ...

  8. 怎么将后缀为.opt,.frm,.myd,.myi文件还原或者是导入mySQL中

    其实这个问题的解决方案很简单,把这些文件连同这些文件所在的文件夹原封不动地复制到你的 mysql 文件夹下的 data 里面 (在我的电脑里面是D:\xampp\mysql\data), 然后你进my ...

  9. JavaScript -- 时光流逝(十一):DOM -- Document 对象

    JavaScript -- 知识点回顾篇(十一):DOM -- Document 对象 (1) document.activeElement: 返回文档中当前获得焦点的元素. <!doctype ...

  10. Iframe框架+table布局 +div布局实例

    <td colspan="2" style="width: 80%"> <iframe src="http://www.baidu. ...