你好,游客 登录 注册 发布搜索
背景:
阅读新闻

如何选择适合自己的云计算编程语言组合?

[日期:2015-03-16] 来源:51CTO  作者:布加迪编译 [字体: ]

  说到选择要使用的编程语言组合,既有正确的方式,也有错误的方式。本文帮助云计算开发人员迈上正确的道路。

  

  用CSS编写的《辛普森一家》(The Simpsons),这个项目出自开发人员Chris Pattle之手。

  知识论坛Big Think拍摄了一则采访C++编程语言发明者Bjarne Stroustrup的视频:“编程人员应该知道的五门最重要的语言是什么?”他说。“要是他们只知道一门语言,就没资格自称是专业开发人员。”

  所以在Stroustrup看来,说“我喜爱Perl。世界上只有一门语言,那就是Perl。”没什么用。如果入门级开发人员摸透了擅长的第一门语言,想在云计算领域大有作为,就需要学会好几门编程语言,才有一席之地。那么到底是哪几门呢?云计算开发人员应该挑选哪几门编程语言?

  按人气来挑选语言?

  如果一名初出茅庐的开发人员需要赚钱,不妨留意雇主要求的编程语言。IEEE Top Programming Languages这款应用程序(http://spectrum.ieee.org/static/interactive-the-top-programming-languages,需要注册)详细列出了这些语言。

  大家也忍不住想选择人气最量的语言。GitHub上的前20门编程语言(http://githut.info)概述了这方面的情况。

  不过,以这种方式挑选语言会导致你的编程语言组合零敲碎打。这是个问题,一方面是由于开发人员最后并不通晓一大批广泛的语言类型(偏向通用语言),一方面是由于这隐藏了开发的细节。

  立旨想成为微软Azure开发人员的人需要能够开发整套系统。一名优秀的微软开发人员也许熟悉这一系列语言:C#、HTML5、LINQ、NHibernate和ASP.NET。什么?它们并不都是语言啊?可它们都含有语言。要是有词汇、正式语法,而且需要开发人员编写代码,那它就是一门语言。

  按类别挑选语言!

  如果一名开发人员确实想认真掌握一大批语言专长,就应该在这五个类别寻找他们喜欢的语言。这里包括了十个语言例子,可以帮助崭露头角的编程人员尽快上手。

  数据语言

  数据是所有云计算的核心(想一想物联网和大数据),这让数据语言成为一门最重要的语言。UML和SGML是用于数据建模的描述语言。HTTP含有用于处理数据的CRUD(创建、更换、更新和删除)命令。

  数学语言

  数据语言是一款神奇的工具,可以将大数据变成商业金矿。而云中有大量的数据。数学家们喜爱MATLAB和R。Fortran不仅是最悠久的例子,它还是各门编程语言中最古老的语言之一。

  函数语言

  这个函数是指数据函数,而不是编程功能。通用函数语言常常含有数学语言的特征。你在云计算中不会找到太多的LISP(最古老的函数语言),但会找到大量的Clojure(最新颖的函数语言)。

  过程语言

  这是大多数人一想到计算机语言就会想到的一门编程语言。过程语言中的逐步指示可以隐藏所有的繁重工作(就像JavaScript那样),或者暴露低级特性(就像C那样)。GitHub上的前20门编程语言和IEEE前10门编程语言中大部分是过程语言。

  特定领域语言

  特定领域语言是语言领域的大杂烩式组合。“特定领域”是那些有用但又模糊的集合名词之一。你可以说,每门语言存在于某个领域――比如说,所有数学语言都存在于数学领域。然而,这个术语通常适用于解决特定问题的小语言。

  一种流行的特定领域语言集合在于云和人之间的接口:Web。前端开发人员可能使用通用编程语言(比如说PHP)和许多特定领域语言(比如CSS、HTML、SOAP和YAML),开发实用的网站。

  开发是出于爱好还是赚钱?

  对开发新手来说,选择编程语言组合比开发老手来得容易。云计算的规模意味着,工作是由商业团队,而不是个人完成的。而说到支付费用,开发人员不得不使用雇主要求的语言。

  另一方面,如果一名经验丰富的开发人员想学习新的技能,他们可以选择一个开源云项目,在业余时间贡献代码。这方面选择很广泛,他们可以选择自己偏爱的任何一门语言。如果这个想法很吸引你,不妨访问OpenHatch(http://openhatch.org),寻求帮助。

收藏 推荐 打印 | 录入:574107552 | 阅读:
相关新闻       云计算 编程语言 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款