在工作中我们经常遇到这样那样的问题,可能会自己思考根据自己的经常解决,可能会询问别人或者在群中问问,可能使用搜索工具或者Chat GPT之类的工具查找答案。那么怎么提问才能快速的找到我们想要的答案呢?
0. 背景
最近,微信公众号【DevWiki】讨论群里,有一位在学习 Dotnet 的群友小明,遇到了一个问题:
我是在看视频的时候,视频中直接新建一个类库,然后类库下面出来 properties 和引用以及一个 class.cs,接着直接右键添加窗体即可。但我这里新建类库之后,下面就一个依赖和class.cs,没有properties和引用。
在什么情况下能够:右键 - 添加 - 窗体呢?我现在想在一个类库下添加一个Windows窗体,结果没有这个选项,且在项目属性中修改了版本 4.6 4.7 4.8均没有该选项。.
视频中创建的类库有三项:
自己创建的类库只有两项:
视频中有添加Windows窗体的选项:
自己添加时无Windows窗体的选项:
群里的朋友也热心的解答小明的疑惑,原来是创建类库时没有弄明白 .NET 平台的不同类型:
小明需要创建 Windows窗体,那么在创建类库项目时需要选择创建“Windows窗体类库”。
群友还提出这种问题可以先百度一下或者问问 ChatGPT,节省时间。根据小明反馈,他询问了ChatGPT 却没有得出答案,并在群众给出了他询问的截图:
如图所示,他的问题是“用VS2022,右键类库-添加-为什么看不到Windows窗体选项呢”
但 ChatGPT 似乎没有能给一个准确的答案。
你知道为什么没有给出一个相对准确的答案么?
1. 提问之前
我们遇到问题的时候,可以首先尝试自己去分析解决。比如上面背景中的小明同学,尝试使用了 ChatGPT来寻找答案。如果你还不知道怎么使用ChatGPT,可以关注我的公众号【DevWiki】获取使用方法,或参考下面这个文章:
除了ChatGPT之外,我们还可以尝试使用搜索引擎,比如
- Google :https://www.google.com/ncr
- 百度 : https://www.baidu.com
- 必应 : https://cn.bing.com/
如何高效的使用搜索引擎,可以参考这篇文章:
除了搜索引擎,还可以去一些常去的论坛,问答网站查询是否有相关的问题,比如对于程序开发比较常用的论坛社区有:
- stackoverflow : https://stackoverflow.com/questions
- 掘金 : https://juejin.cn/
- segmentfault : https://segmentfault.com/
如果上述的方式仍旧不能解决自己的问题,那就需要想想:
- 自己有没有哪里不懂?
- 明白自己想要问什么?
- 梳理准备自己的问题
- 言简意赅的描述问题
然后再去群里提问。
2. 怎么样提问题?
在上述的背景中,小明的第一段描述:
我是在看视频的时候,视频中直接新建一个类库,然后类库下面出来 properties 和引用以及一个 class.cs,接着直接右键添加窗体即可。但我这里新建类库之后,下面就一个依赖和class.cs,没有properties和引用。
从上述中可以看出,该群友有以下几个问题没有弄明白:
- 视频中新建了一个什么样的类库?
- 自己创建了一个什么类型的类库?
沟通后得知,视频中创建的是“Windows窗体类库”,小明同学创建的是“面向于.NET或.NET Standard 的类库 ”。
第二段描述:
在什么情况下能够:右键 - 添加 - 窗体呢?我现在想在一个类库下添加一个Windows窗体,结果没有这个选项,且在项目属性中修改了版本 4.6 4.7 4.8均没有该选项。
可以看出,小明同学想要创建一个基于 .NET Framework的 Windows窗体库项目。
那我们来整理以下,如何描述这个问题:
我跟着视频教程学习,现在想新建一个类库然后添加一个Windows窗体,使用VS2022 创建了一个“面向 .NET 或者 .NET Standard的类库”,对着项目右键,添加里面却没有“窗体(Windows窗体)”这一项,这是为什么?
如果这样描述,是不是感觉更清晰了?那么我们在如何提问,请让别人快速的知道我们的问题呢?
1. 用词准确,问题明确
首先,使用准确明确的词语。
确保使用恰当的术语和词汇,以便别人能够准确理解你的问题。避免使用模糊不清或具有多义性的词语,以免产生偏差或误解。
其次,明确自己的问题。
在提问之前,要确保自己清楚地知道自己想要问什么。明确问题的目标和要求,以便得到满意的答案。
2. 描述清晰,信息充足
首先,准备准确有效的信息。
在提问之前,准备好相关的信息,确保信息准确、具体,避免冗余或无效的信息。提供足够的上下文信息,以便别人能够理解问题的背景和现状。
其次,清晰描述问题的出现步骤。
详细描述问题的出现步骤,包括具体的操作或触发条件,以便其他人能够重现问题。提供相关代码片段、错误信息或日志,有助于更好地理解问题。
再次,说明尝试过的方法或措施。
描述在处理问题过程中尝试过的方法或措施,以便别人了解你已经做了哪些努力。这有助于其他人避免提出重复的建议或指导。
最后,明确自己的诉求。
在提问时,明确表达自己想要问的具体内容或解决方案。这有助于其他人更好地理解你的需求,并给出相关的回答或建议。
仍旧使用背景中的案例来说:
- 问题出现背景 :使用VS2022 新建了一个 “面向 .NET 或者 .NET Standard的类库”
- 问题具体内容 :对着项目右键,添加里面却没有“窗体(Windows窗体)”这一项
- 自己尝试解决 :在项目属性中修改了版本 4.6 4.7 4.8均没有该选项。
- 明确自己诉求 :如何在右键添加时有 “窗体(Windows窗体)”这一项
3. 注意事项
交流群的作用是:扯淡、交流和分享。所以在群中提问前要做好心里准备。
首先,如果提问后冷场了,那么有肯能:
- 也许这个问题网上搜索一下就有答案
- 也许别人在忙
- 也许这个问题太简单了
- 也许没有做过这一块
**其次,要学会谦虚。**别人没有义务为你解决问题。
**最后,不要做伸手党。**如果你的问题网上搜索即可找到答案或者别人给了思路你仍就想让别人给你提供代码示例,那么就不要怪别人冷眼相待。
4. 总结
本文主要基于群里小明同学的提问和下面一张经典的思维导图(未找到作者,如作者看到本文请联系我添加著作说明)
如果您觉得文本对您有帮助,请点击【再看】让更多的人看到。
您可以关注我的公众号【DevWiki】获取更多有用内容,关注后可加群一起讨论学习。
您可以访问我的博客【https://blog.devwiki.net】在线阅读我的内容。
评论区