美高梅官方网站66159

软件开发领域里有许许多多编程语言,真正的程序员使用C++

作者:美高梅官方网站66159    来源:未知    发布时间:2020-04-21 20:55    浏览量:

我从事软件开发的相关工作已经有15年了。目前的工作主要集中于Web和移动应用方面。在这么多年里,我对JavaScript的态度可能比较能代表一大群程序员的看法:从一开始对JS的不屑一顾到最后惊奇它的表现和潜力。

本文选自“图灵教育”微信。

软件开发领域里有许许多多编程语言。在这里,不断有新的编程语言在诞生,如Scala、Go、Closure等,也不断有老的编程语言慢慢消亡。它们中的许多都曾为软件开发作出了巨大贡献。作为软件开发领域中最重要的事物,编程语言从一诞生起就会经历人们的议论、批评与改进。这些编程语言的创造者是编程世界的标志人物,当我看到某些人在使用某种编程语言却不知道这门语言从何而来的时候,会感到一种淡淡的忧伤。对于最为流行的编程语言,出现这种情况的情况较少,比如Java,几乎所有人都知道Java之父的名字James Gosling,但是,对于Perl、Pascal、Lisp或者Erlang呢,你是否依然知道它们的创造者是谁?这些想法促使了本文的诞生,本文收集并分享了这五十年来,最成功,最流行的十门编程语言和它们的创造者的故事。在文章的底部还附有相关的信息图,方便你能够进行直观的查看。1)Java和James GoslingJava是世界上最成功最流行的编程语言之一。James Gosling博士发明了Java,并被尊称为Java之父。在早些时候,Java是由SUN微系统公司开发与提供技术支持的,在2010年1月SUN被甲骨文公司收购后,现在这些是由甲骨文公司来完成。Java的创造是为了完成WORA的理念,它的平台独立性使它在企业应用中获得了巨大成功。到目前为止,它已经成为了最流行的一门应用程序编程语言。2)C和Dennis Ritchie1967年到1973年之间,美国计算机科学家Dennis MacAlistair Ritchie在ATT贝尔实验室创造了C语言。到目前为止,C语言仍然非常受欢迎,它被广泛地运用于系统编程。它比Java要古老得多,但是还依然保持着在软件开发领域的地位。另外值得一提的是,Dennis Ritchie还与他的同事Ken Thompson创造了世界著名的UNIX操作系统。如果你要让他和 Bill Gates或者Steve Jobs比较名气,可能他会比不上,但是要是比较软件开发领域的贡献的话,他会完爆以上那两位。每一个程序员都会铭记Dennis Ritchie以及他为软件开发领域所做出的杰出贡献。3)C++和Bjarne StroustrupBjarne Stroustrup,出生于1950年12月30日的奥尔胡斯,是丹麦的计算机科学家。他最引人注目的成就是创建并推广了编程语言C++。C++,正如其名字所暗示的一样,是C语言之后流行的新一代语言。它所带来的面向对象编程的概念被认为是有别于C语言编程结构的非凡特性。C++目前仍然是最受欢迎的一门编程语言,由于与计算机系统联系紧密以及流行的面向对象特性,它被广泛地运用于商业领域。4)Python和Guido van RossumPython是一门用途广泛的高级编程语言,它的设计理念是强调代码可读性,因此它的语法非常清晰和明亮。Python是由荷兰国家数学和计算机科学研究院的Guido van Rossum设计的。在美国,Python在学术层面上已经取代了Java,如今的学生开始学习编程时使用的是Python,就象上一代使用C或者Java一样。如果你仍然不能确定是使用Python还是Java来作为初学语言,这篇文章可以帮助你作出选择。Python广泛运用于web应用程序开发,在软件开发和信息安全领域有许多基于Python的web框架。另外,Python也广泛被Google、Yahoo、Spotify等科技巨头所使用。5)PHP和Rasmus Lerdorf无论你有多么讨厌PHP,你都不能忽略这样一个事实:有一半的互联网都运行着这样一种神奇的互联网语言。PHP最初是由Rasmus Lerdorf在1995年创造的,PHP现在最主要的实施是由PHP团队来完成,这个团队还为PHP语言提供正式的参考。彼时,PHP是作为微软的动态服务器页面服务器端脚本引擎以及类似语言如JSP的竞争者身份而出现的,但在逐渐受到大家好评并接受之后,现在已经有超过2000万个网站和100万个Web服务器使用了这门语言。它是一门开源的语言,Facebook、Wikipedia、Wordpress以及 Joomla这些互联网巨头都在使用它。我还没告诉你PHP主要用来做什么吧?还需要猜么?答案就是个人主页了!:)6)Perl和Larry WallPerl是一种高级的、通用的、解释性动态编程语言,是由Larry Wall在1980年代中期设计和开发的。Perl因为其优秀的文字处理能力而一举成名。如今,它仍然是UNIX系统上开发报告、脚本的主要工具。Perl因解析和处理大型文本文件及其在CGI、数据库应用程序、网络编程和图形编程的应用而被大家熟知。Perl广泛地在大型互联网公司中使用,如IMDB、Amazon以及Priceline。对于Java开发人员来说,添加Perl或者Python的组合是很好的补充,因为开发中需要一种脚本语言来用于特定的任务维护和支持。7)JavaScript和Brendan Eich如果你问我,过去5到10年里最成功的语言是哪一门?我会毫不犹豫地回答你,是JavaScript。从不久前的客户端JQuery脚本库到最近的服务器端开发的node.js库,在Web开发的各自领域它们都占据着主导地位。JavaScript是一门基于原型的、动态的、弱类型脚本语言,它最初是由Brendan Eich设计并由网景通讯公司开发的,其功能非常强大,广泛的用于客户端脚本验证、动画、事件捕获、表单提交及其它常见的任务。它运行于浏览器中并被包括Gmail、Mozila Firefox在内的几乎所有网站所使用。8)Ruby和松本行弘Ruby是由日本的计算机科学家松本行弘在1990年代中期开发和设计的。使用Ruby编程是非常有趣的事情,如果你使用过Ruby你一定知道我表达的意思。Ruby深受Perl、Ada、Lisp和Smalltalk的影响,它的设计是为了让编程更有效率,更加愉快。Ruby主要用于Web应用程序开发,它被Twitter、Hulu和Groupon等大网站所使用。9)Lisp和John McCarthyJohn McCarthy是第二古老的高级编程语言的创造者。Lisp代表列表处理器之意。我从来没有使用过Lisp,但据说它是函数式编程语言如Haskell、Erlang和Scala的祖先。Lisp常被用于绘图软件的开发和防空系统领域。10)Pascal和Niklaus WirthPascal是一门有影响力的命令式和过程式编程语言,是由Niklaus Wirth在1968 - 1969年设计并于1970年出版的。Pascal作为一种小型、高效的语言旨在通过使用结构化程序设计和数据结构来鼓励良好的编程实践。文章来自:慧都控件网

