听龙华讲公共组件 CBB 建设笔记

Posted lindexi_gd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了听龙华讲公共组件 CBB 建设笔记相关的知识,希望对你有一定的参考价值。

这篇博客在我的草稿从 2017 放到现在,我做了三年的公共组件,我觉得我现在能来发布这篇笔记。本文将来和大家讲龙华大佬告诉我的公共组件 CBB 建设相关知识

公共组件 CBB 绝不是 .NET C# 的专利,尽管 C# .NET 下的 CBB 构建是最为便捷的。在其他的语言,甚至是其他领域,如建筑和制造等,也是可以用上公共组件 CBB 建设的。下面以一个案例来告诉大家

国内某大型的科技公司审查了自己的制造过程,发现:

  • 仅螺丝一项,他们就用了 100 多种逻辑
  • 二极管就用了 30 多种

而在经过调整之后,有如下的好处

  • 因为减少零件的种类,可以加大通用器件采购的批量,大批量采购可以获得更低的价格
  • 采用行业通用的器件,遇到问题时可以获取行业的技术支持

以上的案例是从制造业的角度,可以更为清晰的看到优化的效果。在软件团队,随着开发团队规模的增加,咱会遇到如下问题:

  • 开发团队数量、开发人员数量需求急速膨胀
  • 人均效率不增反降
  • 类似的技术问题,在不同的项目或不同团队中,被不同的人反复解决
  • 类似的错误,在不同的产品,不同的显示,不同人员重复出现
  • 面对客户小批量的个性化需求,进退两难

解决以上问题的最佳方法是推动 CBB 的建设,假如有 CBB 的存在,多个开发团队可以有更多可以共用的资源,此时开发效率会和团队规模正相关。类似的技术问题可以快速通过公共组件解决,公共组件踩过的坑,可以通过调用公共组件绕过

个性化的定制需求,可以通过快速组合多个公共组件实现

从道的层面来讲公共组件的建设:

  • 公共组件的成立不一定需要自上而下的推动,可以由开发者自身开始积累
  • 不要过度追求公共组件的数量,随缘而做
  • 组件之前定义的是规范和标准,而不是耦合
  • 无论大小,都可成为组件,只要有开始就好
  • 开发工具本身也是组件

从术的层面来讲公共组件的建设:

从使用公共组件开始,尝试从 NuGet 上获取第三方制作的公共组件,实现功能。养成使用公共组件的习惯。从伸手党转为贡献者,先从可以公开的公共组件,和业务无关的公共组件开始积累,可以尝试推送到 NuGet.org 上,全世界的开发者都可共用

搭建自己团队内部的 NuGet 服务器,只要能独立的模块,都可以成为 NuGet 包,推送到自己的 NuGet 服务器

多个工具类以及聚合的功能可以积累成为底层公共组件库。有了底层公共组件库之后,可以不断进行优化,包括 API 和性能等层面分别进行优化。尝试迭代公共组件库

制作公共组件制作工具,降低公共组件制作门槛

建设了 CBB 公共组件,可以很大程度提高经验、技术、知识的共享和重用,提升整个团队的技术水平

我搭建了自己的博客 https://blog.lindexi.com/ 欢迎大家访问,里面有很多新的博客。只有在我看到博客写成熟之后才会放在csdn或博客园,但是一旦发布了就不再更新

如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎大家加入

如有不方便在博客评论的问题,可以加我 QQ 2844808902 交流

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

以上是关于听龙华讲公共组件 CBB 建设笔记的主要内容,如果未能解决你的问题,请参考以下文章

Vue中非父子组件传值的问题

Angular2开发笔记

django之权限管理公共组件

vue 多项目公共组件处理方案

vue 多项目公共组件处理方案

如何实现一个公共组件库上传到npm并在项目中使用