为什么国人很难出高质量开源

FKP-REST是一套全栈javascript框架

为什么国人很难出高质量开源

作者:webkixi

乱侃

今天因为VueJS展开的讨论,话锋转转,就转到这个主题了。这个主题其实也一直是我想要了解的问题,毕竟是 这个FKPJS要走的路。怎么样才能做好开源。

这里先推荐一篇好文,《思考的八种境界》,文章不长,但却有些感悟,第一条就撞在胸口, 《一、形成主见》,行文大概意思是:有自己的一套,即便是很浅薄。

是的,即便浅薄,那也是心血所成,正如我正在做的FKPJS,虽然浅薄,但却花费了我不少时间和精力,融入了 我关于开发、关于前端的一系列想法,我可以和你娓娓道来,关于FKPJS的点点滴滴,也是这些点点滴滴的情怀, 和支持我的朋友们推动着FKPJS的前行。

是这样的

回到主题,为什么国人很难出高质量的开源,这里的衡量标准,我是以GITHUB的star来做为衡量的标准。

我的这个朋友一直以来都是靠avalon来混生活,当然他远不止这一项技能。反正对于AVALON的使用大概有2年 左右的时间吧,公司的运营后台也都是靠avalon在支撑着。

对于我的到来,对他不大不小有些影响,为嘛这么说,因为公司合并后,我被并入到他的部门,并且不大不小, 刚好踩他一头,而我是react的推动者,也在几个微信项目中实施和部署了FKPJS的这一套,自然大权在握,在 我的淫威之下,他也无可奈何。并且好歹说,FKPJS是我亲手打造的一套全栈框架,公司上层也挺认可。

因此,挣扎在所难免,对于开发者来说,我其实挺理解这种心情,但毕竟怎么说呢,他拿我没办法,于是他也开始 纠结、挣扎,想努力跳出我的影响范围,折腾了一个国外的react的全栈框架,又折腾了vue2.0。总之也是蛮 拼的。

但最近我两关系改善,所以呢,也就偶尔侃侃技术圈的这些卵事。期间了解到,avalon在github上的star增 长非常的缓慢,1年左右的时间也就增长了1000来star,总共也就3000~4000star,而VueJS自2.0的推出后, star疯长,大概在2万左右。

期间又了解到,vue的作者有留学背景。又曾今在google等大公司撸过代码,仰望之情顿时油然而生。难怪, 难怪,都是牛人啊。

算是自嘲也好,自卑也罢,作为同是前端开发者来说,总算给自己也找了一个不错的借口,原来都是有这样的耀 眼光环。发挥一下阿Q精神(听说最近鲁迅的文章被全面清理出教科书了,艹艹艹,我中学时最爱看的内容)。

为什么更喜欢国外开源

玩笑之余,不妨深入一点。

毕竟编程是外国人发明的,天生就有语言的优势,比如react, flux, redux,在这些名词出来前,作为一众 国内的开发屌丝,我想是很难想象这样的名词,而这对于英语母语来说是很自然的事情

杂乱的命名方式

基于英语就那么点水平,想不出来的名词,自然靠拼音堆上,尤其在工作压力之下,那些个命名有些也是确实很 搞笑,不要说语义没有,就连意思在过了一段时间后估计也无人可知,包括自己。

结构不稳定

还是基于英语的问题,当你开发出来的东西,不具备可读性。外国人看不懂,中国人也看不 懂,为什么,因为 可能有一个变量就夹杂着一半的英文,一半的拼音,因为这样的东西,有可能就是一个通用接口,在你想到合适的 单词的时候,这个接口就变了。我擦,我怎么敢用这样的东西。所以罗,能追随的开发者就寥寥无几了。

其实也看过avalon的源码。。。。,然后就不想看了。

有料也倒不出来

同样还是英语的问题,比如今天侃到redux,虽然我是react的粉丝,但我从没用过flux,redux的东东,所以 跟着我这个朋友,啪啪啪的把这些个东西,折腾了一遍,心中千万草泥马奔腾,不仅复杂,而且复杂,还复杂。

为什么我有这样的感慨,我是知道flux的原理的,因此,FKPJS有自己的一套,来实现单向数据流,对于我来说 简单,足够,好用。这个之后会有专门的文章。 没有多余的配置,不需要一一对应关键字,独立于react的组件 ,不同组件间可通信,异步数据的回调响应。。。。,好吧,我其实不知道该用什么术语来描述。总之,redux的这一套 大概都能实现吧

很不好意思的是,在FKPJS中的redux,我把它命名为SA,是个全局变量,是我自己倒腾出来的。但尼玛,SA是 个什么鸟,本意是store and action,我仅限于这样简单的英语单词,redux是个什么意思?谁来解释 一下!!!

基于SA,我实现了FKP-ROUTERFKP-FLUXFKP-PAGES,以及在业务中的大量使用。可以说SA在FKPJS中 是个核心存在。 但,but,1、SA没什么语义; 2、我也倒腾不出英文说明;

结论

综上所述,大概就是我所总结的原因,当然应该还有其他很多的原因,但我感觉这个比较基础。也是逃脱不了的 魔咒,只能不断提升自己的英文能力,尽量做到最好吧,大家共勉!!

时间: 2024-08-25 13:31:28

为什么国人很难出高质量开源的相关文章

