代码背后的女性:突破性别壁垒的技术先驱

本文介绍了几位在计算机科学和技术领域做出重要贡献的女性,如阿达·洛芙莱斯、芭芭拉·丽丝、GraceHooper、琳赛·桑德斯、孙玲、凯瑟琳·约翰逊和SophieWilson,展示了她们的智慧、勇气和对科技界的深远影响,鼓励更多女性参与和推动科技领域的发展。
摘要由CSDN通过智能技术生成

个人主页:17_Kevin-CSDN博客

收录专栏:《程序人生》


引言

在计算机科学的历史长河中,有许多杰出的女性为这个领域的发展做出了重要贡献。她们不仅在技术上取得了卓越成就,还打破了性别壁垒,为后来的女性树立了榜样。今天,让我们一起走进这些女性的故事,感受她们的智慧和勇气。


阿达·洛芙莱斯(Ada Lovelace)

阿达·洛芙莱斯(Ada Lovelace)是英国数学家和计算机科学家,被誉为“世界上第一位程序员”。她是计算机科学的先驱之一,对现代计算机技术的发展产生了深远的影响。

阿达·洛芙莱斯为计算程序拟定“算法”,写作的第一份“程序设计流程图”,被珍视为“第一位给计算机写程序的人”。为了纪念阿达·奥古斯塔对现代电脑与软件工程所产生的重大影响,美国国防部将耗费巨资、历时近20年研制成功的高级程序语言命名为Ada语言,它被公认为是第四代计算机语言的主要代表。

1815 年 12 月 10 日,阿达·洛芙莱斯出生在伦敦一个贵族家庭。她的父亲是英国著名诗人拜伦,母亲是一位数学家。阿达·洛芙莱斯从小就展现出了卓越的数学天赋,她对数学和科学充满了浓厚的兴趣。

1834 年,阿达·洛芙莱斯遇到了英国数学家查尔斯·巴贝奇(Charles Babbage),并对他的分析机产生了浓厚的兴趣。分析机是一种早期的计算机,它可以进行复杂的数学计算。阿达·洛芙莱斯开始与查尔斯·巴贝奇合作,帮助他设计分析机的算法和程序。

1843 年,阿达·洛芙莱斯发表了一篇名为《分析机概论》(Notes upon the Analytical Engine)的论文。在这篇论文中,她详细描述了分析机的工作原理和编程方法,并提出了一些有关计算机编程的重要思想。她还设计了一种用于计算伯努利数的算法,并将其编写成了分析机的程序。

阿达·洛芙莱斯的工作被认为是计算机科学的先驱之一。她提出了许多有关计算机编程的重要思想,例如程序循环、子程序、变量等。她的工作为现代计算机技术的发展奠定了基础。

阿达·洛芙莱斯的贡献在当时并没有得到广泛的认可。她的论文被认为是“神秘的”和“难以理解的”,而她的工作也被忽视了很长时间。直到 20 世纪 50 年代,随着计算机技术的发展,阿达·洛芙莱斯的工作才被重新发现和重视。

为了纪念阿达·洛芙莱斯的贡献,美国国防部在 1980 年将一种新的计算机语言命名为“ADA”。这是一种面向对象的编程语言,具有高度的灵活性和可扩展性。ADA 语言的开发团队希望通过这个名字来表达对阿达·洛芙莱斯的敬意和感激之情。

芭芭拉·丽丝(Barbara Liskov)

芭芭拉·丽丝(Barbara Liskov)是美国著名计算机科学家,2008 年图灵奖得主,是美国艺术与科学院、美国国家工程院、美国国家科学院院士。芭芭拉·丽丝(Barbara Liskov)是 20 世纪 70 年代和 80 年代最杰出的计算机科学家之一,她对编程语言和系统设计做出了重大贡献。她的工作对现代编程语言和软件设计产生了深远的影响。

芭芭拉于 1939 年出生在美国纽约的曼哈顿,她在卡内基梅隆大学获得了计算机科学博士学位。在她的博士论文中,她提出了“数据抽象”的概念,即通过定义抽象数据类型来封装数据和相关操作,从而提高代码的可重用性和可维护性。这个概念后来成为了面向对象编程的基础。

在 20 世纪 70 年代,芭芭拉·丽丝(Barbara Liskov)加入了施乐帕洛阿托研究中心(Xerox PARC),并在那里开发了CLU 编程语言和 Argus 系统。CLU 是一种面向对象的编程语言,它引入了许多现代编程语言中的特性,如继承、多态性和封装。Argus 是一个分布式系统,它使用了CLU 作为其编程语言,并提供了一种用于处理分布式系统中的并发和容错的方法。