曾经的JavaScript像玩具一样

美高梅官方网站66159 1

在 2000年那会儿,我也从事过一段web应用开发。开发平台是Windows,主要使用Asp。那个时候的JavaScript主要用途是检验页面输入数 据是否正确。错误的时候,会弹出个警告窗口。当时整个Web开发、应用环境,实际上都是十分简陋的。Web开发者看待JavaScript估计就如同玩具 一般。因为它能做的真的是十分有限。如果你能找到2000年时候的有关JS的IT图书,内容多半大同小异,充斥着告诉你怎么用JS做个什么跑马灯,怎么制 造烦死人的弹窗,如此这般。这些内容也进一步抑制了大家对js的期望。

世界上最好的编程语言是什么?相信每个程序员都有自己的答案。硅谷创业之父Paul Graham说:“在商业竞争中使用Lisp语言就会带来优势,如果我有幸见到一家招聘Lisp黑客的公司,就会真的感到如临大敌。”而更多的企业级开发团队则用他们的行动证明,他们信任的是更加朴实可靠的“蓝领语言”——Java。Java的设计虽然相对保守 ,但却是世界上使用范围最广的编程语言之一。就在理论派和实用派的老大哥争得面红耳赤时,软件界却涌现出了一些平易近人,但又功能强大的年轻语言。

后来,我转向C/C++,因为“真正的程序员使用C++”。这一转身就是很多年,我对JS的印象,也就止于那点功用了。

Python的优点多多:可读性高、语法简洁,免费……但是大家选择Python的最关键理由却可能出乎你的意料:大家都喜欢它。另外一门广受大家喜爱的开源语言Ruby起源于日本,因为在Web开发方面的优势,它已经引起了全世界的关注。有人问Ruby之父松本行弘:“你为什么开发 Ruby?”他的回答就像Linux的开发者Linus Torvalds对“为什么开发Linux”的回答一样——“因为它给我带来了快乐。”

