亲手设计现代算法架构,女图灵奖得主Barbara Li
发布时间:2019-11-25 08:50来源: 未知
好的代码既有内容又有风格。它提供了所有必要的信息,没有额外的细节。它绕过了低效和bug,准确、简洁和雄辩,足以被人类阅读和理解。
但到了20世纪60年代末,计算能力的进步已经超过了程序员的能力。许多计算机科学家在没有考虑设计的情况下创造了程序。他们编写了冗长、不连贯、充斥着“goto”声明的算法——如果满足某个条件,机器就会跳转到程序的新部分。早期的程序员依赖这些语句来修正他们代码中不可预见的结果,但它们使程序难以阅读、不可预测甚至带来了危险。糟糕的软件最终夺去了生命,就像Therac-25电脑控制的辐射机向癌症患者传送大量过量的辐射一样。
1968年,Barbara Liskov在斯坦福大学获得计算机科学博士学位时,她羡慕电气工程师,因为他们使用的是通过有线连接的硬件。该体系结构自然允许他们分解问题,并将其划分为模块,这种方法使他们能够独立地对离散组件进行推理,从而给予更多的控制。
作为一个思考代码的计算机科学家,Liskov没有可以使用的物理对象。像小说家或诗人一样,她盯着一张空白的纸。
Liskov曾在加州大学伯克利分校读过数学本科,她想把编程作为一个数学问题来研究,而不是作为一个技术问题,一个可以由逻辑原理和美学指导的问题。她想把软件组织起来,这样就可以对它进行控制,同时也能理解它的复杂性。