芭芭拉的工作对于现代编程语言和软件设计产生了深远的影响。她的“数据抽象”和“面向对象编程”等概念已经成为了编程语言和软件设计的基本原则。她的工作也为分布式系统的研究和开发奠定了基础。

芭芭拉·丽丝于 2008 年获得了图灵奖,以表彰她对编程语言和系统设计的杰出贡献。她也是美国艺术与科学院、美国国家工程院、美国国家科学院院士。芭芭拉·丽丝(Barbara Liskov)是一位非常优秀的女性程序员,她在编程领域有着卓越的成就和贡献。她的故事告诉我们,只要有梦想和毅力,就能够克服困难,实现自己的人生价值。她的成功也为更多的人树立了榜样,激励着他们不断追求自己的梦想。

Grace Hooper

Grace Hooper 是一位美国计算机科学家和数学家,她在编程语言和编译器设计方面做出了重要贡献。

Grace Hooper 于 1936 年出生在美国纽约市,她在年轻时就对数学和科学产生了浓厚的兴趣。她在哈佛大学获得了数学学士学位,并在麻省理工学院获得了数学硕士学位和计算机科学博士学位。

在麻省理工学院期间,Grace Hooper 参与了许多重要的项目,包括第一个 Fortran 编译器的开发。她还参与了 Lisp 语言的设计和实现,并为该语言的发展做出了重要贡献。

除了在学术领域的工作,Grace Hooper 还积极参与了开源社区。她是 Unix 操作系统的早期贡献者之一,并参与了许多其他开源项目的开发。

Grace Hooper 的工作和贡献受到了广泛的认可和赞誉。她曾获得过许多奖项和荣誉,包括美国计算机协会的杰出贡献奖和美国数学学会的勒罗伊·P·斯蒂尔奖。

Grace Hooper 的故事告诉我们,女性同样可以在计算机科学和数学领域取得杰出的成就。她的工作和贡献为计算机科学和数学的发展做出了重要贡献,同时也为女性在这些领域的发展提供了榜样和支持。

琳赛·桑德斯(Lindsey Sanders)

琳赛·桑德斯(Lindsey Sanders)是一位美国女性程序员和开源社区的积极参与者。她在编程领域有着卓越的成就和贡献,同时也是一位倡导多样性和包容性的社会活动家。

琳赛·桑德斯在大学期间学习了计算机科学,并在毕业后开始了她的职业生涯。她曾在多家知名公司工作,包括微软、谷歌和亚马逊等。在这些公司中,她参与了许多重要的项目,并为公司的发展做出了重要贡献。

除了在公司工作,琳赛·桑德斯还积极参与开源社区。她是多个开源项目的贡献者,并担任了一些开源组织的领导职务。她的工作和贡献受到了开源社区的广泛认可和赞誉。

琳赛·桑德斯还是一位倡导多样性和包容性的社会活动家。她积极推动女性和少数族裔在编程领域的发展,并为他们提供支持和帮助。她还组织了许多活动和会议,以促进多样性和包容性的发展。

孙玲

孙玲是一位中国女性,她在编程领域有着卓越的成就和贡献。她是深圳市海柔创新科技有限公司联合创始人兼首席技术官,她的故事非常励志,让我们来详细了解一下。

孙玲出生于湖南省娄底市新化县的一个偏远山村,由于家庭贫困,孙玲的父亲不支持她继续读书,想让她早点出去打工赚钱。孙玲的父母为了儿子的学业,让孙玲在初中毕业后辍学。但是孙玲非常渴望继续学习,于是她在亲戚的帮助下,借钱购买了火车票,前往深圳打工。在深圳,孙玲进入了一家电池厂工作,每天工作 12 个小时,月工资只有 800 元。尽管工作辛苦,孙玲仍然没有放弃学习的梦想。她利用业余时间自学英语和计算机知识,并报名参加了深圳大学的自学考试。

在自学考试期间,孙玲每天早上 6 点起床,晚上 10 点下班后还要学习到凌晨 2 点。经过 10 年的努力,孙玲终于通过了自学考试,获得了深圳大学的本科学位。之后,孙玲又申请了美国的一所大学,并获得了录取通知书。为了支付学费,孙玲又开始了打工生涯。她在餐馆、超市、咖啡馆等地工作,每天工作 10 个小时以上。最终,孙玲攒够了学费,前往美国留学。

在美国留学期间,孙玲学习了计算机科学,并获得了硕士学位。毕业后,孙玲进入了硅谷的一家科技公司工作。在这家公司,孙玲表现出色,很快就晋升为高级工程师。之后,孙玲又加入了一家创业公司,并担任技术负责人。在这家创业公司,孙玲带领团队开发了一款智能机器人,受到了市场的广泛好评。

