Cover image
unitxym.eth

软件困局

我们接受的教育我们的智力更适合掌握静态关系,而对于随时间变化的进程,我们将其可视化的能力却并不发达。因此,我们应该尽最大努力(明智的程序员能意识到自己的局限性),缩短静态程序和动态进程之间的概念差距,使程序(在文本空间展开的)和进程(在时间上展开的)之间的对应关系尽可能的简单。 – Dijkstra在阅读代码时,代码应该尽可能方便读者在头脑中跟踪计算机在执行给定的代码行时所有变量的状态及它们的含义。我在学习的阶段经历的这些故事之间有什么联系?我是自学的。我上了很多计算机科学课程,也学了很多关于如何编写软件的知识。但是后者是前者的副产品,而不是直接结果。我所欠缺的是,有人能在我做错几次之前告诉我应该怎么做,或者有人查看我编写程序的细节,而不只是看它所取得的结果。尽管我毕业时取得了计算机科学专业的学位,但我非常缺乏后来作为程序员的职业生涯中通过经验最终获得的智慧。对于软件工程这意味着什么?最明显的问题是,一次又一次让每个人从头开始搞清楚这些事情是极大的浪费。软件开发工程中,基于实验和实验结果来决定后续步骤,并在前任已经做过的工作基础上建立一个工程的概念几乎是完全缺失的。这使得那些想雇...
Paragraph

unitxym.eth

Written by
garfeildma
Subscribe