只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 微信小程序开发 >  中国的程序员为何开发不出来像spring一样优秀的框架?


中国的程序员为何开发不出来像spring一样优秀的框架?

发布时间:2019-09-02 15:14:12  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
我也有类似的疑问:日本的程序员为何开发不出像spring一样的优秀框架?英国的程序员为何开发不出像spring一样的优秀框架?德国的程序员为何开发不出像spring一样的优秀框架?法国的程序员为何开发
中国的程序员为何开发不出来像spring一样优秀的框架?

我也有类似的疑问:

日本的程序员为何开发不出像spring一样的优秀框架?

英国的程序员为何开发不出像spring一样的优秀框架?

德国的程序员为何开发不出像spring一样的优秀框架?

法国的程序员为何开发不出像spring一样的优秀框架?

......

现在国人主导开源的项目不是越来越多

可怜我的小兄弟白给spring cloud提那么多MR了

跟操作系统不一样,这东西又没有多少难度,只不过是不重复造轮子罢了

你先搞明白spring到底优秀不优秀再说

第一 spring是众多国家众多程序员共同努力的产物,例如说阿里巴巴微服务的一众框架也接入了springcloud体系,成为了他的一部分

第二,spring原理核心也不算复杂,gitee上就有人(中国人)在徒手撸一个类似spring框架

第三, nutz,jfinal等等,国产有很多框架,也十分优秀。

SpringMVC是Web框架,国内外有一大堆。而且SpringMVC比较慢,性能测试处于垫底的位置。原因:基于Servlet API,接触不到底层;为了方便(测试/部署/业务变更/兼容宇宙),希望只改配置不改代码,做了很多抽象,牺牲了性能。

有对比才有优秀。有很多“轻量级Web框架”,一行代码启动HTTP服务器,独立,体积小,延迟低并发高。

总结:spring流行,生态好;其他框架也不差。


Web框架性能测试网站

https://www.techempower.com/benchmarks/#section=data-r18

开源中国搜“Web框架”,有几千个。

jfinal了解一下 个人认为完全满足中小型web项目的需求了

spring 一般般拉。中国的程序员开发不出来,主要是因为中国的程序员,加班时间多,搬砖多,薪资低,业余时间少。

当然还有开源的习惯和传统问题。

我尿黄,我先来

既然已经有了php,这个世界上最好的语言,和yii/thinkphp/smarty等最好的框架,为什么还要谈论一个不知道什么语言下一个以季节做名字的框架?

