我有一页(第 1 页),日期为 1989 年 2 月 2 日,是我的前任老板给我的,概述了 Niman 的 13 条最低限度足够的编程戒律。 (他意识到它们已经过时了,这使它更像是考古学作品,而不是一套现代指南。)如果你还没有看过它们,它们如下:

  • 你应该充分注释你的代码以解释你的意图。人类不仅仅通过助记符来思考。
  • 你应该将数字常量等同于有意义的符号名称。说话清楚,避免异教图标。
  • 你应该描述你模块中的所有输入和输出。善待你的软件 sibling ,他们可能需要维护你的模块。
  • 你应该充分描述你的修订。期望你的同伴成为读心者是一种罪过。无论如何,读心术都是一种罪过。
  • 你应该提供你的汇编代码的伪代码解释。确实,组装不是 Cobol。
  • 每个模块只能有一个入口点和一个导出点。有许多入口和导出点的人应该期望他们的 body 发展相同。
  • 你应该在开发之前设计你的代码。确实,确实。
  • 你应该和你的同事一起审查你的代码。温柔的人有福了,因为他们将继承目标代码。
  • 你应该记录你的设计,并将文档提供给所有维护代码的人。确实,拒绝的人将永远在 hell 中调试操作系统。
  • 你应该能够接受对他们编码的有意义的批评。如果您为自己的守则感到羞耻,那么您应该成为一名职业投球手。
  • 在将代码放入库控件之前,您应该彻底(原文如此)测试您的代码。圣经中遗漏的一个部分是上帝测试约伯的地方,他必须调试一个大型 8096 汇编语言程序,该程序是柴油机 Controller 的一部分。整个事情在发布之前没有经过测试。更糟糕的是,乔布斯不得不使用英特尔工具。
  • 应尽可能避免使用全局数据结构。塔应该被命名为 Babel,程序不应该。
  • 当你的汇编程序员无法与优化编译的 20 世纪后期代码的效率相提并论时,你应该使用高级语言。谨防那些认为汇编总是比好的编译器所能产生的更有效(在速度和大小方面)的假神。你必须非常擅长设计和编码才能真正利用汇编语言。

  • 我在互联网上搜索并没有透露这些诫命的来源,或者尼曼的来源,而且我一直在试图了解更多关于这件事以及他可能不得不说的任何其他内容。我唯一的其他线索是在左下方,有首字母“DEN”——我假设 N 是 Niman 的意思,但我没有其他东西可以识别文本。所以,

    A. 尼曼是谁? (程序员?老师?顾问?公司里的随便一个人?)

    B. 这个页面来自什么? (旧的编程指南?一些公司手册?过去的一些 BBS?)

    C. 剩下的呢? (还有更多吗?还有什么?这是一个独立的东西吗?)

    为了回应这些评论,我的老板已经去世了,但在此之前,他在这个行业工作了很长时间,灰 mustache 等等。根据纸张的颜色,我相当确定日期(1989 年)大致是打印日期。

    最佳答案

    Mark 发现的 Donald E. Niman 是正确的。我应该知道,因为是我。那是我在印第安纳州哥伦布市的康明斯电子公司工作时写的 22 年前的东西。它有点过时了,从那时起我学到了一些东西,所以它应该被视为众所周知的一粒盐。唐纳德 E. 尼曼,亚利桑那州凤凰城。

    关于language-agnostic - 尼曼的 13 条最低限度足够诫命的来源在哪里?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1480081/

    10-13 03:05