免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 62253 | 回复: 8

[技术动态] Go语言是如何实现跨平台的? [复制链接]

论坛徽章:
18
2015年迎新春徽章
日期:2015-03-04 10:16:53操作系统版块每日发帖之星
日期:2016-05-11 06:20:0015-16赛季CBA联赛之佛山
日期:2016-05-06 22:28:4415-16赛季CBA联赛之广夏
日期:2016-04-22 23:24:00操作系统版块每日发帖之星
日期:2016-04-21 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44操作系统版块每日发帖之星
日期:2016-02-03 06:20:00IT运维版块每日发帖之星
日期:2016-01-31 06:20:00IT运维版块每日发帖之星
日期:2016-01-30 06:20:00IT运维版块每日发帖之星
日期:2016-01-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-23 06:20:00操作系统版块每日发帖之星
日期:2015-11-26 06:20:00
发表于 2016-02-18 23:51 |显示全部楼层
    Java提供了一个JVM,任何的java代码都要通过JVM来解释。所以每个平台都要先装自己的JVM然后才能支持Java应用。Golang 也是类似吗?

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
发表于 2016-02-19 15:09 |显示全部楼层
回复 1# SeAL80s


    不是。Golang 的程序会被直接编译为当前平台的可执行文件。

论坛徽章:
18
2015年迎新春徽章
日期:2015-03-04 10:16:53操作系统版块每日发帖之星
日期:2016-05-11 06:20:0015-16赛季CBA联赛之佛山
日期:2016-05-06 22:28:4415-16赛季CBA联赛之广夏
日期:2016-04-22 23:24:00操作系统版块每日发帖之星
日期:2016-04-21 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44操作系统版块每日发帖之星
日期:2016-02-03 06:20:00IT运维版块每日发帖之星
日期:2016-01-31 06:20:00IT运维版块每日发帖之星
日期:2016-01-30 06:20:00IT运维版块每日发帖之星
日期:2016-01-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-23 06:20:00操作系统版块每日发帖之星
日期:2015-11-26 06:20:00
发表于 2016-02-19 21:16 |显示全部楼层
回复 2# MMMIX


     我觉得这样效率和运行速度是不是比Java代码快多了?Java 语言最初的卖点就是跨平台,现在好多语言都跨平台了比如:Golang、Swift,而且不用把语言代码本身转换成中间代码,那么Java以后还有优势吗?我说的语言本身,不比大公司支持、厂商给写中间件应用,就语言级别,Java没什么优势吧???

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
发表于 2016-02-19 21:50 |显示全部楼层
本帖最后由 MMMIX 于 2016-02-19 21:51 编辑
SeAL80s 发表于 2016-02-19 21:16
回复 2# MMMIX

我觉得这样效率和运行速度是不是比Java代码快多了?


类似或同样质量的代码,速度取决于编译器/虚拟机做的怎么样。比起直接编译为当前平台的可执行文件,Java 代码的速度未必就有多慢。

Java 语言最初的卖点就是跨平台,现在好多语言都跨平台了比如:Golang、Swift,而且不用把语言代码本身转换成中间代码,那么Java以后还有优势吗?


不好说。要把现状和历史因素考虑进去。现有的那么多 Java 代码都丢掉?重写?即使要被替代,也不是一时半会能实现的了的。

我说的语言本身,不比大公司支持、厂商给写中间件应用,就语言级别,Java没什么优势吧???


也没有什么劣势。

论坛徽章:
0
发表于 2016-10-11 14:25 |显示全部楼层
java的实现跨平台是使用了java的虚拟机,java虚拟机屏蔽了本地的操作,提供了统一的函数。golang则直接将代码编译成立本地代码,调用本地操作。java的关键是虚拟机,golang关键是编译器。

论坛徽章:
0
发表于 2016-10-11 14:26 |显示全部楼层
网上有人测试过golang的运行速度与java几乎相同,没有明显的改进!

论坛徽章:
6
数据库技术版块每日发帖之星
日期:2015-11-27 06:20:00程序设计版块每日发帖之星
日期:2015-12-01 06:20:00每日论坛发贴之星
日期:2015-12-01 06:20:0015-16赛季CBA联赛之佛山
日期:2017-03-26 23:38:0315-16赛季CBA联赛之江苏
日期:2017-07-17 10:08:4415-16赛季CBA联赛之北京
日期:2018-03-04 17:01:50
发表于 2017-03-01 10:27 |显示全部楼层
Java没什么优势

论坛徽章:
154
2022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:5720周年集字徽章-年
日期:2022-10-26 16:44:2015-16赛季CBA联赛之深圳
日期:2022-11-02 14:02:4515-16赛季CBA联赛之八一
日期:2022-11-28 12:07:4820周年集字徽章-20	
日期:2023-07-19 08:49:4515-16赛季CBA联赛之八一
日期:2023-11-04 19:23:5115-16赛季CBA联赛之广夏
日期:2023-12-13 18:09:34
发表于 2017-07-20 15:59 |显示全部楼层
java应该,从几位的分析角度来看,也没有什么劣势吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP