您好,欢迎访问北大青鸟南京职业培训学校!

15195455103

全国咨询热线

当前位置: 主页 > 青鸟新闻 > 行业新闻 >

计算机编程的 20 年变迁



更新时间:2020-04-02   来源:南京北大青鸟   作者:南京北大青鸟   点击:

  技术在更迭,科技在变化。20 年前,或许只是处于概念型的技术,如今早已深入落地我们的日常生活中,而从计算机编程角度来看,在互联网发展的 20 年间,究竟有哪些根本性的变化?本文即将揭晓答案。

  我在 Quora 上看到了 “现在的计算机编程和 20 年前有何不同?” 这个问题 ,就开始思考答案。由于答案太长,现在将其整理成一篇文章发表在此。

  以下是我总结的过去 20 年计算机编程的变化,将这些变化以随机的顺序列举出来:

  一些 20 年前还是理论性的概念,像不可变性、尾部递归、集合的惰性求值、模式匹配、一级函数(如 lambda 表达式)等函数式编程范式,现在已经成为主流。

  “桌面软件”的含义也发生了变化,现在桌面软件指能够在浏览器中显示的 WEB 页面。

  虽然面向对象编程(OOP)依然是流行的编程模型,但现在也失去了些许威望。基于特质的新的编程模型在像 Go、Rust 和 Swift 这些现代编程语言中更为普遍。组合优于继承。

  除非你能参加一个价值 2000 美元门票的会议,并分享一张参会的自拍,否则你都不好意思说自己是一个专业程序员。

  由于 CPU 核心的大量增加,现在编程语言级别大都支持并行编程,而不是20年前的原始系统调用。引入了异步编程原语 (async / await)、并行协同程序(如 Go 语言中的 goroutine) 或 D语言中的通道 (channels)、可组合语义 ( 如响应式编程中的 observable)。

  像素不再是统一的度量单位。

  垃圾回收已经成为保证编程安全的常见方式,但新的安全模型正在出现,如 Rust 的生命周期语义和代码审查中的尖锐笑话。

  Java 有 30 亿个设备上运行。这个数字在过去的十年里没啥变化。

  20 年前,我们常需要访问网站,搜索类库,下载压缩包,复制到正确位置并将其添加到构建配置的路径中。而现在对编程语言而言,包管理的生态系统必不可少。人们已经不再想手动搜索、下载和安装类库了。

  现在软件开发团队早上都会开 15 分钟的站会,还会用一些便利贴画一些奇怪的符号。

  现在的编程工具更加丰富。一个编程语言通常包括一个编译器或者调试器。现在它们通常会带有链接程序、源代码格式化程序、模板创建程序、自更新能力。你还可以在编程语言中使用一些启动参数。

  甚至编程语言也在制表符 vs 空格符的争论中站队。

  Adobe Flash 曾经是提供 web 流畅交互的唯一方式,幸运的是,现在这种现象已经不复存在。现在不同的平台上要使用不同的编程模型进行开发,从而能够实现相同级别的交互。

  IDE 和编程语言的绑定关系越来越弱。20 年前,通常 IDE 会和某种编程语言绑定,如 Eclipse for Java,Visual Basic,Delphi for Pascal 等。现在,有了像 VS Code 这样的文本编辑器,它几乎可以支持任何需要 IDE 特性的编程语言。

  代码现在至少在三层虚拟化之后运行,代码不必在裸机上执行。

北大青鸟中博软件学院

  20 年前几乎只有 PC。现在,各种架构的跨平台(移动设备、云服务器和嵌入式物联网系统)开发已经成为标配。

  现在你几乎不需要在本地运行代码。

  现在文档总是在线的,如 Google 文档。现在已经没有离线文档了,即使有,也没人知道了。

  如果教程不是视频形式的,理解成本比文本还高几个数量级,那就意义不大了。

  当 StackOverflow 还不存在时,编程问题需要向同事请教。

  现在,人们在 Mac 上开发软件。

  联网是常态,断网是例外。20 年前正好相反。

  现在,必须考虑安全性问题。

  现在,移动设备已经可以显示常规的 WEB 页面,不再需要在单独的子域名上创建 WAP 页面。现在我们在不同的子域名上创建移动页面。

  现在默认情况下,代码都是开源的,除了有些代码会让我们感到尴尬。

  多亏那些反对歧视的人,更多聪明的女性、有色人种和同性恋都能成为计算机编程从业者。虽然我不敢说已经完全平等,但是现在已经好了很多。

  被黑客攻击已经是家常便饭。现在用户数据的丢失,写一篇提示用户修复密码的文章即可,无需道歉。

  我们不再需要使用因特网中继聊天( IRC)进行沟通。因为不想输入服务器地址,我们便倾向于使用臃肿的 Slack。

  我们用显卡运行程序。

  虽然集中式和规则为基础的版本开发效率更高。现在,如果你的项目不涉及到区块链或人工智能,就很难创造商业价值。

  由于某些原因, 现在 1G 存储空间已经不够用了。

  由于边信道攻击(side channel attack 简称SCA) 我们甚至无法完全信任物理处理器。

  很大一部分计算机编程任务是在足球桌上完成的。

  虽然我们的 CPU 运行速度更快,但是用 Python 实现数值计算仍然比 Fortran 慢得多。现在数值计算和 20 年前耗时几乎一样。

  现在创建一个编程语言甚至创建新的硬件已经成为一个普遍的嗜好。

  单元测试被大肆炒作,和一些其他有用的东西一样,单元测试的的好处被夸大,不可避免的成为了一种信仰。

  虽然现在禁止用明文存储密码,但是依然还有人这么做。


版权声明:本文内容、图片由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至2353260942@qq.com 举报,一经查实,本站将立刻删除。(如需投稿联系管理员开通!)

在线客服

ONLINE SERVICE

返回顶部