当前位置:看书小说 > 都市小说 > APP里的碎片 > 第三卷第三章落灰学编程:从番薯到电子计算机的奇妙之旅!

第三卷第三章落灰学编程:从番薯到电子计算机的奇妙之旅!

<< 上一章 返回目录 下一章 >>
    妈妈回来啦,嘿嘿,这是咋地啦?快过来帮妈妈搬番薯,这活儿可不轻啊!落灰那小子,跑过去就像个拼命三郎似的,拖着番薯就走。

    那边花架子奶奶呢,站在沙发前闻着烤番薯的香味,简直就像一只馋猫。她三步并作两步走到门口,看着胖粒和落灰帮她妈妈拉番薯,笑得合不拢嘴:“范舒啊,你回来啦!”

    妈妈看了一眼花架子奶奶,笑着说:“花姨,你好久没来了,今天真是赶得巧,我刚烤了些番薯,你带点回去尝尝。”

    花奶奶也不客气,拿了一些烤番薯就笑着说:“范舒啊,花姨就先回去了,家里虽然没人,但今天买了只鸡,时间也不早了,我得回去炖鸡了,你们先忙吧。”

    白老爷那老头子,踉踉跄跄地跟在花架子奶奶后面,还对身后的我们几个人说:“改日见,我去给花奶奶打下手。”

    谭板栗那小子也追了上去,不知道想干嘛。

    胖粒这小丫头抬起头问道:“妈妈,爷爷走了,我们晚上吃什么呀?”

    小落灰这个机灵鬼,马上就说:“我的双胞胎妹妹哟,这还用问吗?肯定是烤番薯啦!”

    俩小孩就帮着妈妈把番薯拉到厨房,这时候,有一双胖胖白嫩的手抓住了他们拖着的番薯。俩小孩抬头一看,原来是爸爸回来了。胖粒带着点哀愁难过的说:“爸爸,爷爷跟着花奶奶出去了,我们晚上只能跟你吃番薯粥了。”

    落灰这小家伙倒是挺乐观的,说:“爸爸你回来正好,咱们去你房间聊聊编程吧。”

    谭灰晨这个当爸爸的,笑着说:“好啊,那两个烤番薯就跟爸爸到房间聊编程吧!”

    小胖粒就跟妈妈一起吃番薯粥,小落灰和谭灰晨父子俩在房间里,你一言我一语,不知道聊得什么,但看着他们的笑脸,就知道满满的都是爱啊!

    谭灰晨带着落灰走进自己的房间,房间布置得既简洁又充满科技感。书架上摆满了各种编程书籍和电脑杂志,电脑桌上放着一台配置高级的笔记本电脑。

    “落灰,你想聊编程的哪个方面?”谭灰晨问道,一边打开电脑。

    落灰说:“爸爸,这啥是编程?”

    谭灰晨晨边磕着番薯,边说:“编程,简而言之,就是给计算机下达指令,使其能够完成特定的任务。这些指令被组织成一种计算机可以理解的语言,我们称之为编程语言。编程允许我们创建软件、操作系统、网站、游戏等各种各样的数字产品。

    编程的起源可以追溯到19世纪初,当时的人们开始尝试用数学语言来描述机械和物理系统的行为。例如,查尔斯·巴贝奇(charles babbage)在1830年代设计了一种名为“分析机”的机械设备,它可以通过读取打孔纸带上的指令来执行计算。然而,由于技术限制,这种机器并未实际制造出来。

    真正意义上的编程概念是在20世纪中期开始形成的。”

    落灰疑惑的拍着谭灰晨的肩膀问道:“爸爸,咋,怎么说呢?”

    谭灰晨啃了啃番薯笑着说:&34;编程,这个在我们今天看来再普通不过的概念,其实背后有着一段曲折而富有传奇色彩的历史。想要追溯编程概念的真正起源,我们得回到20世纪中期,那时的科技圈还远没有现在这么繁华,但正是那段时期,奠定了我们今天科技世界的基础。

    故事得从1940年的美国宾夕法尼亚大学说起。那里,一位名叫约翰·莫奇利(john mauchly)的物理学家和一位名叫普雷斯伯·埃克特(presper eckert)的工程师,携手开启了一个划时代的项目——eniac(electronic numerical integrator and puter)。

    eniac并不是第一台计算机,但它却是第一台真正意义上的电子计算机,它的出现为编程概念的诞生提供了硬件基础。eniac的体积庞大,占满了整个房间,而且它的运算速度在当时可谓是飞一般——每秒能完成5000次加法运算。

    但是,eniac虽然强大,却有一个致命的缺点:它只能执行硬编码的任务,也就是说,每次要改变它的运算内容,都得重新调整它的内部线路。这显然不是长久之计,于是,莫奇利和埃克特开始思考如何让这台机器变得更加灵活。

    转机出现在1945年,当时美国数学家约翰·冯·诺依曼(john von neumann)提出了存储程序的概念。他认为,计算机应该有一个专门的内存区域来存储程序和数据,这样,程序就可以像数据一样被加载到计算机中,从而实现不同的功能。这一理念为编程概念的诞生奠定了理论基础。

    随后,在1949年,美国数学家和计算机科学家格蕾丝·霍珀(grace hopper)为eniac开发了一套编程语言——flow-matic。这是人类历史上第一套高级编程语言,它使得程序员可以通过编写程序来控制计算机,而不需要直接操作计算机的硬件。flow-matic的出现,标志着真正意义上的编程概念的诞生。&34;

    落灰想了想说道:“爸爸这么说的话,从那以后,编程逐渐发展成为一门独立的学科。从最初的机器语言、汇编语言,到后来的高级语言、面向对象编程,再到现在的云计算、大数据、人工智能等领域,编程的应用范围越来越广泛了。”

    谭灰晨拿了一个杯子边冲大麦茶边说:“从eniac的诞生,到存储程序理念的提出,再到flow-matic的出现,这一系列的历史事件共同推动了编程概念的诞生和发展。

    在这个时期,计算机开始被发明并逐渐普及。为了能够让计算机执行任务,人们需要一种方法来描述和存储计算机应该执行的指令。这就是编程语言的起源。

    早期的编程语言主要是机器语言和汇编语言。机器语言是计算机能直接理解和执行的二进制指令集,而汇编语言则是一种用文本形式表示机器语言的方法,它更容易被人们编写和阅读。然而,这两种语言都有一个共同的问题:它们非常依赖于特定的计算机硬件,因此很难在不同的计算机之间移植。

    为了解决这个问题,人们开始开发更高级、更通用的编程语言。这些语言,如c、c++、java、python等,允许程序员用更抽象、更易于理解的方式来描述问题和解决方案。这些高级语言不仅提高了编程的效率和可维护性,还促进了软件工程的发展。”

    落灰无奈缓慢的问道:“爸爸什么是eniac?”

    谭灰晨笑着说:“哎哟,eniac啊,这可是个话题满满的“老祖宗”级别的计算机!它诞生在1945年,地点是美国宾夕法尼亚大学,那时候的它可是个庞然大物,占地面积足足有170平方米,重达30吨!想象一下,这么个大家伙,得有多少电线、晶体管和其他零件才能拼凑起来啊!

    eniac的全称是electronic numerical integrator and puter,翻译成中文就是“电子数字积分计算机”。听名字就知道,这家伙一开始可是为了数学计算而生的。它采用了18000多个电子管,这些电子管在当时可是相当先进的技术,它们的运算速度虽然比起现在的计算机来慢得跟蜗牛似的,但在当时可是个了不起的成就。

    而且啊,eniac的运算速度在当时可是秒杀一切的存在。它能够以每秒5000次的速度进行加法运算,这在当时可是个天文数字!你想想看,那时候的计算机,运算速度能达到这个程度,简直是不可思议的事情。

    不过啊,虽然eniac已经退役好多年了,但它作为计算机发展的里程碑,依然值得我们怀念和敬仰。它见证了计算机从无到有的过程,也让我们更加珍惜现在这些小巧玲珑、功能强大的计算机。

    所以啊,下次当你听到“eniac”这个名字的时候,可别忘了它可是计算机界的“老祖宗”,是我们现代计算机发展的奠基之作哦!”

    落灰开心的说爸爸我知道了:“e-n-i-a-c。”

    说完落灰拿着番薯啃两口问道:“爸爸,那什么是flow-matic?”

    说起flow-matic,这可真是计算机编程领域里的一块“活化石”啊!在20世纪50年代,那个时候的计算机编程还远远没有现在这么“高大上”,更别提什么“面向对象”、“函数式编程”这些时髦概念了。那个时候,编程更像是一种“手艺活”,得靠程序员们一根根地“拧螺丝”,用最基本的指令来告诉计算机该干什么。

    flow-matic,这个名字听起来就很有“年代感”吧?它其实是一种面向商业应用的编程语言,专门用来处理那些繁琐的、重复性的数据处理任务。它的出现,可以说是为了解决当时商业领域里数据处理的一个大问题。你想想看,那个时候的商业数据处理,可不像现在这么方便,没有数据库、没有高级编程语言,连计算机都还是“稚嫩”的婴儿期呢!

    flow-matic最大的特点就是“直观”和“易懂”。它的编程风格非常接近于自然语言,甚至可以说是“人话”。举个例子来说,如果你想让计算机统计某个销售部门在过去一年的销售额,你不需要去记住复杂的编程语法,只需要告诉flow-matic:“从销售数据库里取出去年的数据,按照部门分类,然后计算每个部门的总销售额。”就这么简单!

    当然了,对于现在的程序员们来说,flow-matic可能显得有点“原始”和“笨拙”,但在那个年代,它可是个“大杀器”啊!它帮助了无数的商业公司实现了自动化的数据处理,大大提高了工作效率。而且,flow-matic还推动了计算机编程的发展,为后来的编程语言设计提供了宝贵的经验和启示。

    所以说啊,flow-matic虽然现在已经很少有人使用了,但它在计算机编程历史上的地位可是不容忽视的。它就像是一个“老前辈”,见证了计算机编程从“婴儿”到“成人”的整个过程,也为我们这些后来的程序员们留下了宝贵的历史遗产。

    这就是flow-matic的故事啦,一个充满了“年代感”和“历史感”的编程语言。当然啦,如果你对编程感兴趣的话,最好还是去学习一些更现代、更强大的编程语言,比如python、java之类的。不过,偶尔也可以回头看看这些“老前辈”,了解一下它们的历史和故事,也是挺有意思的一件事呢!”

    范舒拿了两碗番薯粥给落灰和谭灰晨,小胖粒跟着进来说道:“爸爸,你们在聊什么呢?”

    谭灰晨抬起手摇了摇,说到:“过来胖粒,爸爸,抱抱,来听听爸爸和哥哥正聊着编程语言呢?”

    胖粒疑惑的问:“爸爸编程语言,都有哪些呢?”

    谭灰晨笑着说:&34;编程语言不仅仅是开发软件或应用程序的工具,它们也是构建、配置和管理网络基础设施的关键要素,编程语言大致有这么几种!”

    胖粒低着头看着谭灰晨大声缓慢的问道:“爸爸,都有哪几种?”

    谭灰晨说:“比如python是一种解释型、高级编程、通用编程语言。它的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。它支持多种编程范式,包括面向过程、面向对象和函数式编程。在网络工程中,python常用于自动化脚本编写、网络监控、网络流量分析、网络安全等领域。

    java是一种面向对象的编程语言,不仅吸收了c++语言的各种优点,还摒弃了c++里难以理解的多继承、指针等概念,因此java语言具有功能强大和简单易用两个特征。java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。在网络工程中,java主要用于开发大型企业级应用,如分布式网络管理系统、云计算平台等。

    3 c++:c++是一种静态类型的、编译型的、通用的、大小写敏感的编程语言,支持过程化编程、面向对象编程和泛型编程。c++是c语言的继承,它既可以进行c语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。在网络工程中,c++常用于开发高性能的网络应用,如网络协议的实现、网络设备的驱动程序等。

    javascript是一种属于网络的脚本语言,已经被广泛用于web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。在网络工程中,javascript主要用于前端开发,如构建网络管理界面、实现web api接口等。”

    谭灰晨喝了一口米汤继续说道:“胖粒落灰你们知道吗还有ruby是一种为简单快乐而创建的动态、反射、面向对象、通用、脚本编程语言。ruby语言由松本行弘(yukihiro &34;matz&34; matsumoto)于1995年在日本创造,受perl、eiffel、ada与lisp语言的影响。在网络工程中,ruby主要用于网络服务的快速开发和测试,以及构建一些辅助工具。

    还有go(又称golang)是google开发的一种静态强类型、编译型语言,运行效率高,适合于多处理器系统,对网络的编程支持相当完备,非常适合做服务端开发。在网络工程中,go语言因其高效的并发处理能力而被广泛应用于网络服务的开发,如负载均衡器、代理服务器等。

    这些编程语言各有特点,适用于不同的场景和需求。&34;

    落灰问到:“爸爸,它们都是谁开发的?”

    谭灰晨抱着胖粒看着落灰笑着说:“编程语言的诞生和发展,就像一部精彩纷呈的历史长卷。想象一下,在古老的计算机时代,程序员们是如何用0和1去指挥那些笨重的机器,这简直就是一场魔法般的表演。不过,很快人们就意识到,这种编程方式对于普通人来说实在是太晦涩难懂了,于是,编程语言应运而生。

    让我们先回到1950年代,那时候的计算机还是一片空白,就像一张白纸等待着我们去书写。在这个时代,有一位名叫约翰·巴克斯(john backus)的天才,他提出了fortran语言的概念。fortran,这个名字听起来就像是“为了转变”的意思,它的确改变了编程的历史。fortran是第一个被广泛使用的高级编程语言,它让程序员能够用更接近于人类语言的方式来编写程序,大大提高了编程效率。

    随着计算机技术的飞速发展,编程语言也不断涌现。在1960年代,出现了像algol和lisp这样的语言,它们为后来的编程语言奠定了坚实的基础。到了1970年代,c语言崭露头角,它的出现为操作系统和硬件驱动的开发提供了强大的支持。

    而在1980年代,java语言横空出世,它凭借跨平台的特性迅速走红。java的创造者詹姆斯·高斯林(james gosling)曾经在一个咖啡店里,用21天时间写出了java的原型,这个故事至今仍然被传为佳话。

    python语言的创造者吉多·范罗苏姆(guido van rossum),他原本是一名荷兰的数学家和计算机科学家。在寻找一种更适合教学的编程语言时,他发明了python。python语言以其简洁易懂的语法和丰富的库资源,迅速成为了许多开发者的首选。”
<< 上一章 返回目录 下一章 >>
添加书签