Go语言出后,Java还是最佳选择吗?

发布于2022-01-05 17:55:07

随着大量新生的语言(如Go)的出现,Java也是被质疑是否不再适应最新的云场景了

10个回答
admin
网友回答2022-01-05

Java命太好了 每个危难时期都有大神出手相助 让它在每个时代节点都没有落下 生态自然就上去了 go的生态还是欠缺一些的 很多框架都是GitHub个人开发者开发维护的 没有类似spring这样的能以此为中心衍生一套生态体系的框架 go的性能还是不错的 在云原生时代有天然优势 像docker kubernetes 这样的杀手级应用 我觉得在业务开发领域 Java还是更好一些 go 可能在中间件层面吃掉挺大一部分比例 未来感觉很可能两者相结合 现在dubbo sentinel 不都开始有go版本了么

admin
网友回答2022-01-05

这个问题的看待不能只从技术层面,技术的诞生服务于人,不论什么技术最后都是服务与人的,go在一定程度上确实优异于java,但是它不一定是最佳选择,在开发商选用技术语言通常要考虑多方面,人工成本,生态环境,稳定性,乙方接受程度,人才继承性,总不能开发完的系统以后招个人维护都难,综合各个因素来说,go的最佳选择性就会降低很多。

admin
网友回答2022-01-05

很高兴能够看到和回答这个问题!

随着大量新生的语言(如Go)的出现,Java也是被质疑是否不再适应最新的云场景了。

随着新的异步框架和语言(如Go语言)的出现,为协调提供了重要的支持,在很多情况下,操作系统的时间表成为了瓶颈,所以Java也面临着不适应最新云计算场景的挑战,四年前,阿里-jvm团队开始探索Wisp2,并将Go功能引入到Java世界。 Java平台被称为环保热潮.许多数据库和框架帮助开发者快速构建应用。 这些Java框架中的数据库类大部分都是基于线程和锁机制进行支持和维护的。

两种语言是不同的。 Java已经有20多年的历史,并且不断的更新换代,推出新的版本,2009年被Sun Oracle收购后,Java的发展得到了广泛的支持。 很多Java 8现在已经在2014年发布了,最新的版本是Java 14.相比之前的版本,从Java 8开始,现代编程语言(如lambda表达式)有越来越多的优势。

与GO语言相比较,Java--语言在核心类库中提供了强大的并发能力,多级应用可以获得无人值守的属性。

一些Java EE标准已经被屏蔽在磁盘上(如JDBC)。可以快速开发出基于锁定模式的程序。然而,在很多情况下,操作系统的时间表成了瓶颈,导致新的异步框架和公式(如Go)大大促进了协调过程。 Java是否能更好地适应最新的云环境也受到了质疑。 Go也是一个静态编译器,其语法与c类似,但使用了不同的变量描述格式。 Go从第1版开始支持废物回收,是一种基于串口通信过程(CSP)的并行模式,8、支持Plugin,可以动态加载一些函数。 从2.0开始支持面板。

硬件制造商已经增加了处理器中的核心数量,以提高性能.所有的数据中心都在这些处理器上运行,我们希望在未来几年看到中心的数量增加。 更重要的是,今天的应用程序使用多个微服务来维护数据库连接、消息队列和缓存。 因此,我们开发的软件和编程语言应该是易于维护和开发的,并且随着中心数量的增加,应该进行扩展。

考虑到发展前景,建议学习Java语言。 Java是一门正在发展中的重要语言,广泛用于网站开发、电气化系统、企业信息管理等。

框架开发也是降低学习复杂性的有力工具。 这是Java开发的一个常见切入点。 它有非常丰富的组件和易于访问的功能,Spring Boot和Spring。 另外,yun自定义模块依赖自动配置,打开盒子,简化开发流程。

Go语言出后,Java还是最佳选择吗?

四年前,阿里开始学习Wisp2。 大多数企业网络服务主要用于IO中服务器数量较多的场景(线性应用往往是计算而不是使用)。 Java Goroutine程序的功能、配置、属性和产品的稳定性都达到了预期的水平。 到目前为止,有数百个应用程序和数万个容器连接到Wisp1 / 2。 Wisp完全兼容多步代码锁定。 你需要添加一个JVM参数来运行程序。 阿里巴巴的主力应用已经进行了两次协同模式的双测,享受丰富的Java环境。 再次获得异步程序属性。

