本文转自互联网!

首先很遗憾的一点是,“PHP虽然是最好的语言”,但是它不是最流行的语言。

对不起的还有刚刚在4月TIOBE编程语言排行榜上榜的各个语言:

你们都很棒,但是你们都担当不了这个大任。

开始之前,我先说一下我常用的三个语言:Java、JavaScript、Python。

  • Java,让我学到了很多架构层级的知识,这一点可以参考我之前写的架构相关文档。虽然我一点儿也不喜欢这个语言,但是它真的很棒。

  • Python,它真的足够简单,以至于我喜欢拿它学习各种理论知识,如推荐系统、贝叶斯定理、自然语言处理等等。

  • JavaScript,看下文。

数据可视化


在过去我阅读的一些书籍里面,主要是以Processing作为可视化的语言——它起始于2001年,它最初是面向美术工作者和设计者创建的,后来变成了全面的设计和原型工具,可以用于创建复杂数据可视化领域。

Processing被带入了到Web领域产生了Processing.js,还出现了D3.js。

当然还有Plotly、Leaflet、Sigma JS等等的工具。

移动应用


移动端应用:  Cordova

接着就是PhoneGap(今天的Cordova),将WebView带向了移动应用,也将JavaScript带向了移动应用。

使用Cordova,可以让我们一次开发多平台发布。我们也顺便提一下Ionic,作为混合应用的翘楚:

移动端应用: React Native 

既然我们已经提到了Cordova,那么我们也应该说说React Native。也是一次开发多次运行:

虽然它的坑还有很多,但是还是值得期待的。

服务端


正是V8的性能将JavaScript带到了一个新的高度,于是Node.js诞生了——前端、后台都可以用JavaScript,一个JavaScript的全栈时代。

Mongodb作为数据库,Express作为Server端MVC,他们可以提供一个RESTful服务,那么再加上MVVM框架的Angular.js,你就知道我在说什么。

桌面应用


NW.js 是基于 Chromium 和 Node.js 运行的,它们可以让我们用HTML和JavaScript来制作桌面应用。除了NW.js还有最近比较火的Electron,Atom编辑器的


与Cordova的多平台构建多版本不同的是,Electron可以在一个平台上构建多个平台的应用。即我们可以在Mac OS上打包出Linux和Windows上的应用,而不需要在Windows再编译一次。

带向了桌面端,让桌面和Web保持了一致。最成功的案例就是估值达30亿美元的Slack:

So,如果你使用桌面端的Slack就会很卡~

全平台应用 


还记得我写的那篇《一份代码构建移动、桌面、Web全平台应用》,在Eletcron上运行Ionic,就意味着无限的可能性。

能用Web开发的事情就用Web来完成就好了。

游戏


自从WebGL被带入浏览器的那一刻,就决定了这又是一个新的天地。

让我们忘记编译、启动更新、外挂等等的问题,并且我们还可以一次开发直接运行。

VR


如果你看到过之前的那篇《JavaScript在VR世界的应用》,那么你就会对这个内容有更多的印象。

主要思想还是通过WebView来渲染VR视角:

并且各浏览器产商各在推进WebVR 为虚拟现实设备显示提供支持。

AR


虽然大部分的AR应用可能离我们有点远,但是离我们最近的就是Leap Motion——它可以利用手掌和手指动作来进行输入,但无需手部接触或者触摸。

同理于VR,读取传感器的数据,再将其手势交由浏览器端来处理。详细可以参考我之前写的:《Leap Motion JavaScript开发 手势控制基础篇》。

硬件


早先我看到了Arduino在编译的时候,以DSL的方式封装了API。而NodeMCU则内建了Lua语言的支持,可以让开始者使用Lua来开始。 而Tessel 原生就提供了JavaScript运行环境,我们写需要写好JavaScript就可以在上面运行。

Tessel 2属于配置比较高的硬件,而低配的呢?

三星设计了JerryScript引擎,它能够运行在小于64KB内存上,且全部代码能够存储在不足200KB的只读存储(ROM)上。

想想就觉得未来是美好的。

物联网


等等,上面三星推出的是IoT.js,这就意味着它已经可以在物联网领域中应用了,为什么还会有这里的应用呢?我只是想稍微提一下这个:

上面说到的只是Node.js在Web中的应用,而物联网和Web的很大不同之处在于,物联网可以使用各种不同的协议,而这些协议都需要Node.js对其的支持。

因此,如果我们需要开始Web版、移动应用,那么我们自然更需要其作为后台。

操作系统


虽然更好的机器带来了更好的性能,但是显然人们对于原生应用的需求并没有那么强烈。Firefox OS已经在移动操作系统败下阵来,但是这个操作被带到了物联网领域:

这就意味着,我们可以使用JavaScript来开发操作系统的界面了。

你觉得JavaScript还能做什么?

转载于:https://www.cnblogs.com/BruceWan/p/6041915.html

【转】最流行的编程语言JavaScript能做什么?相关推荐

  1. 最流行的编程语言JavaScript能做什么?

    首先很遗憾的一点是,"PHP虽然是最好的语言",但是它不是最流行的语言. 对不起的还有刚刚在4月TIOBE编程语言排行榜上榜的各个语言: 你们都很棒,但是你们都担当不了这个大任. ...

  2. 史上被骂最多的编程语言——JavaScript

    学海泛舟系列之二 史上被骂最多的编程语言--JavaScript 金旭亮 注: 这是一个系列文章,访问以下链接查看全部文章 <学海泛舟系列文章开篇语>(http://blog.csdn.n ...

  3. 趋势预测:2021年五大流行的编程语言

    如果没有编程语言,现在的世界就不会存在.想象一下没有电脑.数字技术和互联网的生活,没有Instagram和TikTok.这会让我们的生活举步维艰,而且并不是不可能发生. 所有的语言都有自己的目的.有些 ...

  4. 调查 20500 名开发者发现,最流行的编程语言不是 Python 和 Java

    近日,开发者经济分析公司 SlashData 发布了< 2018 年第 2 季度各国开发者状况>调查报告,共有 167 个国家的 20500 多名开发者参与其中. 每一年的 SlashDa ...

  5. 区块链开发中使用的最流行的编程语言

    我们目前正处于一个新兴的区块链开发行业中.区块链技术处于初期阶段,然而这种颠覆性技术已经成功地风靡全球,并且最近经历了一场与众不同的繁荣.由于许多资金充足的项目现在急于建立区块链网络并在其上部署分散的 ...

  6. 区块链开发中使用最流行的编程语言

    想知道更多区块链技术知识,请百度[链客区块链技术问答社区] 链客,有问必答! 我们目前正处于一个新兴行业--区块链的发展中.区块链技术在很大程度上还处于萌芽阶段,然而,这种颠覆性的技术已经成功地席卷了 ...

  7. python全栈工程师薪水_Python工程师薪资刷出新高度,有望成为世界上最流行的编程语言...

    随着Python的不断崛起,TIOBE预计它最终将获得第一名.TIOBE在其2019年6月的文章中说:"如果Python能保持这样的速度,它可能在3到4年内取代C和Java,从而成为世界上最 ...

  8. java和易语言对比_国外流行排行榜编程语言和易语言相比较的优势和劣势

    国外流行排行榜编程语言和易语言相比较的优势和劣势 适合对象:对于初学者或者没有接触过编程语言的朋友有巨大参考价值. 比较特点:以C语言和Java两门最流行也是最经典的外国编程语言来和易语言相比较, 比 ...

  9. 最流行的编程语言2018_2018年十大最受欢迎的编程语言

    最流行的编程语言2018 Here you will know about the most popular programming languages in 2018. 在这里,您将了解2018年最 ...

最新文章

  1. 全面分析Web应用程序安全漏洞——《黑客攻防技术宝典:web实战篇》
  2. mysql导入sas文件夹_MYSQL导出HTML格式数据如何导入到SAS中
  3. 在envi做随机森林_随机森林原理
  4. B12-UIAlertController(NS_CLASS_AVAILABLE_IOS(8_0))。
  5. P4445 最长回文串
  6. js 实现轻量ps_简单轻量的池实现
  7. 协议簇:TCP 解析: 基础
  8. android pdf阅读器开发_如何在 Windows 10 中将 Firefox 设置为默认 PDF 阅读器
  9. canvas绘制图形
  10. ORA-00600 [4194] 故障处理
  11. 我的JavaWeb学习1
  12. 温故知新ASP.NET 2.0(C#)(3) - SiteMap(站点地图)
  13. IT的2017,面临数字生态系统新挑战,该怎么办?
  14. Linux Samba服务器配置
  15. IP地址作用与分类(A类 B类 C类 D类 E类)
  16. 苹果CMSV10黑色自适应简约炫酷影视网站模板
  17. C# TCP异步通信TcpClient
  18. 远程协助控制电脑的三种方式
  19. 攻防世界(练习小题)
  20. pytorch seq2seq模型中加入teacher_forcing机制

热门文章

  1. 胡秀光谋定邦源粮食银行-·万祥军:“互联网+”农业大健康
  2. openresty开发系列37--nginx-lua-redis实现访问频率控制
  3. 使用 PHPMAILER 发送邮件实例
  4. VC++深入详解 孙鑫 高清PDF + 配套视频下载
  5. 字典和json 的区别 和转换
  6. C#中的深复制和浅复制(在C#中克隆对象)
  7. [luoguP2896] [USACO08FEB]一起吃饭Eating Together(DP)
  8. EntityFramework 7 OrderBy Skip Take-计算排序分页 SQL 翻译
  9. Input.GetAxis 获取轴
  10. PL/SQL-2 复合数据类型