https://blog.csdn.net/myan/article/details/3144661 1. 首先 了解该语言的基本数据类型,基本语法和主要语言构造 2. 其次掌握数组和其他集合类的使用 ,有基础的话可以理解一下泛型, 3. 简单字符串处理。所谓简单,就是Regex和Parser以下的内容,什么查找替换,截断去字串之类的。不过这个阶段有一个难点,就是字符编码问题。 4. 基本面向对象或者函数式编程的特征 ,无非是什么继承、多态、Lambda函数之类的, 5. 异常、错误处理、断言、日志和调试支持,对单元测试的支持 。 6. 程序代码和可执行代码的组织机制,运行时模块加载、符号查找机制 ,这是初学时的一个难点,因为大部分书都不太注意介绍这个极为重要的内容; 7. 基本输入输出和文件处理,输入输出流类的组织 ,这通常是比较繁琐的一部分,可以提纲挈领学一下,搞清楚概念,用到的时候查就是了。到这个阶段可以写大部分控制台应用了; 8. 该语言如何进行callback方法调用,如何支持事件驱动编程模型。 在现代编程环境下,这个问题是涉及开发思想的一个核心问题,几乎每种语言在这里都会用足功夫,.NET的delegate,Java的anonymous inner class,Java 7的closure,C++OX的 tr1::function/bind,五花八门。如果能彻底理解这个问题,不但程序就不至于写得太走样,而且对该语言的设计思路也能有比较好的认识; 9. 如果有必要,可在这时研究regex和XML处理问题,如无必要可跳过; 10. 序列化和反序列化 ,掌握一下缺省的机制就可以了; 11. 如果必要,可了解一下线程、并发和异步调用机制,主要是为了读懂别人的代码,如果自己要写这类代码,必须专门花时间严肃认真系统地学习,严禁半桶水上阵; 12. 动态编程,反射和元数据编程,数据和程序之间的相互转化机制,运行时编译和执行的机制,有抱负的开发者在这块可以多下些功夫,能够使你对语言的认识高出一个层面; 13. 如果有必要,可研究一下该语言对于泛型的支持,不必花太多时间,只要能使用现成的泛型集合和泛型函数就可以了,可在以后闲暇时抽时间系统学习。需要注意的是,泛型技术跟多线程技术一样,用不好就成为万恶之源,必