脚本语言不行?JavaScript 重写 Office 365 已进入尾声 - 开源中国社区
Float_left Icon_close
脚本语言不行?JavaScript 重写 Office 365 已进入尾声
h4cd 2018年06月14日

脚本语言不行?JavaScript 重写 Office 365 已进入尾声

h4cd h4cd 发布于2018年06月14日 收藏 7

做APP,小程序就上开源众包。世界杯期间免费领2600元启动金。>>>  

微软技术项目经理(Technical Program Manager ,TPM)、Webpack 核心团队成员 Sean Thomas Larkin  发 Twitter 透露了 Office 365 正在用 JavaScript 重写的消息。

这个消息源于一次简短的编程语言口水之争。一个备注 C++ 语言全国委员会主席的人 J. Daniel Garcia 在 Twitter 中发文指责脚本语言,他说脚本语言作为使用量最大的 CS 编程语言是一种错误,它无法编写操作系统、数据库管理系统,甚至 Office 套件。

Scripting languages as first programming language for CS bachelors are WRONG. You are not able to write an OS, a DBMS, or even an Office suite with an scripting language.

作为开发者布道师,同时也是 JavaScript 拥趸的 Sean 直接让他打脸,Sean 回复 Twitter 表示,Office 365 套件的所有应用都被重写了,并且工作已进入尾声,而完成这项工作使用的正是那个弱小的脚本语言 JavaScript。

Sean 没有公布过多细节,他表示这些 Office 应用不是基于 Electron 开发的,而是使用一整套编译工具将同一份 JavaScript 代码编译成适用于不同平台的原生代码,包括 Web、Android、iOS、macOS、UWP 和 WIN32,其中只有 WIN32 是 Electron 应用。

网友根据上边透露的相关技术栈,询问 Sean 是如何编译到 macOS 的,并且也有人问那为什么不连 Linux 平台一起做了?Sean 回复说不确定,但是他希望能出个 Linux 桌面 MS Office 套装。

之后 Sean 又在 Reddit 上发帖相对完整地介绍了这次代码重写:

他澄清到,Office 365 的 UI 很多,但绝对不是全部都使用了 React Native (Windows) 进行构建,API 和服务仍使用 C++ 或者 C#,React Native 将 JavaScript 代码编译成平台原生代码的说法并不正确,所以其实并不是“全部/完全”使用 JavaScript/TypeScript。

J. Daniel Garcia 暂时默不作声。

你觉得脚本语言弱小吗?留言说说你会哪几种脚本语言。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:脚本语言不行?JavaScript 重写 Office 365 已进入尾声
分享
评论(63)
精彩评论
42
这很可能是微软最失败的一个产品
13
js仙福永享,寿与天齐
11

引用来自“临峰不畏”的评论

JavaScript不管从什么上讲,它都只是脚本语言。执行效率永远无法与编译语言C/CPP媲美。我们应该正视每种语言的长处,而不是让张飞绣花。
对的
8
JavaScript不管从什么上讲,它都只是脚本语言。执行效率永远无法与编译语言C/CPP媲美。我们应该正视每种语言的长处,而不是让张飞绣花。
4
ts吧
最新评论
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.

引用来自“haitaosoft”的评论

快速,是开发的快速高效,不是安装开发环境的快速,毕竟开发环境的安装只需要一次。
磨刀不误砍柴工,用记事本是免去磨刀了,但更长期的砍柴慢了太多。。。。

另一方面,快速的另一个意义是 用户使用起来快速。开发 相对于 用户使用,也类似磨刀相对于砍柴了。编译型的优势,就是 让长期的过程更快

引用来自“快速开发师”的评论

兄弟请看清楚我写的第一句话"快速,是开发的快速高效,,"? 麻烦你先做过web开发再说,我表示对牛弹琴了。
你的第一句话应该加上定语,web开发,js还是有它的优势的。但是不包括桌面程序的开发。所以,也仅仅能称之为你见过的最牛逼的语言了。
0
:laughing:这世界上哪有什么牛逼的语言,只有牛逼的编译器还要虚拟机
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.

引用来自“haitaosoft”的评论

快速,是开发的快速高效,不是安装开发环境的快速,毕竟开发环境的安装只需要一次。
磨刀不误砍柴工,用记事本是免去磨刀了,但更长期的砍柴慢了太多。。。。

另一方面,快速的另一个意义是 用户使用起来快速。开发 相对于 用户使用,也类似磨刀相对于砍柴了。编译型的优势,就是 让长期的过程更快

引用来自“快速开发师”的评论

兄弟请看清楚我写的第一句话"快速,是开发的快速高效,,"? 麻烦你先做过web开发再说,我表示对牛弹琴了。
运行的高效,一个脚本语言就更谈不上了。。。。web?锤子眼里满世界都是钉子了
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.

引用来自“haitaosoft”的评论

快速,是开发的快速高效,不是安装开发环境的快速,毕竟开发环境的安装只需要一次。
磨刀不误砍柴工,用记事本是免去磨刀了,但更长期的砍柴慢了太多。。。。

