在学习编程的过程中总会遇到各种各样的问题,那我们该如何解决这些问题呢?最简单的方法就是当面请教,其次就是求助于问答网络。现在简单总结一下如何提出一个好的问题。
提问之前的准备
1.遇到问题时不要急着问别人,在时间允许的情况下看是否自己能够解决,尝试在你准备提问的论坛的旧文章中搜索答案,尝试上网搜索以找到答案,尝试阅读手册以找到答案,尝试阅读常见问题文件(FAQ)以找到答案。
2.如果做了努力依然不能解决,或者客观条件不允许你自己解决了,那么首先要选择提问对象,不管是是现实中的大神,还是网络上的牛人,确保他是你所知道的最佳解决人选。
提问时的注意事项
谨慎选择提问的论坛
国内技术类问答网站http://segmentfault.com
国外技术类问答网站https://stackoverflow.com
使用有意义且简单明确的标题
一个好标题范例是目标 -- 差异式的描述,许多技术支持组织就是这样做的。在目标部分指出是哪一个或哪一组东西有问题,在差异部分则描述与期望的行为不一致的地方。
总而言之,让你的标题更好地反映问题,可使下一个搜索类似问题的人能够关注这个讨论串,而不用再次提问相同的问题。
问题的正文
1.用清晰的语言描述你遇到的问题
2.提供软件环境,包括操作系统、数据库等相关软件及其版本号
3.按发生时间先后列出问题症状,采用了什么措施解决问题,最终结果(可提供日志、程序、截图等描述)
4.尽可能提供问题相关的可分析文件,包括日志、截图和Core dump等
5.问题是否可以重现,采用什么方式重现
6.不要长篇大论,简明扼要,描述主要问题
当然,提问的时候一定要有礼貌,多用请和谢谢您的关注,或谢谢你的关照。让大家都知道你对他们花时间免费提供帮助心存感激。
问题解决后
问题解决后,向所有帮助过你的人发个说明,让他们知道问题是怎样解决的,并再一次向他们表示感谢。最理想的方式是向最初提问的话题回复此消息,并在标题中包含已修正,已解决或其它同等含义的明显标记。
当然,这也是我参考提问的智慧而总结的需要注意的地方。原文网址:http://www.catb.org/~esr/faqs/smart-questions.html
网友评论