如何写出高质量的技术博客 这边文章出自http://www.jianshu.com/p/ae9ab21a5730 觉得不错直接拿过来了 好东西要大家分享嘛

    如何写出高质量的技术博客?答案是:如果你想,就一定能写出高质量的技术博客.看起来很唯心,但这就是事实.有足够愿力去做一件目标明确,有良好反馈系统的事情往往很简单.就是不停地训练,慢慢地,你自己就能找出规律和技巧.所以,要写出高质量的技术博客,首先要解决为什么要写的问题. 为什么要写 我一直很喜欢的一个学习方法是 Learning by teaching 一个课题,如果你能给不懂的人解释清楚,说明你对这个课题的理解足够深入.把一个课题展开来写,你可能会发现某些方面你还写不清楚,这往往说明你

4年前的随笔---写出高质量程序的要点

从1990年開始敲代码.到如今已经快20年了.总结出写出高质量程序的几个要点: - 1.開始写之前思路越清晰完整越好. - 2.写的过程中代码一定要规范一致,这种代码便于维护和改动.这个规范一致性包括名称.格式.算法等.- 3.发现一处错误,马上回忆有没有可能其他地方具有相同的错误(假设你遵循第2条.就能非常快找到). - 4.多用ASSERT,在我的代码里面,这条语句至少占领了程序总量的1/10. - 5.每写完一段后至少重复看3遍.非常多BUG是非常难用调试器找出来的. - 通过遵循以上规则

10个编程小技巧,教你写出高质量代码!

你会写代码吗你会写高质量代码吗你知道怎么写高质量代码吗不要一上来就开始写代码想清楚,再动手今天,分享10个写代码的小技巧教你写出高质量代码↓↓↓ 1.重构思维模式 不要一上来就开始写代码,要掌握尽量多的重构方法,重构思维方式,掌握重构并不一定是要对原来代码的重构,而是让自己在操作之前就想好该怎么去进行. 2.搞清需求再动手 看到需求之后,肯定多多少少会有一些问题,或是理解上的错误,或是功能实现上的问题,这时,必须要交流清楚,否则,后续将会有更多问题. 3.文档也要写 可能不少人觉得文档没人看,写

小白程序员怎么由量变到质变写出高质量代码

小白程序员怎么由量变到质变写出高质量代码?很多老程序员从事开发多年,有这样一种感觉,查看一些开源项目,如Spring.Apache Common等源码是一件赏心悦目的事情,究其原因,无外两点: 1.代码质量非常高; 2.命名特别规范: 要写高质量的代码,不是一件容易的事,需要长年累月的锻炼,是一个量变到质变的过程,但要写好命名,只需要有比较好的英语语法基础和一种自我意识即可轻松达到. 1.切忌使用没有任何意义的英语字母进行命名. 2.切忌使用拼音,甚至是拼音首字母组合. 3.要使用英文,而且要使

出高质量优质短效IP,爬虫代理

出高质量优质短效IP,爬虫代理 我们IP池量大,重复IP少,业务独享,下面产品介绍!http://www.16yun.com本人的联系方式:QQ664014706还可免费测试,欢迎咨询!!! 原文地址:https://www.cnblogs.com/wchengdu97c/p/8945969.html

如何写出高质量的JavaScript代码

优秀的Stoyan Stefanov在他的新书中(<Javascript Patterns>)介绍了很多编写高质量代码的技巧,比如避免使用全局变量,使用单一的var关键字,循环式预存长度等等. 这篇文章不仅仅从代码本身来考虑如何优化编码,也从代码的设计阶段来考虑,包括书写API文档,同事的review,使用JSLint.这些习惯都能帮助你编写更加高质量的.更易于理解的.可维护的代码(让你的代码在多年之后仍使你引以为傲). 编写可维护的代码 软件的BUG修复需要花费大量的精力.尤其当代码已经发布

如何编写出高质量的 equals 和 hashcode 方法?

什么是 equals 和 hashcode 方法? 这要从 Object 类开始说起,我们知道 Object 类是 Java 的超类,每个类都直接或者间接的继承了 Object 类,在 Object 中提供了 8 个基本的方法,equals 方法和 hashcode 方法就是其中的两个. equals 方法:Object 类中的 equals 方法用于检测一个对象是否等于另一个对象,在 Object 类中,这个方法将判断两个对象是否具有相同的引用,如果两个对象具有相同的引用,它们一定是相等的.

Mysql写出高质量的sql语句的几点建议

CleverCode在实际的工作也写过一些低效率的sql语句.这些语句会给数据库带来很大的压力,最主要的表现就是sql语句运行慢,后来逐渐的去优化和尝试.总结了一些高质量的sql语句的写法.这里CleverCode总结一下分享给大家. [ CleverCode发表在csdn博客中的原创作品,请勿转载,原创地址:http://blog.csdn.net/clevercode/article/details/46341147] 1 建议一:尽量避免在列上运算 尽量避免在列上运算,这样会导致索引失效.

怎么才能制造出高质量的led透镜

质量决议销量,为了能让销量不断的添加,质量是第一位的.对于以出售led透镜公司而言,出产高质量的透镜才干有更大的销量,才干取得十分好的商场以及更大的赢利.出产高质量的led透镜的办法成为每个出产公司必备的原则. 出产led透镜需求遵循什么样的请求,才会契合消费者要,运用作用佳?首先取决于光源,大功率LED,不一样品牌的大功率LED,其芯片构造与封装方法.光线特性等均会有所区别,然后形成同样的透镜搭配不一样标准品牌LED时会所区别:所以请求有针对性开发,才干达到实践需求.其非必须利用光学规划软件,