我学习一门新的语言,都有一个两个步骤的计划:
学好语法以后,开始写一些小程序。所谓小程序,我的定义就是100行以内就能解决的问题,其它答案里有人建议的TopCoder有很多这种题目,另外我推荐Problems | LeetCode OJ,还有我用Python写的答案(RealHacker/leetcode-solutions)。做这些题目不但能够熟悉语言的语法,而且可以操练一下数据结构和算法,毕竟这些都是编程的基本功,另外对于要找工作的同学,这上面的题目刷一遍对于技术面试很有帮助。
然后,就可以找一些中等规模的实际问题来解决。这一阶段的目标不只是语法,你还需要了解这个语言的标准库和一些常用的第三方库,清楚这种语言常用的编程范式(过程式、面向对象、函数式)。我推荐Github上面的这个repo:A list of practical projects that anyone can solve in any programming language. 这里面的项目都不大,但是涉及面比较广。
|