2023 年,孙玲离开了创业公司,与他人共同创办了深圳市海柔创新科技有限公司,并担任首席技术官。在孙玲的带领下,海柔创新科技有限公司成为了一家全球领先的智能物流解决方案提供商,为全球客户提供了高效、智能、可靠的物流解决方案。

Katherine Johnson

凯瑟琳·约翰逊(Katherine Johnson)是一位美国数学家和物理学家,她在太空探索领域做出了重要贡献。

凯瑟琳·约翰逊于 1918 年出生在美国西弗吉尼亚州的一个小镇上,她从小就对数学和科学产生了浓厚的兴趣。她在高中时就表现出了卓越的数学才华,并在 1937 年获得了西弗吉尼亚大学的数学学士学位。

在大学毕业后,凯瑟琳·约翰逊在一所黑人学校担任教师。1953 年,她加入了美国国家航空咨询委员会(NACA),该委员会后来成为了美国国家航空航天局(NASA)。在 NASA,凯瑟琳·约翰逊成为了一名数学家,她的工作是为太空任务进行轨道计算和分析。

凯瑟琳·约翰逊参与了许多重要的太空任务,包括阿波罗 11 号登月任务。在阿波罗 11 号任务中,凯瑟琳·约翰逊负责计算了航天器的轨道和着陆点,她的工作对于任务的成功至关重要。

凯瑟琳·约翰逊的工作和贡献受到了广泛的认可和赞誉。她曾获得过许多奖项和荣誉,包括美国国家航空航天局的杰出服务奖章和总统自由勋章。

Sophie Wilson

Sophie Wilson 是一位英国计算机科学家和企业家,她在计算机科学领域做出了重要贡献。

Sophie Wilson 于 1957 年出生在英国利物浦,她在年轻时就对计算机科学产生了浓厚的兴趣。她在剑桥大学获得了计算机科学学士学位,并在牛津大学获得了计算机科学博士学位。

在牛津大学期间,Sophie Wilson 参与了 Acorn 计算机公司的创建,该公司后来成为了英国最成功的计算机公司之一。 Sophie Wilson 是 Acorn 公司的首席设计师,她设计了 Acorn BBC Micro 计算机,这是一款非常成功的家用计算机,在 20 世纪 80 年代被广泛使用。

除了在 Acorn 公司的工作,Sophie Wilson 还参与了许多其他计算机项目的开发。她是 ARM 处理器的联合创始人之一,该处理器被广泛应用于移动设备和嵌入式系统中。

Sophie Wilson 的工作和贡献受到了广泛的认可和赞誉。她曾获得过许多奖项和荣誉,包括英国皇家学会的院士和皇家工程学院的院士。

Sophie Wilson 的故事告诉我们,女性同样可以在计算机科学领域取得杰出的成就。她的工作和贡献为计算机科学的发展做出了重要贡献,同时也为女性在这些领域的发展提供了榜样和支持。


结语

在这个时代,科技的发展日新月异,而在这背后,有一群女性技术先驱们默默地贡献着自己的力量。她们在技术领域中突破性别壁垒,成为了行业的佼佼者。今天,我们将讲述她们的故事,感受她们的智慧与勇气,希望她们的经历能激励更多的女性投身于科技行业,为世界带来更多的创新和改变。

无论是阿达·洛芙莱斯、琳赛·桑德斯、Grace Hooper,还是凯瑟琳·约翰逊、Sophie Wilson,她们都是技术领域的杰出代表。她们的故事告诉我们,性别并不是制约个人发展的因素,只要有梦想、有勇气、有决心,女性同样可以在科技领域中取得卓越的成就。

我们应该向这些女性技术先驱们致敬,感谢她们为科技领域的发展做出的贡献。同时,我们也应该鼓励更多的女性投身于科技行业,为实现性别平等、推动社会进步贡献自己的力量。

最后,我想引用美国前总统奥巴马的一段话来结束这篇文章:“当女性获得机会,整个社会都会受益。我们必须确保每个女孩都有机会发挥自己的潜力,无论她来自哪里,无论她的家庭背景如何。”

让我们一起为实现性别平等、推动科技发展而努力!


这里是Kevin,我们下篇博客再见!

