当前位置

首页 > 报告范文 > 实习报告 > 软件开发实习报告3000字

软件开发实习报告3000字

推荐人: 来源: 时间: 2016-12-25 阅读: 1.48W 次

实习,顾名思义,在实习中学习。或者说当学习告一段落的时候,我们需要了解自己的所学需要或应当如何应用在实习中。以下是软件开发实习报告3000字,欢迎阅读!

软件开发实习报告3000字
  软件开发实习报告3000字「1」

  一、实习目的

进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用Java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。

  二、实习单位及岗位介绍

1、实习单位介绍

2、实习岗位介绍

我的岗位是Java软件工程师。实习期间参与人力资源管理系统的开发,根据开发规范和流程独立完成模块设计、编码、测试。编写相关应用系统的开发文档、数据库设计文档等。较为详细和系统的掌握了软件开发的知识体系。把所学知识与解决实际问题相联系,培养了自己发现问题、分析问题和解决问题的能力,从而提高了自己从事实际工作的能力。

  三、实习内容及过程

1、Java基础知识

Java的基础知识对于一个Java软件工程师来说就好比是人的灵魂,现在的公司在招聘的时候很多都不在乎你会不会流行的技术,如(Struts、Hibernate、Spring、ibatis等)。他看重的是你的基础扎不扎实,对于网易、腾讯等大公司来说更是如此,我们在开发过程中运用了大量的Java基础知识,如类、对象、方法、成员变量、静态变量、封装、继承、多态、异常、接口、抽象类、IO流等等,所以一个系统对于Java编程基础的依赖便不言而喻。

2、MySQL、Oracle数据库

MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型。Oracle则是以稳定性着称,在访问量和数据大量交换的服务器中,Oracle占了大臂的江山,在开发中主要用到了数据库的查询语句、数据库的关系、事物等。

3、Servlet和JSP

一个Servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然Servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。Java Servlet技术为这些应用程序定义了一个特定于HTTP的 Servlet类。javax、servlet和javax、servlet、http包为编写Servlet提供了接口和类。所有的Servlet都必须实现Servlet接口,该接口定义了生命周期方法。

JSP是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*、htm,*、html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页Java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所 需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java, 也可以访问JSP网页 。

Java Servlet是JSP技术的基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。现在许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器,也可以通过附件的应用服务器和模块来支持Servlet,这得益于Java的跨平台特性。另外,由于Servlet内部以线程方式提供提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Servlet的效率非常高 。

4、三大框架

Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。

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

Spring 也表示是一个开源框架,是为了解决企业应用程序开发复杂性由Rod Johnson创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

5、管理系统的开发

  四、实习总结及体会

通过这次实习机会,我主要学习了以上这些java编程的技术,同时也明白了身处公司中如何更好地与同事配合,毕竟在软件开发中,你不可能一个人干完一个系统,大家都是通过svn等团队管理工具互相配合完成编程任务。在实习之前,我对软件开发的过程只有一个模糊地印象,以为只要把代码编写完之后就算

基本上一个项目开发完毕了。然而通过这次实习,彻底颠覆了我的认知,我当时的认知无疑是非常幼稚和可笑的,完全的软件开发过程不只只是编写代码,在编写代码之前还有好多的事情要做,比如文档的编写、对项目进行需求分析、数据库设计等等。代码编写完成之后还要进行测试,以及人员的培训,这些都是必须做,也是必不可少的项目,甚至比代码的编写还重要。

我在开发期间遇到很多问题,但是我会试着到网络去找答案,如果实在找不到我会试着问问我的上级,或者跟一些朋友讨论一下,如果发现了这个问题的答案我会及时把它记录下来,方便以后遇到问题可以随时翻阅,我相信好记性不如烂笔头这句话,我也相信如果一个程序员写的代码没有错误那只能证明他没写过代码,虽然我比较懒,但我现在有空的时候都会对着电脑敲代码,我相信手感是敲出来的,你看10遍都不如你敲一遍来得印象深刻。

通过这次实习,我认识到了一个软件开发的完整的过程,为我今后进行实际的工作奠定了坚实的基础。首先,进入公司,你就是一名职业人,不再是一名学生,你要具备一名职业人应具备的素养,不迟到不早退是必然的,而且还要时刻严格要求自己,公司的规定要严格遵守。然后,在技术上也有了很大的提高,学习了很多公司自己的框架和工具,这都是一些前辈的宝贵经验。而且所作的软件应用性更强。所以,在今后的学习中我会严于律己,认真学习有关软件编程的课,为以后的工作打好坚实的基础。

  软件开发实习报告3000字「2」

  一、实习目的

