在网上旅行的某个时刻,我遇到了一个很好的页面,它与不同方法进行操作序列的清晰度和简洁性形成鲜明对比,而不必制作一堆一次性变量,例如Var1,Var2,Var3。它尝试了列表理解,折叠,地图等。出于某种原因,现在重要的是我谷歌,我再也找不到它。任何人都知道我在说什么?或者想要探讨这个话题?
答案 0 :(得分:1)
你的问题没有多大意义。
列表推导,折叠和映射不是为了避免变量(它们也不可互换),它们是根据您尝试的方式处理数据的正确方法。
答案 1 :(得分:1)
答案 2 :(得分:0)
它可能更像是一门艺术,而不是一门科学。简而言之,我的建议是不再使用丢弃作为一般习惯,但同样地,不要害怕在你觉得合适或必要的地方聪明地使用它们。
当你开始学习时,一定要使用丢弃变量,如果它可以帮助你将事情分解成易于理解的块。但是试着尽快摆脱它,因为使用丢弃可能会使你的代码更难以维护和修改。另一方面,即使您有经验,有时您也可能会因为同样的原因而发现值得使用抛出:为经验不足的程序员保持可读性和可管理性。纯粹主义者可能会说你永远不应该使用它们,但我相信当你考虑软件维护的终生成本时,重要的是要记住可读性非常重要。也许这个论点不适用,如果你足够幸运能够在一个只雇用最好的人的环境中工作,但对于我们其他人来说,这根本不是现实世界的反映。
底线:什么是“正确”取决于你的技能水平,同伴的技能水平,你在做什么,以及代码的可能的波动性,复杂性和生命周期。用你最好的判断。
答案 3 :(得分:0)
回答答案说这个问题没有意义,你肯定认为如果你看到我所指的那篇文章就有意义了。关键是要优雅地处理一系列没有冗余中间变量的语句。泽德是正确的目标。我真的希望我能找到原始的链接,因为它非常详细,并且经历了5或6种方法,其中一些是从erlang邮件列表中引用的,并且权衡了每种方法的优缺点。