另一方面,快速的另一个意义是 用户使用起来快速。开发 相对于 用户使用,也类似磨刀相对于砍柴了。编译型的优势,就是 让长期的过程更快

引用来自“快速开发师”的评论

兄弟请看清楚我写的第一句话"快速,是开发的快速高效,,"? 麻烦你先做过web开发再说,我表示对牛弹琴了。
楼上的你们好激烈,我盖盖楼。说句公道话,各自本命语言还没玩精通呢都。。。。。
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.

引用来自“haitaosoft”的评论

快速,是开发的快速高效,不是安装开发环境的快速,毕竟开发环境的安装只需要一次。
磨刀不误砍柴工,用记事本是免去磨刀了,但更长期的砍柴慢了太多。。。。

另一方面,快速的另一个意义是 用户使用起来快速。开发 相对于 用户使用,也类似磨刀相对于砍柴了。编译型的优势,就是 让长期的过程更快
兄弟请看清楚我写的第一句话"快速,是开发的快速高效,,"? 麻烦你先做过web开发再说,我表示对牛弹琴了。
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.

引用来自“Keygen”的评论

这么牛逼,请用js写个v8引擎吧,哦对了带上你的记事本。
你是不是失了智吧,你不没用过浏览器看网页呀,请问你查资料是怎么查的?哦,对了,一看你就是压根不懂web开发,我找错人了。
1

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.
这么牛逼,请用js写个v8引擎吧,哦对了带上你的记事本。
1

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.
快速,是开发的快速高效,不是安装开发环境的快速,毕竟开发环境的安装只需要一次。
磨刀不误砍柴工,用记事本是免去磨刀了,但更长期的砍柴慢了太多。。。。

另一方面,快速的另一个意义是 用户使用起来快速。开发 相对于 用户使用,也类似磨刀相对于砍柴了。编译型的优势,就是 让长期的过程更快
1
难怪office365越来越多的奔溃
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“你说你喜欢雨天_而我姓杨”的评论

JSON本来就来着JS,这不是很正常吗?
那么牛逼是因为浏览器都支持
:pray: 我反而更加喜欢python。哈哈哈。虽然我是一个javaer

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。
JSON本来就来着JS,这不是很正常吗?
那么牛逼是因为浏览器都支持
2
js版操作系统指日可待:grin:
1

引用来自“临峰不畏”的评论

JavaScript不管从什么上讲,它都只是脚本语言。执行效率永远无法与编译语言C/CPP媲美。我们应该正视每种语言的长处,而不是让张飞绣花。
我觉得原因不在此,而是微软的这个人说的话,可信度有多高,他是否在曲解对方对脚本语言的批判。还有,微软的这个产品到底用js实现了哪些功能,是不是更多的是调用c、或者c++的接口,很多方面需要c、C++先把接口提供出来。
1
昨晚hacker news看到今天就来问题了,正巧上午看到Sean在reddit上的帖子。简单来说,就是Sean搞了个大新闻。说365用js重写了来反驳js是小打小闹的玩意儿。同时还提了 vsc Skype 等等。然后他在reddit上发帖说,哎呀,推特上能打的字数太少。我这边啊使用react native做的跨平台UI解决方案,不是electron。但是啊,原本的c#和c++还是继续用着的,API 和 service 不会动。然后reddit民众也吐槽,js写UI这不是很正常嘛(毕竟ts就是你家搞的啊)。还以为有重磅新闻呢!你看,本来可以多玩几天的大新闻半天就结束了~

作者:知乎用户
链接:https://www.zhihu.com/question/280906257/answer/417284271
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速

引用来自“快速开发师”的评论

delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.
原来编译器厂商做的编译器和IDE都等于0,效率还比不上你用记事本写的代码。。。。。。。。
0
js还是算了吧
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“haitaosoft”的评论

那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速
delphi我他妈的还要去下载安装包,已经不能容忍了,而js你拿个记事本写完就可以用浏览器跑,还可以debug.
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。
那是因为你没见过delphi。。。。。没见过delphi,所以才敢自称快速
0

引用来自“快速开发师”的评论

javascript是我见过的最牛逼的语言,没有哪种语言像js一样那么快地操作界面元素UI,没有哪种语言像js语言那么块地在本地部署运行(其实不需要部署)因为个人PC直接都有浏览器。其json 可以不用各种new对象,直接{}写就完了,所有js写起来都感觉是那么地省力,而且还不用编译。相对而言,java写起来是相当笨重的。我爱js,我爱美女, js同时也是使用最多的语言。

引用来自“shifeng1983”的评论

有时间了,多学学知识,少看美女,早日摆脱码农搬砖的境界
这你就不懂了,追求技术是为了精神上的飞跃,美女是为了想要,精神和肉体的需要就是我们追求的全部。
0

引用来自“zjtxqjj”的评论

js仙福永享,寿与天齐
别致啊~
顶部