我的java第一年
学java正好有一年了,碰上今天有空,写篇文章记念一下,也是在CSDN发的第一个帖子(虽然已经潜水好久)。
先回忆2006都接触些什么java。j2SE,Oracle,Eclipse, Pattern, Weblogic,XP,EJB,RMI,JMS,多少能会就点的只有这些了,至于JSP&Servlet虽然学过,但从没有做过相关项目。
J2SE。很多半路出家的人都忽视它的重要性,在Object都没搞清楚的时候就已经把Weblogic和Tomcat玩得很转了。这种做法貌似有些舍本逐末。Weblogic这样的工具归根到底也是由一行一行code和配置文件组成的。sun提供的基础API里蕴含许也出色的设计,such as Iterator模式,Observer 模式 etc. ;Object,String,Clonable
本人以为这几个类或接口在java里是很基础的,许多语法都是围着它们转。很遗憾,许多做许多年java的人也搞不清这些东西,感觉此三类(以及接口)里的方法各个经典,尤其是equals(),clone(),run(),intern(); 线程在java里应该属比较难的东西,而且维护,测试都也相对麻烦。
大概学了九个月,做了四五个项目,才对J2SE初窥门径。遗憾的是,至今对multiple threads的设计也没有信心。这个过程对我帮助最大的是两本书:《java编程思想》和《baidu》,其实《baidu》不是一本书,而是www.baidu.com搜索引擎,网络上有许多好的文章,从中不仅可以获得技术也对将来的路有所认识。
正是通过网上看到的一些文章,oo design pattern进入我的生活,这三个月是技术的一个飞越,眼界比先前开阔许多,毕竟关注点又向上层移动一大步,待到读完《java与模式》和JDon上板桥先生的模式22篇,回首先前的代码,总感觉那些代码太丢人鸟。对模式的一知半解,导致思想混沌,总想做出完美的design,无奈经常事与愿为,code之后又发现设计的不足。也许许多同行在接触模式之初也会遇到与我同样的问题。Kent这样的一代宗师,也是经过千锤百炼,何况常人呢。
至于j2ee的一些相关技术,只不过是j2se下游的东西,需要的是尝试和思才,这里就不谈了。有几本好书,推荐给和我一样徘徊在java门口的兄弟们:
《Thinking in java 3th》 这个就不用说了,公认的经典
《java与模式》 由于没看过GoF的《design pattern》,也不知道哪本好,但这本书确实也的不错
Kent的关于XP的一些书,目前的软件生产流程过于重视过程,以至于有太多该死的规定.process是死的,cmi model是活的,team也是活的,不同的team和project有不同的特点。接触一些前沿的东东,让人更清楚自己应该何去何从。
算法还得常研究,最好别让脑袋变笨了。不过那些问题的瓶颈跟编程没有关系。