游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

编程语言简史

  软件编程的远古时代
  计算机软件编程是一个新兴行业,程序员这一职业的出现不过半个多世纪,但是追溯人类从事软件编程的探索却更为久远。在计算机出现之前,甚至在蒸汽机发明之前,人类就开始探索软件编程了。
  最早开始编程探索的是德国的莱布尼茨。早在17世纪,莱布尼茨就期望将各种事物都通过一种逻辑语言进行描述,然后用一种可执行演算规则的机器进行计算,由此计算出事物的各种结果。这种思想其实和我们现代的软件编程与计算机相差无几。莱布尼茨为了实现这个想法,进行了大量的工作,获得了丰硕的成果,其中就包括微积分和二进制。
  但是人很难超越生活的时代,莱布尼茨制造可编程计算机的梦想没有实现。百年以后,法国人雅卡尔发明了一台可编程的织布机,这种织布机读取纸带上的打孔信息,进而控制织布机织出不同的图案。于是人们开始尝试将打孔纸带用于计算机编程。19世纪中叶,当英国人Ada利用打孔纸带写出人类第一个软件程序的时候,距能够运行这个程序的计算机2的出现还有一百年的时间,而这个程序已经包含了循环和子程序。Ada因此被认为是人类第一个程序员。科技发明受时代的限制,天才的想象力和聪明才智却可以超越时代。
  人类发明计算机器有悠久的历史,但是这些计算机器都是专门进行数值计算的,如加减乘除、微分积分等。而从莱布尼茨、Ada到图灵、冯诺依曼,这些现代计算机的开创者试图创造的是一种通用的计算机,这种计算机不是读取数值进行计算,而是读取数据进行计算,这些数据本身包含着计算的逻辑,这里的数据就是程序。当冯诺依曼在ENIAC计算机上输入第一个程序的时候,就标志着现代计算机的诞生,也意味着软件编程这一新兴行业即将出现。信息时代、互联网时代将接踵而至,人类开启了有史以来最大的一次科技革命。
  现在,我们编程时已经习惯打开IDE,编写程序代码,然后编译执行或者解释执行,认为编程就该如此。我们觉得那些不需要IDE只需要写字板或者vim就可以编程的人就是大牛。事实上,最早的计算机编程非常麻烦,程序员需要将电线编来编去作为输入数据,以控制计算机的执行,如图所示,有些人认为这也是编程这个词的由来。不过,人们很快就将打孔纸带应用到计算机上,编程的效率也极大提升。
  机器与汇编语言时代
  接近我们现在所能理解的软件编程要到1949年,随着第一台可存储程序的计算机的发明而出现,自此程序员终于可以写代码了。这个阶段的程序员需要牢记计算机指令的二进制编码,软件开发就是直接使用这些二进制指令进行编程,每个计算机指令后面要带操作数,操作数也是二进制编码,所有这些二进制就是程序的代码,由程序员输入到计算机中。
  早期的软件编程是程序员通过记忆计算机指令的二进制编码进行操作的,这种方式足以让程序员崩溃,于是他们发明了汇编语言。与使用机器指令二进制编码唯一不同的是,汇编语言提供了机器指令助记符,编程的时候机器指令二进制可以用助记符代替。但是软件编程依然需要使用计算机指令,一个指令接着一个指令地进行编程。因此,机器指令二进制编程和汇编语言编程本质上都是面向机器的编程。如下所示的汇编语言程序已经是PC时代的汇编语言程序了,早期计算机的汇编程序则更加古老。
  汇编语言示例2000:BMI2009;若结果为负数,那么转地址2009
  2002:BEQS200C;若0,转地址200C
  2004:CLc;这里说明0
  2005:ad01
  2007:TAY
  2008:RTS
  2009:LDYS01
  200B:RTS
  200C:LDY00
  200E:RTS
  高级编程语言时代
  在计算机出现的早期,对程序员而言,计算机也是一个神奇的存在。同一台计算机,既可以进行科学计算,也可以进行弹道轨迹计算,还可以进行财务核算计算计算机如此强大、神奇、昂贵,程序员匍匐在计算机的脚下,使用计算机的指令进行编程。但是随着计算机技术的不断发展和普及,程序员逐渐意识到计算机本身是呆板而机械的,真正强大、无所不能的是软件程序。为了更高效地进行编程,应采用一种对程序员更加友好的编程方式,一种更接近人类语言的编程语言,于是各种各样的高级编程语言出现了。
  最早的高级编程语言是Fortran,这是一种专门用于科学计算的高级语言,诞生于1957年。但是真正主流的、被广泛使用的各种高级语言则诞生于1970年前后,其中包括C语言,据说丹尼斯里奇发明了C语言然后为了验证C语言的特性,开发了一个Demo,就是UNX操作系统。
  这些高级语言使用人类语言作为编程指令,如iflse、whilebreak、、fs更符合人类的习惯和逻辑思维方式。由于这些语言关注逻辑处理过程,所以也被称向过程的编程语言。事实上,这些语言的本质是面向人的,因此这一时期爆发的各种语言从本质上说是面向人的编程语言,更准确地说,是面向程序员的编程语言。
  Basic编程语言示例INPUTWhatisyourname:,Username
  PRINTHello;Usernames
  DO
  INPUTHowmanystarsdoyouwant:,Numstars
  StarssSTRINGS(Numstars,)
  PRINTStars
  DO
  INPUTDoyouwantmorestars?Answers
  LOOPUNTILAnswers
  AnswersLEFTS(Answers,1)
  OOPWHILEUCASES(Answers)
  PRINTGoodbye;Usernames
  高级编程语言的普及极大地释放了程序员的自主性,软件开发迎来黄金时期,程序员的第一个极客时代到来,比尔盖茨、乔布斯都是在那个时代成长起来的。但是人的欲望是没有止境的,人能做到的越多,想得到的也就越多,数亿美金的软件开发计划不断被提上日程。但是面向过程的复杂性随着软件规模的膨胀以更快的速度膨胀,很多大型软件开发过程开始失控,最终以失败告终,人们遇到了软件危机。
  面向对象编程时代
  软件危机使人们开始重新审视软件编程这件事情的本质,除了一部分科学计算或者其他特定目的的软件外,大部分软件都是为了解决现实世界的问题而问世的,如企业的库存管理、银行的账务处理等。所以,软件编程的本质是程序员用代码的方式使现实世界的事务运行在计算机上,计算机软件是为了解决现实世界的问题而开发出来的。那么,软件编程这件事情应该关注的重点是客观世界的事物本身,而不是程序员的思维方式或者计算机的指令。
  如果软件编程的重点是客观世界的事物本身,那么编程语言如何才能更好地满足这一需求?基于这一问题的思考,面向对象的编程语言应运而生面向对象编程以对象作第编程语原理为软件编程的基本单位,提出一切皆对象,客观世界的用户、账号、商品是对象;创建、组合、关联这些对象的工厂、适配器、观察者也是对象;将所有这些对象分析、设计、开发出来,一个软件系统的开发就完成了,这个软件系统灵活、强大,最重要的是可以根据需求变化快速更新维护。
  Java对象代码示例:publicclassUser{
  privateStringname;
  privateIntegerid;
  publicStringgetname()
  returnname;
  publicvoidsetname(Stringname)(
  this。namename;
  publicIntegergetid()(
  returnid;
  publicvoidsetid(Integerid){
  this。idid;
  }
  。。。。。。
  }
  编程语言的未来
  回顾一下现代编程技术的发展历程,我们可以发现这一历程大体经过面向机器编程、面向程序员编程、面向对象编程三个阶段,这正好对应马克思经济学关于劳动力的三个要素:劳动工具(计算机)、劳动者(程序员)、劳动对象(客观对象)。面向对象编程似乎已经进化到编程在哲学意义上的终点,是编程语言的终极形态。现实看起来也确实如此,最近三十年诞生的编程语言几乎全部都是面向对象的编程语言,面向对象一统天下。
  但事实真的如此吗?回望历史,我们站在上帝的视角去看,一切都是如此清晰、有条理;但凝望未来,我们还能如此笃定吗?情况也许并非如此。事实上,一方面,现实中的面向对象编程几乎从未实现人们期望中的面向对象编程。上面给出的Java的User对象示例就是典型,也是所有面向对象教程的第一个程序。但这又是一个我们经常见到却又非常不面向对象的对象。这个对象只有属性,没有行为,现实中的User对象显然不是这样的。国外与国内部分企业和部分程序员做到了真正的面向对象编程,但是国内绝大多数程序员并没有做到,面向对象编程普及几十年了,国内的大多数程序员依然做不到真正意义的面向对象编程,是程序员的问题还是编程语言的问题,或者其他的什么问题呢?

王宝强十部经典电影从淳朴到狠辣角色切换自如且精彩实力派王宝强的作品口碑不会太差,从17岁的时候就荣获金马奖了。近年来,他出演不少精彩的角色,以下是王宝强十部经典电影,甚至有些人从未听过片名。王宝强十部经典电影1、《盲井……鬼片推荐2019精选10部鬼片恐怖片让你过足瘾鬼片推荐2019:今年(2019)各类恐怖片开始陆续被放出,剩下的一大波也在持续酝酿中。下面精选201910部鬼片恐怖片,让你知道什么才是真正的恐怖王者!1、宠物公墓……银行家什么时候上映及讲的什么事情传记片《银行家》安排在2021年11月26日到中国上映,并给带来两名黑人企业家在种族歧视盛行的年代,所产生他们雇佣白人替自己出面经商,后期经过磨难,加上逆流改命,才能取得不错的……黑寡妇新海报曝光身穿紧身衣炫酷无比近日,电影《黑寡妇》的新海报曝光出来,看照片可以看出,黑寡妇身穿紧身衣,神色严肃,炫酷无比。具体海报细节我们一起来看一下。之前《黑寡妇》独立电影的概念图,片场照和片段视频……华为6G再次抢先一步,专利占比很大众所周知,华为的5G领域已经相当成熟,但却遭至了世界各地企业的相继排挤,不过挫折并不能让华为停下脚步,恰恰相反,在被针对的情况下,华为开始向6G领域进军,并已经取得了阶段性胜利……美剧必看的10部电视剧美剧tv高分美剧大盘点看每一集都很不舍,因为这次真的是看一集就少一集了。喜欢它的剧迷,我知道你们跟我一样都很不舍吧?没办法,天下无不散之宴席。好不舍hellip;感谢你们陪我一起长大。1美剧必看的1……最近新出的电影有什么2021年最值得期待的电影大片2021年了,那么最近新出的电影有什么上映的呢?对于影迷来说,好片扎堆的2020过去了,想知道2021年最值得期待的电影大片有哪些,下面整理汇总一起去了解了解。1最近新出……日剧甜大尺度12部盘点说到日本大尺度电影,不少人都会想到日本的爱情动作片,其实不然,本篇日剧甜大尺度12部,一个比一个没有节操!但剧情看着还是非常不错的,感兴趣的了解下。第1部:《人渣的本源》……隐秘而伟大结局谁活了剧情剧透解读结局有人牺牲吗最近有不少剧都播到大结局了,像《隐秘而伟大》这部剧的结局谁活了成了大家讨论的问题,那么,隐秘而伟大结局中有人牺牲吗?而《隐秘而伟大》结局谁活了这件事,不少人都不知道,不过根据已……古天乐宣萱犯罪现场怎么回事电影犯罪现场讲的什么近日,古天乐和宣萱同框现身来宣传自己的新电影《犯罪现场》,电影《犯罪现场》讲述了什么样的故事呢?电影《犯罪现场》什么时候上映呢?具体是什么样的情况,一起来看一下。古天乐宣……边缘行者上映时间,边缘行者是网络电影吗犯罪影片《边缘行者》选择在2022年4月15日上映,来给观众欣赏有着浓烈港片风格,而时间以香港回归前夕的时间节点做为背景,要在全国进行上映,由此觉得不可能成为网络电影给展现出来……python字符串操作字符串操作在各个计算机语言中都是比较常见的操作,下面我们对python的字符串操作做下简单介绍。一、索引操作字符串是由一些连续的字符组成,支持索引操作,索引位置从0……
小米路由器是如何用心思分散你的需要?1大家最常用的米家,可以设置小米路由器的wifi密码、重启。不支持其它操作。2网页版需要本地链接路由器,可以设置信道、密码、转发等。3手机端用小米wifiAPP,可……经常更新的手机系统的人,你做错了现在手机成为每个人必不可少的工具,可以说是机不离身,手机不在身边的每一刻都没有安全感,可谓是对手机爱得深沉!当然,手机的牌子也越来越多,喜好不一。有的人看重它的拍摄功能,有的人……别拿马斯克当朋友今天,埃隆马斯克当选美国《时代》周刊2021年度风云人物。全球首富、火星殖民倡导者、币圈韭菜收割者、特斯拉总裁、SpaceX创始人顶着这些虚虚实实、褒贬不一的头衔,马斯克……向应用程序诱导安装亮出制度红牌国家网信办近日公布的《移动互联网应用程序信息服务管理规定(征求意见稿)》提出,应用程序提供者不得通过虚假宣传、捆绑下载等行为,或者利用违法和不良信息诱导用户下载。相信不少……AIDA64正在适配鸿蒙OS,已经将华为应用市场单独列出鸿蒙2。0已经发布多时了,很多网友也都已经更新尝鲜了。鸿蒙OS作为全新系统,虽然兼容安卓APP生态,但还是有不少软件无法使用,尤其是目前的各种测试软件。近日,有网友在推特中询问……HarmonyOS被曝升级用户已达9000万,原来3亿真的只尽管现在不少人提起安卓手机的时候,还是会下意识地想到华为,但事实上自从6月初正式发布了HarmonyOS2之后,华为手机就已经不再属于安卓阵营,而是和苹果iOS一样有了自己的独……拉勾裁员CTO都裁!产品研发运营难幸免!快手爱奇艺继续裁不停拉勾裁员CTO都裁!产品研发运营难幸免!快手、爱奇艺继续裁不停。拉勾网裁员互联网招聘独角兽拉勾网迎来裁员。本次裁员涵盖了公司最重要的两条业务线:招聘线和教育线……清华教授用27小时讲完的Python,整整518集,拿走不谢兄弟!毫无套路!!!福利分享:1、本套视频一共518集,本套视频共分4季第一季Python基础。第二季。Python深入和扩展第三季网络编程、多线程、扩……红魔游戏手机6SPro新品预热透明,再进化8月25日,红魔游戏手机6SPro新品预热,公布了更多配置信息。从官方公布的预热信息看,红魔游戏手机6SPro将会采用看得见的黑科技,透明再进化。这应该就指高速离心风扇,……工业互联网迎来快速发展期2020年产业规模达9164。8亿元经过多年发展,我国工业互联网产业生态不断壮大,2020年产业规模达到9164。8亿元。目前,全国已培育100个以上具有行业特色和区域影响力的工业互联网平台,连接工业设备数量超过……卢伟冰小米MIX4供货较紧,首批预售一抢而空IT之家8月13日消息小米集团合伙人,中国区、国际部总裁卢伟冰在今日晚间发微博称,小米MIX4供货较紧,首批预售一抢而空,小米之家也基本预售完毕。小米MIX4供货较紧是由……美国新加坡推出瓷砖机器人!瓷砖铺贴会不会无人化?最近,美国和新加坡相继推出瓷砖领域相关的机器人。美国机器人公司DustyRobotics推出了一款名为FieldPrinter的机器人,可在施工现场的地面上直接打印出平面……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网