根据所学课程的理论知识,结合企业的运营实际,掌握软件开发的一般过程,软件的生命周期和作为一个开发人员应该具备的基本能力,并撰写实习报告。使学生进一步巩固所学理论知识,同时提高观察问题、分析问题、解决问题的能力。

  二、企业实习地点

深圳市百盛佳信息咨询有限公司

  三、实习时间

20XX年12月5日——20XX年4月5日

  四、实习内容

1、java软件开发

  五、实习总结

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。目前系统的架构一般有c/s架构和b/s架构,但是c/s架构的应用系统,每升级一个版本,客户端都需要自己下载更新,而b/s架构不需要,因为它是基于浏览器的。因此b/s架构的应用系统,在Internet上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。

计算机将具备更多的智能成分,它将具有多种感知能力、一定的思考与判断能力及一定的自然语言能力。除了提供自然的输入手段(如语音输入、手写输入)外,让人能产生身临其境感觉的各种交互设备已经出现,虚拟现实技术是这一领域发展的集中体现。今天人们谈到计算机必然地和网络联系起来,一方面孤立的未加入网络的计算机越来越难以见到,另一方面计算机的概念也被网络所扩展。二十世纪九十年代兴起的Internet在过去如火如荼地发展,其影响之广、普及之快是前所未有的。从没有一种技术能像Internet一样,剧烈地改变着我们的学习、生活和习惯方式。全世界几乎所有国家都有计算机网络直接或间接地与Internet相连,使之成为一个全球范围的计算机互联网络。人们可以通过Internet与世界各地的其它用户自由地进行通信,可从Internet中获得各种信息。人们已充分领略到网络的魅力,Internet大大缩小了时空界限,通过网络人们可以共享计算机硬件资源、软件资源和信息资源。“网络就是计算机”的概念被事实一再证明,被世人逐步接受。

(一)实习过程遇到的困难

1、一进入企业,就马上被分配开发任务,我的任务是质量信息管理系统的一个功能点,PDI退改车,有新增,删除,查询,审核,统计的操作。该系统使用的是struts2 spring ibates模式,一开始什么都不知道,oracle数据库没用过,jquery框架没有用过,ibates框架没用过。所以给我的开发带来了很大的困难。

2、在第二个项目中,我的开发任务是,一线通管理系统中的设备查询,设备修改,还有一些报表的功能,发运环节主要异常事件,销售部工单月统计报表,储运部工单月统计报表等等,这些报表功能都需要有折线图和饼状图,还要有导出excel的功能,而我对于如何生成折线图或饼状图,如何导出excel,从未接触过,这些都是这次开发中的难点。

3、在益凌进销存系统中,也就是第三个项目,因为是刚刚开始,所以主要的任务是做设计,就是把那些业务流程图转化为静态网页。这事看起来好像不难,不就是做静态网页嘛!当初我是这样想的!可是到真正做的时候,就发现了其实并不是想象中的那么简单,例如,如何抽象数据字段,也就是说,别人给你一张真实的业务表,你该如何把那些有用的字段显示在你的界面上,业务流程中的每个点之间又有没有关系,这些都需要你去想的问题。初次接触,所以做起来也很棘手。

(二)如何解决问题:

作为一个开发人员,遇到这些问题是在所难免的,因为很多技术都在不停的更新,你要不断的去学习,要有学习新知识的能力,而且如今网络资源是如此的丰富,只要在internet上搜索一下,很多问题都会迎刃而解。Oracle数据库简单的应用,jquery框架和ibaties框架的应用也是通过网络资源一边学习一边应用来实现我的目的的,当然也少不了跟同事的沟通。对于那个报表中用到的折线图和饼状图,我们采用了一个叫Jfreechat的框架,关于如何应用,也是从网上获取相关例子,然后经过我们的加工,就很顺利的解决了问题。通过这次,感觉收获还是挺大的。对于进销存管理系统的设计问题,我压根就什么都不懂,看了一段时间的业务流程图,还是不知道要做什么,要在网页界面上体现哪些字段,每个界面之间又有什么联系,这些都不太明白。“这些东西要靠自己想的”,项目负责人跟我说了,之后他就跟我说了一大堆如何抽象字段,要把每个业务点的关系理清,然后再通过他们的关系抽象有用的字段。听他说了之后,恍然大悟,原来是这么一回事。之后,每次遇到不懂的,就马上去和他沟通。完成了这些设计,我感觉我对软件开发,又有了更深的认识,同时也让我意识到沟通在软件开发中真的是一件很重要的事。

  六、实习心得