本书由著名编程理论专家所著,是美国麻省理工学院电子工程与计算机科学系的编程实践课程教材。书中讨论了怎样构建具有高可靠性、易于维护和快速修改的软件的开发方法,强调了软件的模块化开发思想,用丰富的实例告诉读者怎样进行模块化并合理地组织各种模块以构成大型软件系统的过程。该书的前8章首次提出编程领域中的一些十分有用的抽象概念,如过程抽象、迭代抽象以及最重要的数据抽象等。此外,本书通过大量的例子,用非形式化的规范来详细定义这些数据抽象,描述模块所需完成的任务,并定义了模块所需的性能边界条件。该书的后7章主要讲述了怎样利用抽象构建大型软件,主要侧重于软件工程的内容,基于类型层次结构提出对于数据抽象的调试、测试、需求分析、自顶向下和迭代的开发过程,还简要介绍了设计模式的概念。 这是一本传授思想的书籍,能使读者透过现象看到本质,从而掌握编写程序的关键。本书非常适合作为软件学院的教材,在低年级即可培养学生对于事物的抽象能力。此外,本书也非常适合软件开发人员参考。 第1章 概述 1 1.1 分解和抽象 1 1.2 抽象 2 1.3 本书其他要旨 8 练习 8 第2章 理解Java中的对象 9 2.1 程序结构 9 2.2 包 10 2.3 对象和变量 11 2.4 类型检查 14 2.5 分派 18 2.6 类型 18 2.7 数据流输入/输出 20 2.8 Java应用程序 20 练习 22 第3章 过程抽象 24 3.1 抽象的好处 24 3.2 规格 25 3.3 过程抽象的规格 26 3.4 实现过程 29 3.5 设计过程抽象 31 3.6 小结 34 练习 35 第4章 异常 36 4.1 规格 37 4.2 Java异常机制 38 4.3 异常编程 42 4.4 设计问题 43 4.5 防御编程 46 4.6 小结 47 练习 47 第5章 数据抽象 48 5.1 数据抽象的规格 49 5.2 使用数据抽象 53 5.3 实现数据抽象 54 5.4 附加方法 59 5.5 用于理解实现的一些帮助 63 5.6 数据抽象实现的属性 69 5.7 推理数据抽象 71 5.8 设计问题 74 5.9 局部性和可更改性 76 5.10 小结 77 练习 77 第6章 迭代抽象 79 6.1 Java中的迭代 81 6.2 迭代器规格 82 6.3 使用迭代器 83 6.4 实现迭代器 85 6.5 发生器的表示式不变量和抽象函数 87 6.6 有序列表 87 6.7 设计问题 91 6.8 小结 92 练习 92 第7章 类型层次 94 7.1 赋值与分派 95 7.2 定义一个类型层次 97 7.3 用Java定义层次 97 7.4 一个简单的例子 98 7.5 异常类型 103 7.6 抽象类 103 7.7 接口 106 7.8 复合实现 107 7.9 子类型的含义 112 7.10 类型层次的讨论 117 7.11 小结 118 练习 119 第8章 多态抽象 121 8.1 多态数据抽象 121 8.2 使用多态数据抽象 123 8.3 重新访问相等性 124 8.4 附加方法 125 8.5 更多灵活性 127 8.6 多态过程 130 8.7 小结 130 练习 131 第9章 规格 133 9.1 规格和规格满足集 133 9.2 规格的某些标准 133 9.3 为什么要有规格 138 9.4 小结 140 练习 140 第10章 测试与调试 141 10.1 测试 142 10.2 测试过程 147 10.3 测试迭代器 147 10.4 测试数据抽象 148 10.5 测试多态抽象 150 10.6 测试一个类型层次 150 10.7 单元和综合测试 152 10.8 测试工具 153 10.9 调试 155 10.10 防御性编程 159 10.11 小结 160 练习 161 第11章 需求分析 163 11.1 软件生命周期 163 11.2 需求分析总结 165 11.3 股票跟踪系统 168 11.4 小结 171 练习 172 第12章 需求规格 173 12.1 数据模型 173 12.2 需求规格 180 12.3 股票跟踪系统的需求规格 183 12.4 搜索引擎的需求规格 187 12.5 小结 190 练习 191 第13章 设计 193 13.1 设计过程纵览 193 13.2 设计笔记本 195 13.3 交互式程序的结构 199 13.4 开始设计 202 13.5 对方法的讨论 208 13.6 继续进行设计 209 13.7 查询抽象 210 13.8 WordTable抽象 214 13.9 最后加工 216 13.10 FP和UI间的交互 216 13.11 模块依赖图表vs数据模型 218 13.12 回顾及讨论 219 13.13 自顶向下的设计 222 13.14 小结 222 练习 223 第14章 从设计到实现 224 14.1 评估一个设计 224 14.2 整理程序开发过程 232 14.3 小结 236 练习 237 第15章 设计模式 238 15.1 隐藏对象创建 239 15.2 聪明的对策 242 15.3 桥接器模 248 15.4 过程也必须是对象 249 15.5 复合 252 15.6 间接的力量 258 15.7 发布/订阅 260 15.8 小结 263 练习 263 术语表 264
评论 45
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DevKevin

你们的点赞收藏是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值