硬件制造商已经增加了处理器中的核心数量,以提高性能.所有的数据中心都在这些处理器上运行,我们希望在未来几年看到中心的数量增加。 更重要的是,今天的应用程序使用多个微服务来维护数据库连接、消息队列和缓存。 因此,我们开发的软件和编程语言应该是易于维护和开发的,并且随着中心数量的增加,应该进行扩展。

Wisp2内核--功能兼容性和现有代码兼容性。 简而言之,必须将现有的基于IO的多线程Java应用添加到Wisp2 JVM设置中,才能获得异步性能的提升。 Java社区非常活跃,各种文档和教程非常丰富。 由于许多同行之间广泛使用共享。


虽然围棋语言有很多非常强大的功能,但是由于初始期比较短,有些坑没有填满,而且存量比较少,开发成本比java和成熟成本高,因为第一个螃蟹比较少,所以目前用的不多。 你可以先从工作中学习Java,然后利用空闲时间学习围棋。 目前,Java是羊群的领头羊,未来围棋的发展将有良好的前景。

以上便是我的一些见解和回答,可能不能如您所愿,但我真心希望能够对您有所帮助!不清楚的地方您还可以关注我的头条号“每日精彩科技”我将竭尽所知帮助您!

码字不易,感觉写的还行的话,还请点个赞哦!

admin
网友回答2022-01-05

如果从薪资出发,Go程序员的平均薪资是能高出Java一节的。

为什么呢?

第一:Java 不管是大小厂都在用,低级Java 数不胜数,工资也入门级的,这些金字塔低端的人群拉低了 Java 的平均薪资。

第二,Go 主要是大厂在用,小厂不敢冒险跟一种新技术(除非有强力 CTO 坐镇),而且 Go 基本上没有新手可言, Go 的使用者绝大部分集中在多年后端经验的老手,大部分由 Python、C++、Java 转过来的,因此平均薪资极高,能跟 Scala、Erlang 媲美的高薪一族(注意这俩高薪也是跟 Golang 一个情况,多年 java、c++转的)。

因此就薪资而言,一定是 Golang 高。所以对于你而言,Java还是不是最佳选择关键在于你是不是能转Go的老手。除非你水平极高,不然一个在校学生估计被前辈秒成渣, Java、php 起码岗位多,能养活菜鸟,Scala、Erlang、Golang 这种高薪语言不养菜鸟的。

admin
网友回答2022-01-05

其实没什么最佳不最佳,这个看你们公司业务,我觉得Java挺好的,企业级,发展这么多年一直很平稳,社区也很强大,作为Javaer,我爱Java

admin
网友回答2022-01-05

说一下我个人的看法吧,如有不同,欢迎留言指出。

第一

JAVA已经很成熟了,go是新兴的语言,就好比当年的Python,好像过了这些年Python依然没有取代JAVA。所以结论是java不单单是一门语言,而是背后的成熟的开发体系。至少目前的go还没有这样的成熟的体系。

第二:适用面不一样

java其实目前还是主要应用于web开发和Android这块。就好比Python适用于科学计算。每个语言有每个语言的特性,适用面不同。go也是如此。

第三:go存在很多问题

具体什么问题,可以搜一下就好,据我所知的安全等等问题还没有解决。冒险用的话划不来。

第四:就业窄

这个招聘的时候就知道了,go语言就南方那块多。

好了,在手机上敲有点慢,就先写这么多。

admin
网友回答2022-01-05

这是一个非常好的问题,作为一名从业多年的程序员,我来回答一下这个问题。

首先,在当前的云计算、大数据和人工智能时代,平台式开发将逐渐成为一个新的流行趋势,而平台式开发具有三个特点,其一是开发过程更加简单;其二是可以通过平台整合更多的资源;其三是程序扩展能力更强。

从编程语言的设计思路来看,Go语言相比于Java编程语言来说,更适合作为平台开发语言,原因有三点,其一是Go语言的语法结构更加简洁,这是平台式语言的发展趋势;其二是Go语言在设计之初就考虑到了大数据的应用场景,而目前的各种开发平台几乎都离不开大数据场景;其三是Go语言更小巧,这也会拓展Go语言的应用场景。

Go语言的简洁性能够带来一个直接的好处就是开发效率的提升,这对于开发人员来说还是非常重要的,实际上目前上升趋势明显的Go和Python,在语法简洁性上都要优于Java语言。

