撼动 IT 界的十大编程语言【转载+整理】
提这些的目的是要保持关注最新的技术。如果你是一个程序员,想要探究未来技术,那这篇文章是你的必读之选。这里列出了10种编程语言,它们可能会改变IT界的工作方式。
下面这些语言都有其实际的需求,举例来说,Web 开发,已目前的 Web 开发方式,实在是太麻烦了。涉及到 HTML、CSS、Javascript 以及 Ajax,再就是一个服务器语言,Java 或 C#,或是 PHP,这实在太繁琐了,有没有用一个语言,将这些所有问题都解决呢~
Dart语言
这种网络编程语言由谷歌创造,帮助开发者克服 Javascript 在 Web 开发的缺点。对于 Dart 语言,谷歌的希望是,它将成为 Web 编程的新官方语言。它有着与 C 语言类似的语法和关键词。然而,一个跟 Javascript 的重大不同之处是,Javascript 是以 prototype 为基础的语言,可在 Dart 里,对象是用类和接口定义的,跟 C++ 和 Java 一样。Dart 语言还允许程序员将变量声明为静态类型。
Ceylon语言
这种语言被称为“Java杀手”,由Gavin King(Hibernate创始人,现任职于Red Hat 公司)创造,但他否认是在 RedHat 里开发的。Gavin King 对 Java 的抱怨包括:罗嗦的语法,缺少一等函数(first class)和高阶函数(higher-order),对元数据编程的支持很弱。特别的,他对缺少能够声明结构化数据定义的语法非常失望,他指出这使 Java 只能“跟在 XML 屁股后面使劲”。Ceylon 语言的目标就是要解决所有这些问题。
Go语言
这个大家应该都知道了,谷歌创造了一个叫做 Golang 或 Go 的编程语言。据一些技术分析家说,它将最终完全替代 Java。这是一种通用型的语言,可以用来开发任何软件——从普通应用到系统编程。虽然这种语言还不成熟,各种语言特征和规格还在变化,但程序员如今已经用它来开发工作了。
F#语言
这种语言已经在计算机科学研究和学术界里流行很久了。F# 是一个微软创造的语言,设计时既考虑了功能性又考虑的实用性。因为它是一种可以运行在 .Net CLR 的一等函数(first-calss)语言,它能跟其它 CLR 语言(如 C# 和 VB)一样可以访问 .Net 平台上的所有程序库和功能特征。
Opa语言
云编程语言 Opa 是新一代 Web 开发平台。Web 开发太复杂。即使一个简单的 Web 应用,也会包含有多种语言交织的无数代码:客户端有 HTML 和 Javascript,服务端有 Java 和 PHP,数据库里有 SQL,等等。Opa 语言并不是来替代其中的某个语言。事实上,它是想一次把这些语言全消灭掉——通过倡导一种全新的 Web 编程模式。在一个 Opa 应用中,客户端 UI,服务端逻辑,数据库 I/O,全部由一种语言实现——Opa 语言。
Fantom 语言
你是否开发过 Java 或 .Net 应用?如果使用 Fantom 开发,你可以选择使用它们任何一种平台,甚至中途切换平台。这是因为 Fantom 语言专门是为跨平台移植设计的。Fantom 工程不仅包括一个可以输出 JVM 和 .Net CLI 字节码的编译器,还包括一套从 Java 和 .Net 中提取的 API,从而可以创建一个额外的可移植代码层。
Zimbu语言
这种奇特的语言从其它各种语言中吸取元素和成分,它是 Bram Moolenaar 的智慧结晶。Bram Moolenaar 是 Vim 文本编辑器的缔造者。这种语言被规划为要快,简洁,可移植,易读。它的语法独特、与众不同,但功能丰富。使用C语言风格的表达式和操作符,但有自己的关键字、数据类型和块结构。它支持内存管理,线程,管道。可移植是它的核心理念。尽管 Zimbu 是一种编译型语言,但 Zimbu 编译器输出的是 ANSI C 代码,这样可以让本地的 C 编译器来把它编译成本地平台的二进制代码。
X10语言
这是一种并行处理语言,曾经只是用在特定领域里的软件开发。然而,随着多核 CPU 和分布式计算的普及,今天的其它编程语言都似乎跟不上这种趋势的步伐。这就是为什么 IMB 研究机构开发了 X10 语言——一种专门为现代并行架构设计的语言,目标就是要把开发效率提高“10倍”。X10 语言的并行能力来自使用分块全局寻址空间(PGAS)编程模式。代码和数据被分割成小的单元,分布到一个或多个“空间”,使得将一个单线程程序升级成运行在多核处理器上的多线程程序变得简单。
haXe语言
haXe 胜过任何一种可移植的编程语言。它是一种可以应用到多种操作环境的多平台语言——从本地二进制到脚本解释器到虚拟机。程序员用它开发出代码,然后编译成目标代码,JavaScript,PHP,Flash/ActionScript 或 NekoVm 字节码等。
Chapel语言
对于应对当今世界高性能计算的特性,Chapel 是一种出色的编程语言。这种语言专门为超级计算机和集群设计的,它是 Cray(超级计算机之父)的 Cascade 研究课题的一部分,由美国国防部高级研究计划局(DARPA)参与启动,有一个宏大的高性能计算设想。Chapel 语言的语法有很多源头,除了常见的如C,C++,Java 外,它还借鉴了一些科学研究性语言(比如Fortran和Matalb)里的概念。它的并行处理特征是受 ZPL 和 High-Performance Fortran 的影响,这些语言也都是 Cray 的早期研究项目。
撼动 IT 界的十大编程语言【转载+整理】的更多相关文章
- IEEE Spectrum 2014年十大编程语言盘点
近日,IEEE Spectrum推出 了一个最流行的编程语言排行榜.排行榜筛选了 12 项指标,综合了 10 个来源(含 IEEE Xplore.Google.GitHub)的数据,最终评选出了下面这 ...
- ES6十大特性(转载CSDN)
1. const和let关键字 const用于定义常量. let用于定义变量.但是JavaScript中不是已经有变量了吗? 是的,这很正确,但用var声明的变量具有函数作用域,并会被提升到顶部. 这 ...
- PMP十大知识领域整理
2018-7-28至2018-12-8历时4个多月,学写了PMP(拍马屁),感觉自己经历了,哇-唉-哦-嗯这四个阶段 刚开始觉得如遇圣经,被PMP的知识体系和老师的精彩课程深深震撼! 后来觉得很多东西 ...
- 机器人研发十大热门编程语言:不死 Java、不朽 C/C ++、新贵 Python
流水的编程语言,铁打的 Java.C/C++. 进行人工智能机器人研发,应该选择哪种编程语言? 这是很多机器人专家在自身的职业生涯中都会存在的一个入门级思考.毕竟,在学习一门编程语言时,需要花费大量的 ...
- 前端开发者不得不知的ES6十大特性
前端开发者不得不知的ES6十大特性 转载 作者:AlloyTeam 链接:http://www.alloyteam.com/2016/03/es6-front-end-developers-will- ...
- 阿里云资深DBA专家罗龙九:云数据库十大经典案例分析【转载】
阿里云资深DBA专家罗龙九:云数据库十大经典案例分析 2016-07-21 06:33 本文已获阿里云授权发布,转载具体要求见文末 摘要:本文根据阿里云资深DBA专家罗龙九在首届阿里巴巴在线峰会的&l ...
- [转载] 使用HTML5的十大原因
转载自http://www.williamlong.info/archives/3024.html 你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不 ...
- Web 2.0应用客户端性能问题十大根源《转载》
前言 Web 2.0应用的推广为用户带来了全新的体验,同时也让开发人员更加关注客户端性能问题.最近,资深Web性能诊断专家.知名工具dynatrace的创始人之一Andreas Grabner根据自己 ...
- [ 转载 ] js十大排序算法:冒泡排序
js十大排序算法:冒泡排序 http://www.cnblogs.com/beli/p/6297741.html
随机推荐
- Unity3D实践系列03,使用Visual Studio编写脚本与调试
在Unity3D中,只有把脚本赋予Scene中的GameObject,脚本才会得以执行. 添加Camera类型的GameObject. Unity3D默认使用"MonoDevelop&quo ...
- ISO 8601: Delphi way to convert XML date and time to TDateTime and back (via: Stack Overflow)
Recently I needed a way of concerting back and forth ISO 8601 DateTime values used in XML from Delph ...
- C#编程(十七)----------Object类
Object类 它是.NET Framework 中所有类的最终基类:它是类型层次结构的根.也就是说所有的类都拥有object类的方法,并能重写,调用. object的构造函数:public Obje ...
- Android中的Audio播放:竞争Audio之Audio Focus的应用
from://http://blog.csdn.net/thl789/article/details/7422931 Android是多任务系统,Audio系统是竞争资源.Android2.2之前,没 ...
- 利用WebSocket传输数组或者Blob的方案
最近在利用Html5的WebSocket进行即时通讯,一点小心得,大家一起讨论吧 首先把WebSocket的协议网址和WebSocket API网址给大家: 协议:http://tools.ietf. ...
- winform中的TreeView的数据绑定
#region 绑定TreeView /// <summary> /// 绑定TreeView(利用TreeNode) /// </summary> /// <param ...
- [Android Pro] 开发一流Android SDK
cp from : https://blog.csdn.net/dd864140130/article/details/53558011 本篇文章已授权微信公众号 guolin_blog (郭霖)独家 ...
- js混淆加密,通过混淆Js代码让别人(很难)无法还原
js混淆加密,通过混淆Js代码让别人(很难)无法还原 使用js的混淆加密,其目的是为了保护我们的前端代码逻辑,对应一些搞技术吃饭的公司来说,为了防止被竞争对手抓取或使用自己的代码,就会考虑如何加密 ...
- LaTeX技巧206:使用gather输入多行公式的技巧
上文中提到了几个输入多行公式的环境,gather也是其中之一,gather输入的好处是每一行,他都会按照前文的编号计数器进行向下计数,这样保证了公式编号的连贯性.所以,当我们输入公式的每一行公式需要独 ...
- python3.7新增关键字:async、await;带来和kafka-python==1.4.2的兼容性问题
python3.7新增关键字:async.await: kafka-python==1.4.2用到了关键字async,由此带来兼容性问题 解决方案: 升级kafka-python==1.4.4 使用p ...