知识是死的,如何学会运用知识解决问题才是能力。所以希望读者学东西不要学死了,尽信书不如无书, 时代在变化,知识在更新,不能固定在旧知识点上。
要学会学习新知识,动脑分析问题,动手解决问题, 这是忠告,希望读者牢记。
新手常犯的毛病就是一遇到问题就说“我不会”,懒得想如何动脑动手解决问题,到处瞎问,这么混是没法锻炼能力的。 不可能所有东西都是现成的,等着你来抄。遇到事情要先想想有没有可能的方法去尝试,而不是傻等别人来解决。 一定要锻炼独立运用知识解决问题的能力,否则永远只是个混混。
遇到编程问题,常见的解决方法这里罗列一下,以供借鉴:
查阅帮助文档,测试可能的类或函数:
比如要改变一个控件的前景/背景颜色,如果不知道用什么函数,那可以去打开帮助文档(Qt Assistant工具可以查阅 Qt 文档),找到该控件对应的类文档,搜索关键词,比如颜色对应的单词是 color,前景是 foreground,背景是 background,如果这些词都查不到,那么是不是有别的单词呢,比如皮肤风格 skin、style 之类的,试一试总会有收获的,起码能多学几个函数。这种代码尝试是零成本的,编错了电脑也不会爆炸,没什么好害怕的, 学习就是不断地尝试,然后找到一条正确的道路。如果大多数情况下都能进行尝试并找到正确的路,那就形成能力了。
常备几本教材、参考书,积攒示例代码:
Qt 的书虽然不多,但还有几本的,买几本备用,通过回顾知识点、示例代码是可以温故而知新的, 不要看一遍就扔,书上知识一般都比较多,除非是过目不忘,否则都应该常翻阅温习的好。 书上和网上的例子代码要形成分类保存的习惯,示例代码积攒多了就是财富, 以后遇到问题都可能用得到。
利用搜索引擎查找可能的在线文档、博客、维基、帖子等:
通常初学者遇到的问题,别人学习时也会有类似的问题,他们很可能早几年就问过了,过了几年通常都会解决了, 可能有相关的帖子、博客、文档之类的,这时候一定不要懒,去网上多搜搜,关键词不要限于中文, 往往英文单词检索可能更有效,因为类名、函数名都是英文的。除了百度,还有必应、谷歌等, 学会用搜索引擎查找解决方案也是可行的。
去专业的论坛、社区咨询前辈:
Qt 在国内有 QTCN 开发网论坛: http://www.qtcn.org/bbs/ ,还可以去 Qt 官网社区论坛: http://qt-project.org/forums ,再不行百度贴吧还有 Qt 吧。 这些社区论坛也是学习的好去处,但提问也是一门智慧,必须把问题讲清楚:
①讲清楚开发环境,操作系统是什么,Qt库版本是什么,用什么工具做开发的等等。
②把项目代码打包完整,放到附件或网盘共享里,让别人可以得到完整代码帮你调试修改, 不要随便贴两句代码就说出错,瞎嚷嚷半天,那解决不了任何问题。
③讲清楚你想要实现什么东西,有些初学者不懂类或函数,会盯着代码死胡同折腾好几天, 实际上很可能有别的简单方法实现。所以初学者提问时不要执着于错误代码,而是要讲清楚目标。 重要的是实现目标,而不是纠结于错误的代码。世界上错误的路太多,你应该先寻找一条正确的路。
④尊重论坛前辈,可能他暂时也不知道怎么弄,别人帮你回个贴可能有不好使的的代码, 这时候没必要怪别人不懂,因为你自己也不懂才来问的,不要五十步笑百步。
转自:https://lug.ustc.edu.cn/sites/qtguide/