“我基础学完了,接下来该学点什么”,答:该思考
很多新手在刚学完 Python 基础之后都很喜欢问:“我接下来应该做点什么?”或者问:“哪个大神能告诉我下一步要干嘛”。
这是一个很普遍的问题,我觉得这个问题的根源不在于网络上的资料不完善,根源在于这部分人忘了为什么要学习编程、开发。
我们学习编程(Python)的目的不外乎这两个:
- 学好技术,找个(好)工作。
- 打算用技术来实现自己的想法。
一旦有了上面的这种认识,就不应该再去问别人:“我该再去学点什么”,这样让人无语的问题。就好像你不知道要去哪,却跑去问别人自己应该坐什么车一样。
基于目的一,如果你明确了就是要找一个工作,那下一步(或者应该说时不时的应该做的)就是去看看那些招聘 Python 的公司的职位要求,对比下自己已有的知识库,看看还缺点什么。
基于目的二,这种人应该是不会去问别人自己该怎么做的,因为他有自己明确的目的——在一开始学习 Python 之前,比方说他就想做一个爬虫,可以自动去爬自己心爱姑娘的微博内容。
无论新手在学完 Python 基础之后是否忘了自己当初想干嘛来着,都应该去思考一下应该怎么样才能达到自己的目的。
最后说一个案例,我们这的一个实习生,前段时间看有人做了一个终端(命令行)版的 doubanfm,觉得挺酷,想做一个类似的的东西,最后决定做了一个命令行的查单词的工具: ici ,可以看看他的这篇博文: ici,基于 python 的终端查词小工具 。
这个工具技术上没有任何难度,写起来也没几行代码,但是值得新手学习的是这个从想法到实现再到上线的 pypi.python.org 上的这种行动力。一个没上线的程序根本就不能叫做是程序,只能说是你写了一段代码。
说到这里,还没完。前几天我觉得总是从打开 vim 的 tab 切换到另一个 tab 使用 ici 查单词不太方便,于是跟他说了下,或者应该考虑添加一个类似 vim 中的 ack 插件,直接:AckFromsearch (IciFrom)就能查。
然后过了一会,他过来跟我说做好了,通过 vundle 直接安装就能用。
说这个案例的目的有两个,第一是写程序是自己用,然后让别人用的,而不仅仅是写了这么段代码,然后放到自己硬盘深处。第二:不一定一开始就得做一个什么解决千万用户,解决广大开发者需求的程序,从手边能改善的地方开始,需求无处不在。
你领会了吗?