转自:http://hi.baidu.com/cfyme/blog/item/09d7b0dbd29e2261d0164ee3.html
(1) 看 Thinking in C 和 Thinking in Java,不要看中文的译本;同时要看 The C Programming Language 或 Java XML Programming Professional,不要因为他们很难或者自己是初学者就不看;
(2) 不要放过任何一个看上去很简单的小编程问题,他们往往不那么简单,要么可以引申出很多知识点,要么可以给将来的程序带来重要的启示;
(3) 学class或者interface这样的概念并不难,难得是长期坚持实践和不遗余力的博览群书;
(4) 浮躁的人会说
(a)XX语言不行了,应该学YY!——不行的恐怕不是语言,而是你
(b)我到底应该学什么?——这是你的问题,不是我的。
(c)XX有钱途吗?——除了抢银行以外这个问题没有明确答案。
(d)XX和YY那个好?——你学哪个那个就好。
浮躁分两种:只观望不学,或者只学而不坚持。
(5) 把时髦的技术挂在嘴边,还不如把过时的技术记在心里;
(6) 学习编程最好的方法之一是阅读源代码,不要以为句法的堆砌就是编程,这就好比没有水泥的砖块,经不住考验的;
(7) 任何时刻都不要认为自己手中的书已经足够了,但任何时刻也不要认为自己一定要买下手中的这本书——多看书,少买书,如果你还是学生,图书馆无疑是天堂;
(8) 看得懂的书,请仔细看;看不懂的书,请硬着头皮看:但别指望着看第一遍书就可以记住或掌握些什么,请看第二遍、第三遍;对于 Java Documentation 或者 The Art of Programming这样的书是要保证随时不离手的;
(9) 和别人一起讨论有意义的C或者Java知识点,而不是争吵XX不行或者YY与ZZ哪个好,对于程序员而言最宝贵的莫非于时间;这样的讨论不仅仅可以在办公室里,因为程序员的最佳学校是网络社区和邮件;
(10) 学习编程的秘诀是编程、编程、再编程,因此请把书上的程序例子亲手输到电脑上实践,把书中看到的有意义的例子扩充,经常回顾以前写过的程序,并尝试重写,把自己学到的新知识运用进去;
(11) 既然决定了要学习C和Java这两个具有代表性的语言(分别是面对过程语言和面对对象语言的代表),就请坚持下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的;
(12) 当写程序到了一半却发现自己用的方法很拙劣或者很笨拙时,请不要马上停手从新开始,请尽快把余下的部分粗略地完成以保证这个设计的完整性,然后分析自己的错误并重新编写——别心急,设计程序确实不容易,水平是在不断的编程实践中发展和完善的;
(13) 记录下和别人交流时发现的自己忽视或者不理解的知识点,而每学到一个难点时,尝试着对别人讲解这个知识点并让他理解——学习是互相的;
(14) 请保存好你写过的所有程序,那是你最可宝贵的财富之一;
(15) 请热爱C和Java!