学习方法

        之前,在开始学习编程的时候,就稍微地发现,从后往前的探索比从前往后的方式比较容易理解整个系统。

我把任何一门编程语言,以及其能做出的东西,统称为一套系统。拿比较熟悉的java来讲。

java从虚拟机,到java code,main函数,多线程,网络编程,GUI,在这阶段横向展开一系列java的API。然后

是各种各样用java实现的功能,比如XX管理系统、CMS、游戏引擎、图形库等等。

         刚开始学的时候,当然是按照上面的顺序学习的,但是后来在学习其他语言,比如javascript,CSS,HTML5,C,C++其他软件,比如Mysql,mongo,redis,cocos2dx,cocos2d-html,android等等,其他设计模式,然后我发现语言跟语言之间是有一定的共性的,比如语法(定义,逻辑),数据(内存,常量,临时变量,序列化),特性(多态,继承,事件)等等然后,在这其中有些是类似的,然后某些特性和语法结构,以及是否即时编辑等特性决定了这种语言对于什么业务需求来说是比较擅长的,这个擅长指的可能是编码效率,编译效率,运行效率,维护效率四个方面的综合考量。对于现在各个语言里面各种业务需求方面都有很多很多很棒的开源框架,开源引擎,我想在选择使用这个引擎的时候,也是基于以上四个效率来选择。

        然后,在编码语言到开源软件或者开源库,开源引擎这样一个阶段的期间,如果我要对一个语言开始学习的话,我一般会找这个语言里面已经实现的开源软件,使用者和开发者相对较多的一个开软软件。去看源码。然后在这个过程中去发现和探索该语言的语法,数据处理,网络处理,图形处理,特性,等等。在比较成熟的开源软件里面,其实,既然已经成型了,可想而知,其编码者已经对该语言十分熟悉,并且形成一定的技巧,针对于使用该语言的编码技巧,更快速,更简便,更效率。

        如果有更好的方法,望不吝赐教。


你可能感兴趣的:(学习方法)