我一直在阅读代码完整,目前还不远,但它所涉及的内容之一是PDL - 一种更高级别的设计语言,您可以在选择语言编写之前编写每个例程。
我想知道在现实生活中是否真的有人这样做过吗?它说的另一件事是将代码中的每一行PDL作为注释。当然这是过于冗长的评论?
我从未在现实生活中使用PDL,除了可能类似ISWIM的大学课程,但我在编写自己的代码时从未使用过它。
当然,如果你先用伪代码编写每个例程/方法/其他内容,你最终会浪费很多时间吗?
答案 0 :(得分:1)
当然,如果你先用伪代码编写每个例程/方法/其他内容,你最终会浪费很多时间吗?
完全没有 - 事先计划好你要做的事可以节省时间。它迫使你在最简单的阶段(即在你真正做过任何事情之前)思考问题并进行重构。
您不必完全编写每个例程 - 只需要完成关键步骤,为您提供足够的心理图谱,说明每个部分将做什么,以及您是否计划了所需的一切。
我从来没有听说过PDL(Program Design Language?),并且 - 看了之后 - 看起来似乎是罗嗦,丑陋和太多的努力,我不建议使用它 - 坚持简洁但可读的伪代码。
答案 1 :(得分:1)
我在20世纪80年代使用它时,我在防守工作。 PDL对于一个1-1000行代码的独家程序员周末项目来说太过分了。但是,如果您正在与十几位软件工程师一起开发10k-100k代码系统,那么它非常适合用瀑布式方法定义初步软件设计。此外,它的设计符合MIL-STD软件开发要求。
答案 2 :(得分:0)
我记得我在大学一年级的软件工程学位期间我的一位讲师拒绝帮助学生,如果他们至少没有尝试某种伪代码。
很多人过去常常抱怨它,但它是我从他那里得到的一项技能,我在设计软件的过程中大部分时间都在使用自己。在编码时我总是在我旁边有一个垫和笔!的:)强>答案 3 :(得分:0)
是的,我知道。但是在我读完这本书之前,我没有意识到它被称为PDL。我称之为伪代码。伪代码和PDL之间的区别并不大 - PDL避免使用目标语言结构,这在实践中并不是什么大问题。
如果例程不是那么简单,我会从PDL开始。
BTW,McConnell在第二版Code Complete中使用了字伪代码而不是PDL。答案 4 :(得分:0)
用伪代码写东西是非常有用的,你最终得到了已经写好的文档;-)。它会将您的意图与您的实现分离,多次是针对您的语言或环境的优化黑客。未来的维护者或人们重构代码或翻译成其他语言时,如果您将伪代码保留在文档中,将非常感谢您。我从来没有调用PDL,也因为Perl中的PDL意味着Perl数据语言,这是一个非常有用的包,用于处理大型数据集作为R中的向量或矩阵。