比自己聪明的能力比自己强的人工作。学习他们的代码,他们的做事方法,看一看那些人是怎么处理错误的。
总是倾听别人怎么说,无论那个的资历和职位是什么样的。
实践,实践,实践,总是不满意于一开始出来的事。
多问问自己,现在在写什么代码?为什么要这样写成这样?还有没有更好的方法?
学习多样的技术,多多比较他们,并一定要了解各种技术的优缺点。
总是问别人问好的问题。
多回头看看走过的路,做过的事,写过的程序,感觉一下他们有多烂。
多读读那些大师写的书。
不要总坐在电脑前编程序,多做做运动,多到户外走走,和非技术人多接触,向他们学习。
除了这些,下面是我个人想给你的建议——可能只能算精神,不能算方法。
热情——对编程充满热情。这种热情会导致强烈地专研精神,和努力的精神。专研精神相当重要,它是畏难情绪的天敌。
知道——学习技术要“知其道,明其理”,而不仅仅只是了解知识。举例,为什么C++有“初始化例表”而Java却没有?为什么Java的没有多重继承?为会有了TCP还要UDP?对于一个事物,什么是好的,什么是不好的。不但要了解其表面,还要了解其思想。只有了解原始的初衷和目的,你才能真正“知道”。
犯错——不犯错误永远没有经验,从自己的错误和别人的错误中学习,只有自己犯了错,才会真正明白。犯错不可怕,可怕的是不会总结只有真正的摸爬滚打过的人才是强人。技能和经验总是用错误去换来的。
回顾——要多去回顾过去,看看 历史上发生过的事。这样你才能明白事物的发展规律,从面才能了解未来的路。举例:单机 -> Client/Server -> 中间应用层 -> 多层结构 -> 分布式结构。 C -> C++ ->Java,等等,等等。未来其实就在回顾过去之中。
质疑——质疑精神很重要。质疑通常会导致不同意见甚至反对意见。也许你会质疑错,也许你会被质疑,但是你的认知也会因为不同的观点而变得完整。有所同有所不同(“同”为同意及相同),观点因为不同才能迸发出火花,事物也此而发展,世界因为不同而精彩。