知识屋:更实用的电脑技术知识网站
所在位置:首页 > 科技

编程入门——如何解决问题

发表时间:2022-03-24来源:网络

请参见 Udacity 编程入门纳米学位 课程23:如何解决问题。

以上。


开个玩笑!课程23教会我们的是解决大多数程序问题的方法,比如你想要用代码实现一个特定功能或算法时,可以遵循课程教导的步骤来做,会很有帮助。

但是我们作为初学者,而且还是非英语母语的编程菜鸟,可能有时我们想到了解决办法,但是却不知道如何实现;或者知道某个函数却不知道这个函数该如何用;甚至很多时候我们都不知道我们遇到的问题该如何问,这才是最致命的。

今天我想分享一下自己学习的过程中如何解决问题。简而言之:Google 搜索 + Google 翻译。

当有同学问我怎么解决问题的时候,我直接告诉她要用好搜索引擎。她问我说,怎么样算用好?确实,Dave 老师在课程中讲的很对,不结合具体问题来讲如何解决问题是没有意义的。那么就举一个最近的小例子。

1. 简单的搜索—— 标签

可能很多同学做P1的时候都用过。最近看到群里有同学问,为什么内用会报错,我就去搜索了一下。直接搜索关键词【li 标签】,可以直接看到你想要的信息。



这个例子中,百度和某哥都能搜到你要的结果。然而我们发现,两个比较系统的网站上(W3school和菜鸟教程),发现了一个有点不同的地方:


那么谁说的对呢?P3 的 Kunal 老师告诉我们,不要相信别人,自己去查询技术文档。

最保险的是去看技术文档(如果不知道去哪个网站查看技术文档,可以搜索“li html 文档”,将你需要的语言的技术文档页面收藏起来,你会频繁用到:Web 技术文档——这里包括了HTML和CSS;Python 2.7.13 documentation——这里是2.7版本的Python技术文档),在标签技术文档的第一段就可以看到:



我们知道了该同学用错了父标签。

我最开始做P1的时候还不知道这个标签,是用这样的方式写笔记知识点的:“● 某个知识点加
来换行”。我知道这样的方式比较笨,如果当时聪明一点,可以去搜索“html 列表标签”。但是作为一个菜鸟,有时你真的不知道怎样去搜索。然而当你知道有这样的方法——标签,却不知道为什么用错了的时候,是不是应该去搜索一下它的用法呢?

养成遇到问题先搜索一下的习惯,之后的课程中,很多老师也会提到这一点(在【记不住也没关系】这一小节中提到,记不住这么多标签也没关系,只需要在用到的时候搜索就可以了;P3的课程视频中,老师在教学的过程中,就是使用搜索的办法寻找解决方案的;同样的方法,也出现在数据分析入门这个可选项目的教学视频中)。

2.错误信息搜索

遇到报错,直接搜索错误信息,一般就可以找到答案。

3.复杂的搜索

一下子搜不到怎么办?小窍门:变换近义词、添加更多关键词作为限定条件、搜索英文结果等。百度搜不到换谷歌,谷歌搜不到换专有资源网站。(比如我们做游戏找参考图,如果百度搜不到合适的,会去花瓣网这样的专业图片网站搜索。对编程学习来说,可以去 stackoverflow 搜索,一般初学者遇到的问题在这里都可以找到答案。)

4.有用的网站分享:

如何用好搜索引擎? - 知乎:https://www.zhihu.com//20161362


国外的编程问题网站stackoverflow:http://stackoverflow.com/questions


前端工程师纳米学位样式指南:udacity/frontend-nanodegree-styleguide-zh

W3School:https://www.w3schools.com/

菜鸟教程 http://www.runoob.com/python/python-tutorial.html

Web 技术文档: https://developer.mozilla.org/zh-CN/docs/Web

Python2 技术文档:https://docs.python.org/2/index.html

Python3 技术文档:https://docs.python.org/3/index.html


Google 代码风格指南(英文):https://google.github.io/styleguide/pyguide.html

Google 代码风格指南(中文):http://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/contents/

美化HTML代码格式:http://htmlformatter.com/

检查代码错误:

Javascript Formatter and Beautifier

Css Formatter and Beautifier

Ready to check - Nu Html Checker



5.英文如何提升

看英文字幕,看英文文档,试着自己翻译。看懂了英文后,再自己组织语言文字表达出来,这样的理解才是最深刻的。你可能说,我一直英语就不好怎么办?借助 Google 翻译啊!现在Google 翻译的机器翻译已经达到很高的水平了。我做字幕组组长都是靠 Google 翻译(捂脸)。

具体提升渠道如下:


渠道1:Udacity 字幕组

渠道2:为开源社区做贡献

渠道3:尝试翻译英文技术文章(以下是我目前想翻译的一篇文章,关于棒球数据分析的)
Baseball Analytics: An Introduction to Sabermetrics using Python


要培养习惯是不容易的,有些问题自己搜索肯定没有直接问老师快,看英文肯定没有看中文快,这样可能会在一开始放慢你的学习速度,但是也比囫囵把似是而非的理解吞下肚要好太多了。入门时养成好的习惯,才是最有价值的!


2020.01.10 重新回过头看了一下,发现有个 Flag 没有完成,那就是翻译那篇关于棒球数据分析的文章。。

还好这几年有完成其他技术文章的翻译:Pandas SettingwithCopy 警告解决方案,欢迎阅读~

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