最近在学一门新一语言,当然,我指的是编程语言。已经记不清楚我学过几门语言,这个数字应该不会超过10。大多是简单的尝试,没做过商业应用,只有Java勉强算得上熟手,但这并影响我在简历中吹牛。不过一门语言的学习还是相对简单,毕竟只是学习嘛。无论学习什么语言,整个过程大致都是一样的。
数据类型,表达式。Number,string,char,boolean,date,bit,array,set,dictionary,再加上操作符之类。
控制结构。if,for,while,do while,switch,再加一些比较的操作符。
OO实现。OO是个概念,每种语言都有自己的实现,或多或少都有些差异。这部分要仔细了解这门语言是怎么去实现多态,封装和继承的,它是强类型还是弱类型。如何表达类和方法,怎么组织包的结构。
异常处理机制。仔细分析语言的异常处理机制,参考这项语言的相关例证,可以帮助你合理、有效利用此机制来完成你的工作。 内存管理。是否有garbage collection机制,处理原理是什么。是否需要你来管理内存的分配和回收,及如何分配和回收。说实在话,我就被c++的内存管理+指针打败过。
By value, by reference.这是个有争议的定义,我已经被所有人吵晕了无数回,不过后来总算搞清楚了。不过难保不被一些高人再打昏,因为大多数情况下都是因为大家对同一名称的定义不同,结果争个不休。这世界无聊的人还是极多哇。不同的语言有不同的选择,一定要弄清楚。
指针。这是个绕不开的话题,尤其是类c语言。我曾经一度很沮丧,认为指针的弊大于利。事实上,指针带来的好处是巨大的,但它是一头猛兽,你必须学习如何驾驭它,否则只能自食其果。唉,真像受害者的心声哪!
最佳实践。这是必不可少的,每种语言都有自己的优缺点,如何利用专家的知识经验来更好的使用某种语言的优点,有效控制缺点带来的伤害是有很大学问的。巨人的肩膀不好站,一旦站上去了,感觉就不一般了。
常用框架。即便是很少被使用的语言,也会有一个框架或类库。框架通常都会有效利用一些最佳实践,并集合了大量专家的智慧。积极学习并分析框架,会使你迅速理解这门语言的精髓,起到事关功倍的效果。当然,框架本身也一定有优缺点,也有最佳实践,剩下的就看你的实力了。 框架的最佳实践。同语言一样,没有大而全的完美框架,如何整合各个层面的框架,充分发挥各个框架的优势,有效规避各个框架的缺陷,达到快速高效的开发?这需要你做很多工作。
接下来就是长期的实践了,编程非难事,只怕有心人。Plan-Do-Check-Action同样适用与学习一门语言。
你看,一门语言的学习也不过如此而已。正所谓:难者不会,会者不难!
我是一只与世无争的猪