欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 格言 > 不重复造轮子的格言

不重复造轮子的格言

时间:2016-07-25 15:25

有哪些值得重复造的轮子

不要重复发明轮子,要充分利用已有的资源,比如程序框架MFC、函数库,插件等。

重复现成的、可用的、已经证明很好用的东西就是造轮子 狭义的程序开发可以认为就是编写程序,也就是编程。

linux鼓励重复造轮子吗?

linux鼓励的应该是按你自己想要的去修改或制造轮子,然后再告诉大家你是怎么样造轮子的(重点是分享)。

前端开发中的轮子指的是什么,造轮子指的是什么

“造轮子”的含义:明知道你做的不可能比前辈做得更好,却仍然坚持要做。

  比如,车轮子是圆形的,这是大家公认的最合适的形状。

而自己非要发明另一种形状的轮子,这种行为就叫「重复发明轮子(Reinventing the wheel)」,即“造轮子”。

Nginx为什么要造重复的轮子nginScript

前不久,Nginx发布了一种“代理端”的JavaScript实现nginScript。

该实现可以提高Nginx的脚本能力,使Nginx配置更简单、操作更高效,使用户无需编写C模块就可以在Nginx中做更多的事情。

目前,nginScript解析器仅支持ECMAScript 5的一个子集,不过后续还会扩展。

在对JavaScript求值时,nginScript会使用一个基于寄存器的虚拟机将JavaScript编译成字节码然后在Nginx(或Nginx Plus)中运行。

许多人对此都非常好奇,既然已经有了V8、SpiderMonkey或其它实现,为什么还要实现一个新的JavaScript运行时。

Hacker News上也出现了大量不同的声音。

比如,网友stanleydrew就认为这个做法很糟糕,因为它可能让Nginx这个原本很棒的工具走上膨胀之路。

对此,网友n42表示:任何你不想用的特性都是膨胀,但用到的时候就必要了。

而网友eknkc则认为:它是一个很好的补充。

我在高业务量的服务器使用了Varnish,一个原因就是它有“可视化组件库”,这是一种类JavaScript的语言,可以用它来定义请求处理逻辑。

nginx将为熟悉它的人提供许多配置选项。

针对这些疑惑和争论,Nginx近日专门撰文解释了他们为什么要创建自己的JavaScript实现。

Nginx有一些独特的需求,他们希望nginScript代码片段可以在Nginx处理请求时运行,以此扩展Nginx处理请求和响应的能力。

但是,他们无意创建一个像Node.js那样的持久化的JavaScript应用程序运行时环境。

然而,现有的JavaScript运行时都是针对Web浏览器而设计的,依赖于垃圾收集,很难控制JavaScript VM的资源使用。

如果内存溢出,它们就会异常退出。

这在浏览器端尚可接受,但在服务器端是不可容忍的。

他们希望nginScript能够提供简洁且可以快速执行的规则,而不是对JavaScript的完整支持。

而且,Nginx已经有一个经过充分优化的、事件驱动的架构,所以他们不希望受垃圾收集所带来的性能不可预见性所影响。

出于上述种种考虑,他们实现了一种非常简单但与其需求相匹配的JavaScript运行时:架构——单线程、字节码执行是为了实现快速初始化和处理。

由于每个请求会分配一个单独的虚拟机,所以不需要垃圾收集。

虚拟机没有复杂的状态或辅助程序初始化,启动速度非常快。

辅助函数——内置操作在Nginx本地实现,用户可以将nginScript视为一种通过编程驱动Nginx本地操作的方式。

预占——Nginx事件驱动模型负责调度单个nginScript VM的执行。

当nginScript规则执行阻塞操作时,Nginx会暂停那个虚拟机的执行,待事件完成后再重新调度。

这意味着,用户可以采用一种简单线性的方式编写规则,Nginx会调度它们,而且不会有内部阻塞。

截止目前,nginScript尚处于早期开发阶段,当前版本为预览版,其团队一直致力于功能的构建,开发主要是围绕完成核心的语言实现以及实现许多内置的JavaScript对象(如Date、Math等)进行。

因此,谈论nginScript的性能还为时过早。

但测试表明,nginScript VM的性能同其它解释型语言(PHP、Ruby等)类似,但不如JIT实现快。

同时,nginScript团队还专注于nginScript VM与Nginx的整合,比如,如何在Nginx配置中引用nginScript规则,nginScript如何访问和控制Nginx内部构件。

对于长时间运行的脚本,他们可能还会引入垃圾收集。

nginScript的完整路线图尚未形成,读者可以通过邮件列表分享自己的想法。

IT程序员常说轮子什么意思

显然,车轮圆形的,这是大家公认的,最合适的。

而你非要发明另形状的轮子,这种行为就叫「重复发明轮子(Reinventing the wheel)」,即「造轮子」—— 明知道你做的不可能比前辈做得更好,却仍然坚持要做。

放到编程中,就是说业界已经有的软件或者库了,你明知道自己不可能比它做得更好,却还坚持要做。

作为练习,造轮子可以增加自己的经验,很多事情看起来简单,但只有自己动手,才会发现其中的难点。

当然实际开发中也有很多情况不得不造轮子,比如希望做到「自主知识产权」、刷 KPI 之类的;或者造轮子的人真的觉得自己开发的版本有更强的功能、更好的性能也说不定呢。

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片