因此,我们这些一直在回答问题和处理错误报告一段时间的人都非常熟悉“完整的,最小的例子”的概念。你从一堆巨大的代码开始,这是一个奇怪的错误,你想问别人。但是你不想把整个混乱发送给他们,所以你开始将一堆代码切成小块,直到你得到这个结晶的20行宝石仍然有你开始时的同样的错误。
(然后,至少有一半的时间,你会意识到这个错误是什么,因为它像蜥蜴蛾一样盯着你的脸,你根本不需要问。但这是副作用。)< / p>
做那种代码减少并不是每个人都有的技能 - 它需要一些练习,除了很多新手尚未学会他们应该首先做的事实。关于如何提出好问题的新手有几套优秀的说明(例如,ESR的经典“如何提出问题的智能方式”)。有没有很好的说明可以解释究竟什么是最小的完整示例,以及创建它们的方式和原因?
答案 0 :(得分:3)
一切都在名字中。完整的最小示例是一个完整且最小的示例。完成意味着它包含所有相关信息,而最小意味着它不包含任何不相关的信息。识别什么是不相关的能力只有实践才能实现 - 试图为此提供说明似乎有点像试图提供骑自行车的说明。您可以提供技术说明并描述机制(以及您链接到的TeX常见问题解答),但最终真正学习的唯一方法就是做。
答案 1 :(得分:2)
我将从我熟悉的那些开始;这些都来自TeX社区,因此对编程有点偏向。我希望其他人有更好的答案。
英国TeX常见问题解答在http://www.tex.ac.uk/cgi-bin/texfaq2html?label=minxampl上有一篇关于“如何创建最小例子”的条目。
该页面指的是一篇关于“什么是最小工作示例?”的文章,在这里:http://www.minimalbeispiel.de/mini-en.html。同样,这是TeX文件;这些想法是一样的,但工具和细节有点不同。
编辑(2013/01):我在StackOverflow评论中注意到的另一个:http://sscce.org/处的“简短,自包含,正确(可编辑),示例”页面。不完美,它建议将20kb(!)作为上限,但是列表中的一个很好的补充。
编辑(2013/02): Jon Skeet有一篇关于撰写好问题的博客文章,其中包含一个看似有用的示例代码部分:http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx