当前位置:  开发笔记 > 编程语言 > 正文

要foo吧,还是不要foo bar:这就是问题所在

如何解决《要foo吧,还是不要foobar:这就是问题所在》经验,为你挑选了3个好方法。

这是最初在大型书呆子牧场的查尔斯布莱恩奎因在acts_as_conference上发表的演讲中讨论的内容.他正在讨论他从指导Ruby on Rails Bootcamp所学到的东西给许多新手编程和Rails新手的人.

突出的一个特别的幻灯片就是在尝试教别人编程时,从不使用foo和bar作为例子.他的推理非常简单.

哪个更容易理解?

baz = foo + bar

要么

answer = first_number + second_number

在解释某些内容时,我自己发生了很多次,然后我立刻跳到了foo bar占位符,然后意识到我的错误,并通过使用真实场景让这个例子变得更有意义.

这一点尤其适用于尝试教导没有编程曝光的人,并且在解释你实际上要教的内容之前最终需要解释foo和bar.

然而,对有经验的程序员使用foo和bar似乎没问题,尽管我个人认为,与Charles一起,这是需要改变的东西.

快速SO搜索"foo"会返回超过20页的结果,foo以我能理解的更多方式使用.在某些情况下,我正在阅读关于特定语言的问题,而我正在这样做以帮助更好地理解该语言.如果使用适用的变量名而不是foo和bar,则可以更容易理解和解释问题.因此对于经验丰富的开发人员来说,这个结构似乎也有点缺陷.

这是一种能够被踢的习惯吗?你为什么选择foo bar或者不选择foo bar?



1> Santiago Pal..:

它严格取决于你想要教什么.有时候,在展示一个编程示例时,你必须声明一些只是为了使代码片段"完整",而这几件事情并不是你所展示的核心内容.

例如,如果你想展示如何抛出异常,我相信可以提供一个类似的代码片段

public void foo() { 

   // Do some things

   if (errorCondition) {
      throw new Exception("Error message");
   }

}

由于它中的点是显示异常,所以关心方法名称是没有意义的,所以foo在这种情况下是"合法的",或者至少对我而言.

我不会接受(在同一个例子中)

public void foo() { 

   // Do some things

   if (bar) {
      throw new Exception(baz);
   }

}

因为它模糊了你想要教的东西.



2> 小智..:

我可以在与非程序员交谈时看到这一点,但是当你在白板上与一些团队成员讨论问题时......我会想念我的抱负和我的酒吧.我认为foo/bar的盛行是大多数程序员抽象思考的能力的一个例子.

如果您在训练场上,可能会出现更多问题.



3> Toon Krijthe..:

我有时会用它们.但只有"真实"的名称不相关.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有