个人实习总结--张小媛

 二维码 924767

给敲开这扇大门的机会,让我真实体验到了程序员的诞生过程。让我提前感受到了刚刚进入软件行业的压力和困惑,再也没有在学校自己随便写段小程序后的那种自豪感了,要面对每天必须面对的问题,再也不可能以“逃避”而了之了。也让我感觉到做为一个程序员所应该具备的基本素质。真切身的体会到了团队精神和协作能力是我们程序员应该具备的基本素质,因为太大可能因为我们一个小组成员配合不好,导致各模块之间无法连接,会给工作带来及大的麻烦,消耗了大量的劳动力还没有提高工作效率。



  一、实习的目的和意义



  进大学生活的最后一个年头,站在我们面前的就是那个向往已久的工作社会,所以我们的心可以说是既高兴又兴奋,因为我们终于可以在这个巨大的舞台上展现自我,但我们还需要时间去了解这个社会。为此我选择了实习,其目的在于通过实习使我们自己获得基本操作的感性知识,理论联系实际,扩大知识面;同时专业实习又是锻炼和培养学生业务能力及素质的重要渠道,培养我们当代大学生具有吃苦耐劳的精神,也是学生接触社会、了解产业状况、了解国情的一个重要途径,逐步实现由我们学生到社会的转变,培养我们初步担任技术工作的能力、初步了解企业管理的基本方法和技能;体验企业工作的内容和方法。这些实际知识,对我们学习后面的课程乃至以后的工作,都是十分必要的基础。



  二、实习内容



  我的工作岗位是软件开发工程师实习,就是程序代码的编写。



  当我们进入一个企业,进入一家公司时,首先先要对该公司的概况有一定的了解,并对该公司所开发的项目有一定的认识,我们需要去慢慢的熟悉流程,熟悉业务。刚开始两天就是自己在公司看看文档,并熟悉环境。指导我的是一位年纪大一、二岁的同事,先与我说了一下要点,然就让我自已看,遇到不懂的就问。只有我们接触这种企业公司,才会真正的知道一个企业的项目之大,刚开始令人看了眼花缭乱,看一会就会晕,有几百个表,有几千个类,一个页面好几千行代码。甚至更多。这刚开始我就熟它的大致结构。一开始什么都不懂,也不懂业务。令我感动的是每当我我有一点不明白的地方,他都会不烦其劳的与我讲清楚,直到我弄明白为止。在我坚持不懈的努终于适应了变化,他的脸上也有了笑容。



  两天之后,熟悉了基本框架,基本流程之后,我也成为工作之中的一员,开始试着去写代码,去改bug,去写一些新的小模块。在这一段时间里,主要任务有巩固之前所学的,对常见的错误要一看即知,并养成认真仔细的工作作风。在



  其后的工作中我都有保持谦虚的心态。在种状态下我进步很快,花了比别少了将近一半的时就达到目标了。



  在这个项目中我们前端用的是Ext框架,它具有友好的界面功能。让我们做起来更简单。在前端我们通过控件中的属性和在Spring里配置好的id值,可以去调用业务中的方法,业务中方法又可以去调用底层实现的方法,或者我们已包装好的方法。最后是底层的方法去调用数据库中的数据以呈现我页面上。



  在这个项目中我们用的环境是eclipse,数据库是Oracle。主要的框架技术在前台用的是 Ext框架,后台用的是Hibernate+Spring,用的MVC模式,包结构非常清楚,在每个包里边都包括四部分,实体类,接口,接口的实现类,还有流序列化。在Web部分也是如此,也都有对应的包,对应的jsp去调用对应的js。那么接下来我就对这几分部分作一个讲解吧。 首先是Ext框架,ExtJS是一种主要用于创建前端用户界面,是一个与后台技术无关的前端ajax框架。 ExtJS可以用来开发RIA也即富客户端的AJAX应用,是一个用javascript写的,因此,可以把ExtJS用在、Java、Php等各种开发语言开发的应用中。ExtJs最开始基于YUI技术,由开发人员JackSlocum开发,通过参考JavaSwing等机制来组织可视化组件,无论从UI界面上CSS样式的应用,到数据解析上的异常处理,都可算是一款不可多得的JavaScript客户端技术的精品。JQuery、 Prototype和YUI都属于非常核心的JS库。虽然YUI,还有最近的JQuery,都给自己构建了一系列的UI器件(Widget),不过却没有一个真正的整合好的和完整的程序开发平台。哪怕是这些低层的核心库已经非常不错了,但当投入到真正的开发环境中,依然需要开发者做大量的工作去完善很多缺失之处。而Ext就是要填补这些缺口。



  其次是Hibernate,Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate 可以应用在任何使用 JDBC   的场合,既可以在 Java 的客户端程序实用,也可以在 Servlet/JSP 的 Web 应用中使用,最具革命意义的是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化的重任。



  最后是Spring, Spring 是一个解决了许多在 J2EE 开发中常见的问题的强大框架。Spring 提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring 的架构基础是基于使用JavaBean 属性的



  Inversion of Control 容器。然而,这仅仅是完整图景中的一部分:Spring在使用 IoC 容器作为构建完关注所有架构层的完整解决方案方面是独一无二



  的。 Spring 提供了唯一的数据访问抽象,包括简单和有效率的 JDBC 框架,极大的改进了效率并且减少了可能的错误。Spring 的数据访问架构还集成了 Hibernate 和其他 O/R mapping 解决方案。Spring 还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如 JTA 或者 JDBC 事务提供一个一致的编程模型。Spring 提供了一个用标准 Java 语言编写的 AOP 框架,它给 POJOs 提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的 aspects。这个框架足够强大,使得应用程序能够抛开 EJB 的复杂性,同时享受着和传统 EJB 相关的关键服务。Spring 还提供了可以和IOC容器集成的强大而灵活的MVC Web框架。



  三、实习心得



  实习期间给我最大的感受:收获 + 喜悦。这实习将来给我们留下的不仅仅是回忆 , 因为他使我们的自身价值得到了提高。



  “天下英雄皆我辈,一入江湖立马催。” 从学校到社会的大环境的转变,身边接触的人也完全换了角色,老师变成老板,同学变成同事,相处之道完全不同。在这巨大的转变中,我们可能彷徨,迷茫,无法马上适应新的环境,但在同学、



  同事的帮助和自己摸索的情况下,逐渐适应了。但我发现,以我们的经验,不学到一定的深度和广度是难以在实际工作中应付自如的。因此反映出学习的还不够,缺点疏漏。需在加以刻苦钻研及学习,不断开拓视野,增强自己的实践操作技能。



  四、实习总结



  通过这次实习,有接下来的几点认识。



  1、对于一个项目来说,良好的文档是正规研发流程中非常重要的环节 ,作为代码程序员,我们很多工作时间都是在写技术文档,它会在未来的升级以及模块的复用时起着至关的作用。所以我们必须注重这个。



  2、良好的代码编写习惯也是非常重要的,它不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。我们要使我们的程序具有易读性,易扩展性,容错性。



  (1)易应有尽有性:所有的变量和函数以及类名都用简单易懂易记忆的命名方式,所有类和函数,变量都有关键的注释说明。这点很重要,也很基础。



  (2)易扩展性:整体系统架构逻辑简单清晰,模块与模块之间尽量做到互不影响,也就是尽可能的独立,这部分工作主要体现在前期设计工作中,需要掌握好的设计经验和方法才能够做的比较好。



  (3)容错性:对所有数据都进行有效性检查:对第三方接口的调用失败的容错性。对所有代码都做调用失败后的处理。以及在大的工程中加入trace文件输出,把关键的操作信息输出,以便对工程异常情况产生条件的定位,及时解决问题。



  3、一个好的调试、跟踪与测试方法是非常重要的。我们需要对每个模块的接口做测试,数据界的检查,在对整个模块做测试。主要测试稳定性,效率及功能是否正常。确认单个模块完全,再加入工程。我觉得在我们调试时用debug模式启动服务器是一个非常好的选择,我们可以很快定位到出错的地方。并用可以找到解决的办法。



  总之这一段实习的经历让我明白了:一个优秀的程序员必须不断的学习,随时总结,找到自己的不足,这样逐步提高,才能让自己很快的成长起来。