编程世界发展史(1)——从Simula 67到UNIX战争

------来自《什么塑造了今天的编程世界》

1967年,Simula 67在挪威面世,引入了面向对象编程中最重要的一些概念(类、对象、继承、虚函数等),它对C++,java,C#的设计都有影响。

高德纳 (Donald Knuth,《The Art of Computer Programming》的作者) 在审阅出版社样书时觉得书中的数学公式排得太难看,所以发明了数学排版软件Tex和定义矢量字体的编程语言METAFONT。太强了**...O_O...**

传奇计算机科学家迪杰斯特拉( Edsger W.Dijkstra) 在1968年发表了*《Go To Statement Harmful》(Go To语句有害论),"数年来我观察到,程序员的素养是一个递减函数,其中的变量是他们写的程序中出现Go To 语句的密度。"*🤣

1969年10月29日,阿帕网 (ARPANET)问世------人类在互联网上发出第一条信息:LOGIN(后面三个字母没发出去)

1970!

计算机系统中最常见的纪年就是UNIX纪年:1970-01-01 00:00:00 开始,每秒递增。也因为此,到2038-01-19 03:14:07,时间就会累积到32位的存储空间的最大值2147483647---------当跳完2147483647那惊心动魄的最后一秒后,所有用到这种"标准时间库"的C语言程序都会碰到时间计算上的麻烦。

1970年,尼克劳斯·沃斯 (Niklaus Wirth) 开发的Pascal 问世了,简洁优美、编译速度快都让这门语言广受欢迎。他还还提出了"结构化编程"的概念,并凭借那句***"** Algorithms+Data Structures=Programs**"***拿下了图灵奖。

1970年,埃德加·科德(Edgar F.Codd )发表论文*《A Relational Model of Data for Large Shared Data Banks》* ,也就是关系数据库的提出,Oracle就是根据科德的理论实现的。

贝尔实验室的肯·汤普森和丹尼斯·里奇在他们的论文里说:"Unix is very simple, it just needs a genius to understand its simplicity." (有被点到**...(⊙_⊙;)...**?

事实上,Unix的这次公开露面也为后面的Unix战争埋下了导火索。

1972年,艾伦·凯 (Alan Kay) 和团队开发出来第二门面向对象语言------Smalltalk ,采用了动态信息传递机制(关注object还是Messaging?),在它的影响下,1984年Objective-C诞生了,直到2014年Swift诞生前,它都是评估公司软件生态中最重要的开发语言。

IBM在20实际60年代进行System/360大型机研发,被视为"计算机发展史上的一次豪赌",赌得很成功,尽管其中OS/360操作系统的开发用了5000人年------"有史以来最可怕的软件开发泥潭" 。这个项目的负责人或许被这个项目的开发过程启发,在1975年出版了*《人月神话》* ,探讨 "The Mythical Man-Month(人月迷思)"

70年代后期IDE出现了,但是直到现在,还有不少人坚持不用IDE,IDE好不好的争论还是进行时。

20世纪80年代到90年代初Unix的各种商业化版本和非商业化版本混战开始,也就是Unix战争。这场没有硝烟的战争涉及商业、法律、专利、诉讼等诸多主题,几乎所有的知名企业都没能幸免,唯一的正面影响是,诞生了POSIX标准

相关推荐
周杰伦fans2 小时前
C#中修饰符
开发语言·c#
avi91113 小时前
[AI相关]Unity的C#代码如何简写
unity·c#·语法糖
CoderIsArt5 小时前
openGL和C#下使用openGL
开发语言·c#
视觉人机器视觉8 小时前
机器视觉中的3D高反光工件检测
人工智能·3d·c#·视觉检测
CodeCraft Studio8 小时前
文档处理控件TX Text Control系列教程:使用 .NET C# 从 PDF 文档中提取基于模板的文本
pdf·c#·.net
一念春风8 小时前
C# 背景 透明 抗锯齿 (效果完美)
开发语言·c#
哈里哈气8 小时前
某手sig3-ios算法 Chomper黑盒调用
objective-c·ios逆向·frida·chomper
且听风吟ayan8 小时前
leetcode day19 844+977
leetcode·c#
C137的本贾尼8 小时前
解决 LeetCode 串联所有单词的子串问题
算法·leetcode·c#
CoderIsArt11 小时前
C# 中的一个特性(Attribute)[ThreadStatic]
c#