这 几年,因为种种变化,我又转回来了。这个时候再回顾Web开发,已经可以用天翻地覆来形容。相关的概念层出不穷,发展出的各种技术、工具,五花八门,让人 眼花缭乱。而且更要命的是,这些知识除了基础的几类,大部分都十分的不稳定,并且在这种不稳定的情况下迅速发展,以疯狂的速度淘汰更新。今天还在用的工 具,可能明天就有更新、更好的了。

就在各种新老编程语言争奇斗艳之时,另一些语言却悄悄地主宰了互联网时代的命脉。JavaScript的出身有些尴尬,连名字都是为了搭Java的顺风车。但是在JS广为普及的今天,Web已经成为了JS事实上的运行环境。Douglas Crockford指出,JS正日益成为支配世界的程序设计语言。另一方面,在互联网的大背景下,人们对“云”的需求越来越强烈。许式伟把Go语言称为互联网时代的C语言,他创立的七牛云存储全部都是用Go语言来搭建的。面对别人的质疑,他说:“人们只有在不了解背后的具体原理时,才会局限于最保守的方案。”严谨不是创新的对立面,而是创新的基础。

为什么会这样?因为社会需要的热点在这里:需求推动。这个社会的生活、生产,逐渐转移到了网站上、移动端,这就是这些领域快速发展进步的主因。

本期码农“人物”阿朱曾立志成为中国一流的程序员,可是现在却做起了京东技术学院院长,开始了关于“人”的工作。曾几何时,他是一位热衷在大富翁论坛刷分的程序员,但是经历了零售、医疗、汽车、地产四大行业,而他的职位也从首席架构师、技术总监,做到了CTO之后,他的梦想发生了改变。他坦言,“如果今生能够经历50人、500人、5000人的研发团队并亲自打造,我应该此生无憾了。”虽然他现在是京东的“技院老板”,但心里仍然是当年那个注重“实效”的程序员,他希望自己能够用手中抓着的杠杆,撬动地球。

这个时候再回头看当年的玩具语言:JavaScript,也早已今非昔比。

如果本期《码农》能为你带来任何启示,都请到图灵社区来发表意见。赞美无风险,吐槽别谨慎。

它已经成长为网络时代不可或缺的前端顶梁柱。现在已经不可想象没有JS的网站是否还能正常运行。不仅如此,它的触角居然还深入到了后端服务,Node.js方兴未艾。一些新一代的产品,如MongoDB,甚至内置了JS语言支持,作为应用交互的工具。

码农论剑

这是很多人都无法想象到的情景,包括我在内。对此,我不得不回过头看一下,思考JavaScript为什么会拥有现在的地位。

梦寐以求的编程语言

美高梅官方网站66159 2

欢迎你,很高兴你选择了Java 8

冥冥之中注定的语言

Python的禅定一刻