反设计模式的中国码农社区怎么可能设计出spring?这个问题就像问人被杀了为什么会死一样滑稽(逃

真的没有?

阿里的 Eggjs 我觉得在很多方面上都很优秀,很多设计很有借鉴意义。

最近知乎怎么了,几乎所有题目都是提出一个假命题然后问为什么

当我们的本科生的毕业论文都是信管系统时,国外很多本科生还没毕业就天天写框架。

当然,现在情况有改善。

然而工作之后,都是面向业务的,老板是不会给你时间去写框架的,又不能直接带来价值。好容易写一个,又要被同侪diss说不好用。你给他讲该怎么用他也不听,最后就扔了呗。

所以,不是写不出来,而且大环境不会让你写出来,写出来也会给废掉。

衣食足而知荣辱,中国程序员大部分在填饱肚子,国外在程序员在发展自己爱好

不只是 Spring 框架。

荷兰人发明了 Python;

芬兰人发明了 Linux;

日本人发明了 Ruby ;

……

我们只能在中文 Quora 网站不是争论“2019 年 PHP 凉了吗”,就是讨论“中国的程序员为何开发不出来像 Spring 一样优秀的框架”。不是我说啊,别看很多答案貌似不服气,我看还是要认清我们的差距确实是明显的,特别是基础设施建设上,包括软硬件。认清差距,脚踏实地,兢兢业业追赶才是正道,老是瞎掰掰“XX 技术凉了吗”是不会有进步的。

个人感觉中国没有什么“技术公司”,都是偏上层的“技术应用公司”,目标就是能通过应用技术获取商业价值,而纯的技术赚不了钱。


而像Spring这种是需要偏底层的技术类公司才好做出来的。

因为中国程序员浮躁呗,社会浮躁,企业浮躁,老板浮躁。

一个个想像原地爆炸一样,今天有个idea明天就财务自由。

产品需求张口就来,说完问明天能不能上线。上线后迎接产品的就是暴死,一批又一批的公司倒下,一批又一批的憨憨又开始创业。几十年坚持不懈在从0到0.1之间努力。

在这样的大环境下,中国程序员闲下来就只好怼天怼地,怨天怨地咯,你让他闭嘴去出点活,他就开始巴拉巴拉跟你杠来杠去,这就是浮躁,乘一下口舌之快。以贬低的方式来提升自己的自我良好感,嗯嗯,内心的感觉大概就是“啊!我虽然没有啥技术贡献,但是今天通过贬低一个技术,我感觉自己的技术能力又更上一层楼了,哈哈哈,我真是牛逼坏了!”


好了,这里开始是正经的回答。

其实是企业应用开发模式和互联网开发模式的不同导致的。

Spring诞生的那个年代对标的是EJB,是面向企业级应用开发来设计的。什么是企业级应用呢,说白了就是用户规模固定,面向业务流程的开发,就是各种OA系统,财务系统,这种系统变动性最大的就只有业务需求,其他性能和架构方面的需求比较稳定。Spring这种一个框架包含方方面面能力的设计就是为了屏蔽搭建应用的复杂性,让程序员能更加专注于业务代码的开发。

而现在中国大行其道的开发模式是互联网模式,业务需求变动大的同时,性能和架构也有比较高的要求,专门设计一套大通铺通吃所有场景的框架显然没有必要了,这种大通铺框架反而对后期性能优化和架构升级引入了不必要的复杂性。因此市场上更加迫切需求的是针对某一领域的专门的框架,只需要他能解决好特定领域的问题就行了,这种框架BAT各个大厂有很多,质量肯定也是不输Spring的。

说白了,就是没有市场需求了,没有迫切需要替换Spring框架的需要,Spring够用了。

短答案:因为我们都忙着加班 996,大小周,哪有时间搞这些?活都快要活不起了,手动狗头。

要知道人家那些一开头很多可能都是 20% project,或者在自己项目的基础上直接升级、抽象出来的。例如 bootstrap、React 等等。

并不是我们的程序员不 NB,因为即使在美国,很多优秀的程序员大神都是来自中国(可能除了语言/文化,在编程技术上完全是可以和其他世界大神媲美的)。当然也有更多的大神来自全世界各地,然后汇集到美国(的公司)。

我认为是美国(的公司)给了他们创新的土壤,从而(由下往上地)生长出这些优秀的框架和开源项目。

员工主动 -> manager 支持 -> 高层同意

员工主动是说作为基层员工,大家有意向去钻研,并且公司的 infra 和时间安排都很支持这些钻研。例如我现在每个季度想做啥基本上都是我自己列出来和 manager & 团队讨论,大家来一起安排优先级或者更换其他任务,大家基本上都有一定的灵活性。而在国内,很多底层员工(包括我之前国内的工作经验)都是没有这个机会的。一般都是 manager 认领一堆任务,然后下发给自己的下属。

manager 支持也很重要,否则没有时间会留给程序员去开发。而且即使私下时间开发出来,也很难有机会用在公司相关的项目上。一开始都很难 scale 和得到更多支持。

高层同意,我的拙见认为目前美国的经理人平均管理能力还是大大高于国内的。不短视,不会为了短期目标做很多损伤团队的任务。有长期的考量,会为了长期的利益而支持目前看来不怎么赚钱、甚至亏钱的项目。

别的开源项目不敢说,就拿我司的 Angular 举个例子。自从发明出来之后,我司每年 9-10 月份会在洛杉矶 Irvine campus 举办针对全球 Googler 的前端大会,专门分享当前前端业界动态和公司内部的创新以及开源项目。我去参加了今年会议,大概一周时间,学到了很多前端最近的业界动态以及公司内部的大神对 Angular 以及其他最新项目的传教。

这个若是放在国内,我认为首先从高层到中层都不会被批准。不仅没有这个预算,更重要的是不会允许员工把更多的时间花在开源项目上。我认为是由于当前国内所处于地位,正在努力追赶世界所致。所以没有多余的心思花在业界和社会责任方面。

也许有一天,中国和美国的工程师可以做到同岗位同薪同酬同工作时间,那个时侯可能就能看到越来越多的像 spring 一样优秀的框架来自中国 -- 不管是哪个国家的人发明的。


利益相关:我的言论仅代表我自己的理解和感受,与我所在的公司无关。

因为中国程序员大多时间在干的事是:

1: 上边定了工期没跟自己商量,疯狂加班赶工期;

2: 一个人干几个人的活,一半的时间浪费在开会和写报告上;

3: 黑着眼做完一个项目,上边马上来了一个完全不相干的新项目;

goto 1;

既然说中国程序员开源的问题,我觉得我有资格来回答一下。我正在尝试开发一个对数据分析师更友好的Python框架。

两年前,我有一个项目需要对大量数据进行频繁的ORM操作和分析。Pandas在数据分析方面是个不错的选项,但对于ORM操作Pandas就有点难受了,同时Pandas的接口设计也不够友好。

为此,我开发了一个对标Pandas的数据分析/操作框架DaPy,并在我的许多个人项目中使用和完善他。今年早些时候我朋友在做code-review的时候看到了在DaPy框架下简洁优雅的代码,就建议我大力推广开源他。

现在这个项目在Github已经获得了197个Star以及pip上半年内总计1000+的安装量。然而,我承认DaPy还不够好:1. 性能确实比不上Numpy为引擎的Pandas,即使我用各种骚操作进行优化,5项不同任务的耗时都还是比Pandas多3-9倍的;2. 由于是个人开发的,导致文档方面更新跟不上,对于尝试该框架的新手而言可能不是很友好。

这么多经历下来,我感觉要开发一款开源框架需要以下几个要素:1. 敢于突破权威的勇气和创新精神;2. 超前的编程范式的认识;3. 强悍的代码功底(我担心DaPy的源码被吐槽,用pylint跑了好多次分的呢 );4. 极强的毅力与耐力(写一个框架真的要好长时间的);5. 足够的资金让你有时间无忧无虑的去写代码

想想现在中国程序员的现状:1. 被大量的业务代码压着,没时间学习和创新;2. 996的工作让自己抽不出很长的时间写代码;3. 经济压力大;4. 普遍对国人开发的东西不自信

Based on the discussions from the last two paragraphs, we can perfectly answer the question.

好啦,我就看看回答完这篇问题,会有多少人去Github帮我点赞。是的,这就是一个求赞的广告贴。如果你想更多的了解DaPy特性,可以参阅:一个全新的Python数据分析框架:DaPy带你领略从未有过的丝滑般数据分析体验 - 掘金

现在国内的大环境还是利己主义与短视占上风

框架这种东西不能直接为公司产生巨大收益,开发与后期维护、迭代又非常耗时间

最重要的是,大家都在996,即使有人愿意抽出时间来写一套框架玩玩,热情也会被工作负担和心理负担消磨掉

以上是个人愚见。

责任编辑:
热门阅读排行
© 16货源网 1064879863