资讯中心
News
上海网站开发公司网站开发语言的挑选
发布时间:2022-09-27 00:00   您所在的位置: 网站首页 > 新闻资讯 > 经验杂谈


上海网站开发公司如何将Node与现有的架构融合以面对新的无线场景,并更好地提高开发效率,咋们主要论述了在当前成熟的体系下向Node演进的一个思路,当然这并不是唯-路径。也有好多程序员讨论能否要将后端的Java体系全部替换为Node体系,这就涉及Java技术栈和Node技术栈的比较,以下是笔者关于该问题的思考。

咋们从语言特性、开发效率和成本要素三个方面比较Java与作为后来者的Node。

1.语言特性

JavaScript作为Node上运行的语言,和Java相比,优缺点很明显。JavaScript 语法简单,很简单编写基于事件的驱动的实现,不过JavaScript 基于面向对象的描述能力偏弱,不像Java是真正的面向对象语言,同时JavaScript对数据类型的定义也比较单一,要么是数值类型要么是字符类型。很明显,Java 更擅长构建复杂逻辑的大型应用程序。在语言运行效率上,JavaScript 原本是解释执行,Java是编译执行,但由于Node做了优化,故此二者运行效率差异不大。

2.开发效率

开发效率可以从语言的复杂度、程序员培养、开发工具包的多样性以及编码效率几个方面比较。

●语言的复杂度。从开发角度来讲,Java和JavaScript都不必须要关心内存的管理,全是基于虚拟机来管理内存;从并发角度来讲, JavaScript是基于事件触发的,而Java是基于线程的,因此JavaScript更占特点;此外,JavaScript是无阻塞IO的,在I/O效率上比Java有特点(尽管Java8也将更好地支持异步I/O)。

●程序员培养。现在Java 语言仍然是仅次于C语言的第二大编程语言,而JavaScript排在第10位,Java 程序员队伍要比JavaScript大好多,很显然招聘Java程序员要比招聘JavaScript程序员更简单。

●开发工具包。好多时候-个语言的开发效率要看这样的语言的支持工具包和组件的多样性,Java 经过这么多年的发展,工具类库已经特别多样,差不多任何你想要的工具类库都能在网上找到。JavaScript 虽然也发展了很长時间,不过基于JavaScript的工具类库主要集中在前端,可以直接用于Node的仍然很少。当然Node的社区特别活跃,可以预见Node的工具类库增长也会特别迅速。不过要到达Java的规模尚需时日。

●编码效率。Java 语言的运行基于JVM,不过Java的部署效率稍差; JavaScript使测试更加简单,不过debug机制仍然不健全。

3.成本要素

前面主要是从技术角度考虑,不过假如要从成熟的Java体系迁移到Node,成本也是一个重要的考虑要素。

*先是学习成本。假如公司大部分是Java程序员,现在要迁住Node,很明显这样的学习成本会特别巨大,即使这样的迁移是渐进式的,长期来讲仍然是要将一部分Java程序员替换成 Javascript程序员。先不论程序员是公司内部培养的还是从外部招聘的咋们都可以算一下公司招聘一名程序员的成本有多大:一名一般工程师的年薪假定为10万元,猎头费一般是年薪的20%以上,也便是2万元、再加上一个月的实习成本1万元,加在一起约3万元。这相对有1万名以上开发人员的大公司而言,人力成本可想而知。假如招聘应届生,由于应届生的培养周期更长,学习成本会更高。

其次是环境成本。公司的基础服务产品如中间件是基于Java开发的,假如要替换成 Javascript,必然要再另外开发,还得开发配套的运维工具等,这样的成本也可想而知。更后是维护成本。Java和 Javascript i全是基于容器运行的,和V8引擘相比,程序员显然对JVM更熟悉。另外,从排查问题的难易水平来讲,针对JM的工具显然更健全。

4.人的要素

相对一家成熟的

上海网站开发公司而言,假如现有的Web系统都改用Node实现、必然会有好多Java工程师要从事Node的开发,由于已有的前端工程师人数一定支撑不了现有工作的发展。咋们假定一部分Java工程师愿意学习 Javascript并成为全栈工程师,那么他们能否也愿意用两种不同的语言完成同一个任务呢?正常来说,假如能用同一个任务分成神不同的方法来完成的必要性就会大打折扣。故此从这些角度来讲,要让一家很成熟的公司切换语言是特别困难的。

尽管替换技术栈很困难,不过不管如何都应该统一技术栈,尤其是主流的上海网站开发公司网站开发工作开发,更应该使用统一的技术栈这就像秦始皇统一语言一样所提供的好处显而易见。


本文章由新概念互动原创,如没特殊注明,转载请注明来自:http://www.jianzhan0.com/jingyand/73056.html