JavaScript的总体设计有亮点,但问题也很多。它是作者在10天内设计出来的。因为时间仓促,很多细节未及推敲、深思熟虑就推上了市场,以至于充斥了漏洞、糟粕。Douglas Crockford在《JavaScript语言精粹》(英文名《JavaScript:The Good Parts》)里面提到:“Javascript中糟粕的比重超出了预期。”(注:Douglas Crockford,JavaScript开发社区最知名的权威,是JSON、JSLint、JSMin和ADSafe之父,著有《JavaScript: The Good Parts》。

我为什么开发Ruby

连Brendan Eich(JavaScript的创造者)自己都说:"与 其说我爱它,不如说我恨它。它是C语言和Self语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好:'它的优秀之处并非原创,它的原创之处并不优 秀。'(the part that is good is not original, and the part that is original is not good.)"

Clojure哲学

但是,似乎是在冥冥之中注定,JavaScript在一开始就抓到了未来编程语言的方向:函数式编程。

掌控Web的语言JavaScript

JavaScript设计的最出色的就是它的函数的实现。它近乎接近于完美。...... 函数在javascript中是顶级对象,它是第一个成为主流的Lambada语言,它是披着C外衣的Lisp。

—— Douglas Crockford

为什么我们需要的新语言是Go

读过《黑客与画家:硅谷创业之父Paul Graham文集》(主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等话题)的人,都会记得作者的预言:Lisp才是语言的终极趋向。(注:LISP源自列表处理LISt Processing的缩写,由来自麻省理工学院的人工智能研究先驱John McCarthy在1958年基于λ演算所创造,是一种通用高级计算机程序语言,长期以来垄断人工智能领域的应用,也是第一个函数式程序设计语言。

<人物>

美高梅官方网站66159 3

阿朱:从50到5000,从技术到人

硅谷创业之父Paul Graham

<践行>

函数式编程的流行之势

Rest API 的那些事儿

函 数式编程并不是新发明,它的历史甚至比一些主流语言还早。因为性能和实现等问题,一直饱受冷落。而如今,计算机的硬件性能大大提高,改变了很多事物。原本 不够经济的,变得可行;原本不够好的,在新条件下变得不错。鉴于函数式编程的优良特性和强大能力,它的流行其实并不意外。“过程化->面向对象->函数式”的应用开发范型发展趋势是可以预见的。

函数式编程中的常用技巧

这 些年,脚本语言大行其道,使用Python/Ruby/PHP代替原本静态语言开发的应用比比皆是,传统的C/C++应用开始逐渐缩减到桌面应用、高性能 服务器应用、驱动、系统接口等领域。因为大部分的应用的性能已经不是问题,CPU相对过剩,I/O、网速才是瓶颈,因为人们总是更重视开发效率。而 JavaScript因为一开始就有这样的设计能力,把握住了技术的先机,紧随了这股浪潮。

<动手>

当然,运气也不可或缺。世界上的编程语言至少也有个几百种。一种语言想获得认可并得到流行,光有好的技术设计是不够的,它还需要位置乃至契机

基于Travis CI搭建Android自动打包发布工作流

编程语言要找到适合自己应用的领域,深深的扎下根来,并以此为基地,向外伸展。这个时间,有时候需要20年以上。比如PHP专注于Web开发,C对于系统开发不可缺少,Python在科学计算、网络编程有诸多应用。

如何发布自己的播客

在2004年,JavaScript就得到了一次契机:Google推出了使用Ajax技术的Gmail邮箱,那堪比桌面的无刷体验,引发了业界轰动和模仿浪潮。而Ajax的操作核心就是JavaScript。此后,JS在浏览器中的地位变得十分稳固,已经成了事实标准。在2009年,基于Google强大V8 JS引擎的Node.js出现了,它意味着JS向其它领域开始进军,发挥它的语言威力。微软当年也宣称在服务器端可以内置支持JavaScript,不过这完全不可比。

<鲜阅>

网络时代的需要,JavaScript捷足先登。浏览器一开始就绑定了JS脚本技术,这让它取得先发优势。当年的浏览器大战后,微软的浏览器占据统治地位,IE里面是可以编写vbscript的,但微软在网络时代的停滞不前,让他丢失了很多机会。

成为一名优秀的Developer的书单

美高梅官方网站66159 4

<九卦>

由 于网络带来的低成本信息交互以及更低的开发、部署成本,越来越多的产品基于浏览器做为界面。JS在应用开发上当仁不让。业界出于需求,制定了几版相关的技 术标准,比如HTML、CSS、JS便都有了自己的位置和开发标准规范,它们相互紧密协作,融为一体。Web应用开始侵蚀以往的桌面应用。

路边的WiFi——不要连!

时间证明了JavaScript的价值,它并没有被淹没在历史的发展里。只要应用领域有足够的渴求,原本有很多不足的东西也会获得强大的推动力,把它改造的更好。

<书榜>

Brendan Eich在今年年5月份做了一个PPT,回顾了JS语言的创造过程和这20年的发展、前景。(观看地址:http://brendaneich.github.io/ModernWeb.tw-2015/ 

看看大家都在读什么

那么我也借用他的话来结尾吧:

电子书榜

美高梅官方网站66159,My advice:always bet on JS.

<妙评>

稿源:雷锋网

《Learning hard C#学习笔记》读后感

《Python Web开发:测试驱动方法》读后感

对话国外知名技术作者

讲述码农精彩人生

你听得见他们,他们也听得见你

点击链接,下载本期《码农》

阅读原文

上一篇:没有了

更多新闻推荐

Copyright © 2015-2019 http://www.77zhth.net. 美高梅官方网站66159有限公司 版权所有