经过为期4个月的专业实习,令我更深一步的了解和学习了软件开发的一般过程,不再是以前那样,都不知道软件开发是什么东西。对于一个应用系统他们为什么要那么多人来做,而这么多人一起做,代码又是如何进行管理的。对于每一个应用系统,企业到底用到哪些技术,他们为什么要选择这些技术,我们开发人员的主要任务是什么等等,这些概念都渐渐的清晰。人,孰能无过,过而改之,善莫大焉!没有谁,在编写代码的过程中永远不会犯错,即使他非常的厉害,那也是从不断的犯错过程中锻炼出来的,但亦有“犯错”的时候,因为需求是不断的改变的,即使你当时没错,但需求改了之后,你的代码不符合需求,那也是你的错。有错那当然就要调试咯,以前老是害怕出错,找不到问题所在是件令人烦恼的事。但是当调试的错误多了之后,你就会发现,每当一看到相类似的错误之后,你就会立即知道这个错误是什么原因造成的!所以,我们不应该害怕出错,应该把调试错误当成一种提高个人能力的方式。对于测试人员发回来的bug我们要认真的对待,造成这种bug就证明了我们的思路还是不怎么的清晰,所以有必要再去看看相关的资料。沟通是人与人之间传递信息的途径,好的沟通能很完美的传达你的思想,你的见解。在企业中,每一个系统的开发过程一般来说都不是一个人从头做到尾的,一般都有分工的,如此一来,沟通就必不可少了,因为你要把你做的工作,你为什么这样做,告诉别人,别人才更好的去完成他的任务。

这次实习,是进行实战性工作,学到了很多东西,我相信对以后的生活和工作都有很大的帮助。

  软件开发实习报告3000字「3」

时间过的很快,转眼间已经实习将近5个月,其中有2个月是属于完全被流放的。

最先在内部系统组参与内部管理系统开发(struts+mysql+spring+hibernate),之后是去做网络交换机软件的脚本测试。现在又回归内部系统,虽然在脚本组期间,编码能力被别人甩在后头,但至少具有了一些测试经验。

至少自己做的东西,是真正交付到了客户手上,到也稍微有些成就感。

1 浅谈测试

一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。但在实际情况中,测试是既重要且难以精湛的.其真正的压力,在于找不到bug,责任在你,而不在于编码人员。一般的测试人员不懂编码,他们靠的是日以累计的经验总结和想象力。而要做到高级测试工程师,则一定要懂编码,因为这是你完全掌握整个系统的方方面面具体运作的前提。但占主导地位的,还是大型系统的集成测试经验。实际项目中,编码时间一般只占30%左右,真正耗费时间的是IT阶段的找bug与对应bug,此阶段基本评定了coder的编码质量。

2 程序员的困惑

有些人,以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那?如何定位?如何解决?通通跟一样能力有关,debug追踪能力,也称调试。在项目组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化?

有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题。但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码”才真正属于你。

3 如何调试追踪?

如果你能在短短的时间内就看到问题点在那,放下断点去追踪,出去找工作,绝对没问题。出现问题的时候,不要光看代码,要用实际行动去追踪运行期间的具体值,那是最好途径。eclipse是个很爽的ide,这点做的很好。例如页面内容显示不是自己想要的数据,我们要先从数据库查询语句去下手,设置断点,一步一步step over,让sql字段(存取最终sql语句的字符串)运行到有值,inspect进去看,如果还看不出来,就点击它,copy后在sql客户端去实际运行,看看实际查询出来的表是什么,如果是对的,有可能就是页面调用的错误或者action逻辑的传值问题。

页面错误的调试,基本方法是用右键点击实际网页查看源代码,copy到editplus,就能看到具体错误发生在那几行。通常有几种常见的错误,例如:缺少对象这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加if(xxx=null)语句加保护。追踪的方法基本就是用alert语句,放在有可能出错的地方。

4 一些习惯

遇到问题先自己思考,无从下手再找高手帮忙看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多。

解决了一个问题后,要去究根问底去找到问题产生的起因,以防你下次遇到类似的问题再浪费同样的时间。

把代码写的漂亮,注释、空行、规范一样不能少,可读性是放在第一位。曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人。

任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定,效率和忠诚都有了,路也比较好走了。

5 题尾话

如果你有一份思想,我有一份思想,拿出来交换,我们大家拥有就是2分份思想,可惜这种观念,并不能深入每一个团队的每一个人,少一点自私,未必不是好事。职场到处都存在被排挤的隐患,要为自己找片草地实在不容易。但有一点要相信,只要自己不放弃自己,这世上就没有绝望的路,你可以被打趴下,可以被身边的人暗算,可以被深爱的人流放,只要你用自己决心站起来,受过的伤痊愈后就能增强你的抵抗力,一路前进!

赞助商

赞助商