Go语言在设计之处就考虑到了大数据和云计算的应用场景,实际上Go语言一个重要的设计思想就是如何能够高效率处理大量的并发任务,所以随着未来大数据和云计算的发展,未来适合于Go语言的开发场景将进一步增加。

Go语言本身更加小巧,这使得Go语言完全可以适合当前“云+边”的开发场景,所以从任务处理的角度来看,未来Go语言在云计算和边缘计算领域都将有较大的发展潜力。

虽然Go语言有后发优势,但是Java语言目前已经构建起了一个庞大的生态体系,实际上在大数据、云计算时代,Java语言依然有大量的应用场景。从当前就业的角度出发,初学者更应该先考虑学习一下Java语言。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!

admin
网友回答2022-01-05

Java不仅仅是Java语言了,而是一个以Java为中心的生态圈,在这个生态圈里面可以满足你需要的各种资源,也是这么多年发展起来的。

而Go语言就算说的有多么强大,但是要发展起来还是需要一段时间的,近期来看Java还是很好的选择,也比较成熟。不过对于有些新的应用,并且也是go适合的场景,尝试一下go也未尝不可。

admin
网友回答2022-01-05

作为开发人员好几年,我可以使用多种语言和框架来做自己喜欢的事情。其中包括Basic,C,C ++,FORTRAN,PHP,Javascript,最近也包括Golang和Python。

在开始使用云服务器计算后,我被Golang吸引了。简单的协程可帮助到我们以最少的工作量和高并发性编写高度可扩展的后端。这使得在单页面Web应用程序和混合移动应用程序去编写API更容易。

和Java比较?好吧,我不是特别喜欢Java,虽然它很健壮,因为它复杂的语法才能实现比较简单的目标。如果您在开始使用Java之前就已经学习过Python,那么您完全有可能因为它的复杂性而放弃了。

Java在构建企业级软件应用程序方面的强大功能尚无定论,但当您查看替代方案时,你就会觉得Java的复杂性就太大了。

尽管React-Native等混合框架越来越流行,Java仍然是Android和后端开发人员的最爱。许多公司已经使用Java构建了复杂的应用程序,尤其是在银行业或者现在的阿里。但是,由于Golang的简单性和直接编译成机器语言的能力,它更胜过Java一筹。

当Golang被编译成二进制文件并在不依赖目标系统的情况下进行分发时,Java使用Java虚拟机(JVM)。Java与底层硬件进行良好交互以实现性能的能力是其成功的主要因素,但是Golang的直接二进制编译优势使其成为编写高性能脚本的有力竞争者。

与Python之类的解释型语言相比,Java仍然更快。但是对于服务器端计算呢?Golang胜了!

与Java相比,Go的编译速度更快,并且占用的内存更少。考虑到Java的统治地位,这可能不是一个主要因素,但是Golang一直在稳步采用Java来构建可扩展的后端体系结构。

所以如果你想选择一门又快又容易写的语言,Golang真的很不错。

admin
网友回答2022-01-05

其实拿GO语言和JAVA相比,本身就存在错位的问题。但从技术上讲,Go完胜JAVA,毕竟它更加年轻,而且Go没有Java浓浓的学术味道。Go从开发之初就是彻底为了实际工程而开发的语言。

Java最初是为嵌入式设计的,后来赶上第一次互联网风口(泡沫),转化成了互联网语言。最早的Java前后端通吃,后来由于臭名昭著applet*转到后端。最早的Java核心技术全两册加起来只有2厘米厚,第9版的都已经比辞海厚了。Java逐渐从一个肌肉少年变成一个油腻大肥仔。

12年的时候,同学有幸进入某大厂,做JAVA的他非常痛苦地学习了一种叫做Go的语言。第二年他再次出现在我面前已是满面春风:“老大,Go实在太爽了,未来后台早晚是Go的天下”。

几十年的发展,海量的JAVA遗留项目需要维护,因此JAVA程序员还会继续招聘。想把这么庞大的项目统统转移到Go,短期内不可能。

给你2万月薪维护一个JAVA老项目和给你1万月薪做一个Go新项目,你会选择哪一个呢?:p

从来没有那种技术不行了,永远是某人不行了。结合自己的经济状况和岗位实际,灵活掌握吧。都是好技术。

回到
顶部