`

暑期学习总结

阅读更多
     时间:2009年8月18号;下午2:45.
     时间过得飞快!简直就是弹指瞬间,大学生活就剩下最后一年!最后一个自由的,较为轻松的暑假又即将走到了尽头!
     这个暑假原本是准备在成都找份简直做的,但由于各种原因还是决定回家,带着电脑同时带着有关程序方面的书!决心在即将踏入职场的最后一个暑假好好的在用知识与技能充实一下自己!
     我为自己暑假期间设定的目标是:学习struts 2.1.6以及Spring框架并结合Hibernate持久化框架来编写一个功能完善的人才技术交流网站。关于这个项目的具体情况我将在其它的博客里面详细的介绍,这里只是对学习心得以及整个暑假的知识领悟做一下简单的总结!
     1:通过对struts以及Spring框架的实现机制的学习,我觉得对于Java反射机制的掌握在怎么重视也不为过!整个struts框架的主要实现机制都集中在其拦截器机制上面,而这个拦截器的实现机制完全是建立在Java的反射机制技术之上的!后面有看过Spring AOP的实现机制后,感觉面向切面编程是那么的神奇而又简单!前面所谓的struts中的拦截器机制完全是AOP技术的完整应用!神奇是因为利用它所解决的问题,同时简单又是因为它的核心技术仅仅是Java的反射机制以及Java类的代理!并不需要多么复杂的其它技术!暑假之前总是觉得这些框架的发明人的智慧是多么的高不可攀,简直就是自己永远达不到的高度!但是现在通过获得的更多知识,他们的技术虽然还是很高但终于有了一个确定的高度,再也不是遥不可及的!一个利用时间与努力自己可能会可以达到的高度!
     2:还有一个很重要的技术就是Java中的ThreadLocal类的运用。通过利用这样的一个技术我们可以很容易的解决多线程中的公共变量的线程安全问题!不仅是以空间换取时间而且同时还换取了复杂的脑力思考!
     3:自己通过项目的实际开发,遇到了很多问题,虽然所有的问题并没有全部解决但是他们带给的思考还是有很多!
        现在对于项目开发我有了自己的初步理解,在以后的工作当中我会不断纠正的!
        第一:在进行项目开发之前,一定要对这个项目实现的功能进行认真思考和明确的确定!
              项目的功能确定以后,在具体项目开发中,不要轻易的更变不管是完善也好!或者是其它的什么!因为在开发过程中你可以会有很多更好的解决方案,如果你不按照之前的确定功能的话,你会很犹豫,那将是很耗费时间与精力的!
              项目的功能确定后,一定要将功能尽量的划分成相对比较独立的单独的模块!然后一个一个模块的开发与调试,等各个模块的调试正常后,再将它们整合到一起!在实际开发过程中,我发现WEb项目的调试很麻烦!我并没有用Action单元测试,我总是觉得还不如直接利用日志记录对Action中的代码直接进行调试!因此我每次都是将Action的单元代码放到立个固定的类中进行调试,并用日志记录运行结果以确定是否符合自己的语气结果!当然可能会有人认为调试存在一些限制,其实那些Session啊Reuest啊都是一些MAP么,我直接自己创建一个MAP在测试代码中就可以啦!最复杂的调试就是完整的WEB项目调试,就是将Action与对应的JSP还有css,javascript一起调试!特别麻烦,再加上自己的机器配置不是太好,调试工作更惨啦!因此,最好不要将所有的Action放在一起进行调试!而且将一大堆的Action以及JSP页面还有配置文件都放到一个项目中,重新部署或者是编译什么的都很需要时间!因此最好将各个模块分到独立的子项目中,这样调试来很轻松!(不过可能由于自己的机器配置原因吧)
     4:对于服务器的优化。
     5:项目的调试工作应该可以说是最最痛苦的一件事情!有时不可避免的会因为一个很小的错误(比如对某些方法返回的结果没有注意等等)而莫名其妙整个上午!我现在终于认识到程序的调试工作是最最需要耐心的同时也需要正确的方法!我切身体会到两个方法:
         第一:遇到错误一定要仔细分析,一步一步的查找错误并一步一步的解决错误!对于出现的问题一定要严肃对待,切不可得过且过!
         第二:当你遇到莫名奇妙的错误时(特别是应用框架进行WEB项目开发),一定不要怀疑是框架的问题,首先要从自己的身上找原因!这是特别记住的!因为你要相信流行的框架都是经过实践的,他们都有成功的应用实例,人家用的正常怎么就你用会出现错误?比如:当你有一个输入表单,你要为其进行校验配置,配置好之后,你提交表单的时候会出现一个错误:no result input for this action!原因就是你没有为那个Action配置input 返回视图,而struts中的校验拦截器发现错误时会直接返回input表示的返回页面并显示结果!类似的这样的错误还会有很多!所以遇到不可思议的错误时不要埋怨框架,而是你自己对于框架还是不熟悉!
   6:最后就是学习开源框架时,一定一定要重视其本身附着的文档说明!我以前也是不知道看文档说明,总是爱看什么各种各样的书籍当然都是翻译成英文的!就是在快要放假的时候,在浏览IT博客时,无意中看到一个老前辈的经验;其中一条就是多看框架的本身英文文档!因此,在暑假里,我就坚持着!的确,那些英文文档在一些地方的确比书籍的介绍好多啦!毕竟那些英文文档都是最熟悉框架的人写的么,而那些经过翻译的书籍多多少少在翻译的过程中或有些片面!我在看到一些关键概念的英文表述时,感觉真是太精确!不仅如此还可以锻炼你的英文文档阅读能力!碰巧我也是很喜欢英文,读起来感觉是一种享受!我现在有这样一种认识:如果哪一个概念在美国产生(比例),那么我们用中文描述永远也到不到英文描述的那种贴切和精确!相反,也是一样!不知你是否认同?
1
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics