17.3有些人说goto是邪恶的,改怎么看待
程序设计风格, 就象写作风格一样, 是某种程度的艺术, 不可以被僵化的教条所束缚。虽然风格的探讨经常都是围绕着这些条例。
对于goto 语句, 很早以前, 就被注意到, 随意的使用goto 会很快的导致象面糊一样难以维护的代码。然而, 不经思考就简单的禁止goto 的使用, 并不能立即导至好程序。一个无规划的程序员可以不用任何goto 语句而构造出复杂难解的代码, 也许使用奇怪的嵌套循环和布尔变量来取代goto。通常, 把这些程序设计风格的评论或者“条例” 当作指导准则比当作条例要更好。当程序员理解这些指导准则所要实现的目标, 就会工作的更加之好。盲目的回避某种构造或者死套条例而不融会贯通, 最终还会导致这些条例试图避免的问题。
此外, 许多程序设计风格的意见只是意见。通常卷入“风格战争” 是毫无意义的。某些问题(象问题5.3, 5.7, 9.2 和10.5), 争辩的双方是不可能同意, 认同对方的不同或者是停止争论的。
对于goto 语句, 很早以前, 就被注意到, 随意的使用goto 会很快的导致象面糊一样难以维护的代码。然而, 不经思考就简单的禁止goto 的使用, 并不能立即导至好程序。一个无规划的程序员可以不用任何goto 语句而构造出复杂难解的代码, 也许使用奇怪的嵌套循环和布尔变量来取代goto。通常, 把这些程序设计风格的评论或者“条例” 当作指导准则比当作条例要更好。当程序员理解这些指导准则所要实现的目标, 就会工作的更加之好。盲目的回避某种构造或者死套条例而不融会贯通, 最终还会导致这些条例试图避免的问题。
此外, 许多程序设计风格的意见只是意见。通常卷入“风格战争” 是毫无意义的。某些问题(象问题5.3, 5.7, 9.2 和10.5), 争辩的双方是不可能同意, 认同对方的不同或者是停止争论的。