计算机专业 本科生 毕业实习报告
计算机与信息工程系
毕业实习报告
专业__计算机科学与技术____班级_____B070401_________学号_____B07040125_______姓名_______张文毅_________报告完成日期_201*-5-20_____指导教师____李蒙__________
成绩_______________________批阅教师签名________________批阅时间____________________一、实习目的
无法培养我对专业知识学习的积极性的古板四年大学课程已宣布接近尾声,学校为了更好的使我们适应未来的工作,同时为了本着对学生负责的态度要求我们在毕业前进行专业方面的实习,通过理论联系实际,巩固所学的知识,提高处理实际问题的能力,为毕业设计的顺利进行做好充分的准备,为学校的就业率提高做一点贡献,实现由学校学生角色向社会职业角色的转变,为自己能顺利与社会这个大环境接轨做好充分的准备。
二、实习内容
鉴于以上目的,201*年7月开始,我有幸进入了河南曦光科技有限公司,开始我的实习过程。
曦光科技集团,智能家居领域的一支新兴力量,致力于拥有自主知识产权的智能家居产品的研发、生产、销售和客户服务,同时兼营自动化设备、电器开关、电子成套设备的生产、销售和服务。
河南曦光公司现拥有众多专职从事智能家居软硬件开发的高级工程师、设计人员和各类资深技术人才。优秀的研发团队不仅使我们牢牢把握最新技术发展方向,更确保了曦光产品在国内同行业应用中的技术的领先优势。到现在为止,完整的全套智能家居解决方案已经完成,曦光人随时准备为客户提供完美的产品和优质的服务!
河南曦光提供的工作环境比较优越,对于仅仅是在学校学到甚至没有学到技术的我老说,不可能去从事与核心技术,软件,硬件有关系的项目等等,恰好现在缺少的是技术总监助理,想到这个职位对于培养技术兴趣有一定帮助,并且自己可以初步胜任,我就欣然接受了。
由于河南曦光的研发中心是依托洛阳理工学院西校区的自动化系研究所,因此对我来说比较方便,上下班都在一个校园内,实习生时间上也比较轻松,有更多自主时间,倘若需要处理自己的学校的事情都有行动自由,这点还是非常人性化的。
刚进入曦光科技就需要知道公司是做什么的,通过半个月的学习逐渐明白曦光致力于智能家居的研发,通过科技让生活更加简单,美好。什么是智能家居呢?说白了,就是通过各种先进的科技手段来控制家里的家具,家庭设备,等等。比如说:按几下手机上的按钮卧室的灯开了,出家门了在公司想看看家里面孩子是否安全,可以用手机视频监控一下,通过在家里进行布防,一旦发生紧急情况,会通过短信提示,这样
智能吧?作为技术总监助理,就是做一些与技术有关的测试,演示,调试,等等的工作。我接到的第一个工作任务是将海康威视(国内安防设备领头企业)的一个DVR视频监控录像机的安防监控功能调试通,并且写一个报告,自此之后我的任务都是以报告形式向技术总监进行汇报。
我的工作比较杂主要分类(以下均举例说明):1.测试:测试网桥(一个小的转发器)的转发功能。2.调试,演示,体验:比如第一个工作。
3.配置环境:给自己的电脑上安装一个mac操作系统并配置开发环境,俗称黑苹果。公司的本地服务器上配置一个svn服务器(用于代码等的版本管理软件)。
4.与手机等手持移动设备相关:给公司提供的各种系统的手机刷机,越狱,升级固件等windowsmobile,android,ios(10月ipodtouch,ipad),symbian(并且进行简单的DIY固件)等等。
5.一些市场调查,分析:网站,应用以街旁LBS类SNS社交应用为例。
6.以及十月末的基于ipod等ios设备的集成控制器市场调研产品综合分析说明。
各类音乐网站的数据调查。
7.简单的程序学习:写一个android平台的helloworld程序,以及后续学习。8.与开发板有关:三星mini2440开发板(友善之臂)的学习,烧写,调试,配合其他部门进行。
9.代码的修改:禅道开源CMS的一些自定义功能代码修改,定制。10.参加项目组:背景音乐项目组。任务:背景音乐管理员管理模块。11.参加一些讨论,会议,展会。201*年11月深圳举行的高交会(中国国际高新技术成果交易会)。
其实去年早期工作重点就是做与智能家居设备有关的测试,其中重要部分是智能网关(用于命令的接受处理转发的设备,需要用到2440开发板)相关的。
直到今年才开始做一些程序代码的编写,包括android的(比较简单,后因故没有继续),批处理测试代码,html等web编程的技术准备。今年4月加入到背景音乐项目组承担背景音乐管理员模块的开发,使用技术:php,html,mysql,javascript,ajax。整个项目将于明日提交验收,我的部分以与月初完成。这整个四月对于我来说意义重大,从一个程序员门外汉,开始知道自己做的东西了,而且做的是可以看得见
摸得到,切切实实能用的,并且自己从0开始,没有接触过的技术,每天都有很多问题出现,公司没有精通这技术的人,不能用于解决实际问题,因此大部分都是靠自己通过互联网,通过书本自学,确实感觉非常吃力,但是很有成就感,这一点是在大学三年所没有过的。看到用户在用自己的产品,都是一种鼓励,相信我会更加进入状态。
另外就是谢谢公司给我一次出差的机会,去年高交会期间,我随从领导去深圳曦光科技公司(分公司)参加高交会,让我感触到高科技的魅力,同时让我体会到以后作为一个高科技从业者我们所要追求的技术高峰,就像高交会说的那样“讲实效、专业化、不落幕”。此行增加了自己工作的积极性。
三、实习总结
根据工作内容需要总结的很多,其中最需要写出来的就是,参加这个项目以来的一个月我的收获;当初只是项目领导一句看似不经意的话:文毅,你不是最近在学web’开发?没事加进来做做呗,我觉得这个可以试试你最近的学习成果。本来都可以用.Net完成的管理员后台管理,却让一个没有实战经验的菜鸟去完成,起初我觉得压力很大,而且由于刚上路,还没有经验,进度相当慢,后来压力与日俱增,只好昼夜加班去克服困难,尽量按时交付。当我调试过程中找不到问题所在,请教teamleader,他慢慢的给我分析问题所在,让我从中学习到了很多经验,我当然感叹自己的无知,他都劝说:慢慢来,这都需要一个过程。后来需要自己慢慢去总结方法,去提高效率。还有一点就是项目管理过程中的一些问题,作为一个团队,沟通交流是不可或缺的,这一点也是我在这个项目组里面学的重要的一课。总之,在这里我不仅学到了技术,还学到了经验,不管是技术,还是处理事情等方面的。他带给了我全新的感受,让我对项目,对开发有了初步的认识,以及对自己能力有了一定了解革命尚未成功,仍须努力啊!
这期间有几个细节,刚开始只知道自己幻想着写成什么样的功能,后来写好了用的时候,测试人员,或项目其他人员使用就发现不够人性化,因此导致的时间浪费都是经验不足造成,总结:不能想着自己能做出什么样的产品,而是我们要为客户做出让她们伸大拇指的产品,并为之努力接近。还有一个,起初使用的界面都很僵硬,一点都不友好,直到提交后,自己都看到觉得难看而不想用,还有输入框的输入错误导致需要重新加载网页,就会把输入错误的清空,这个使用者带来极大的不方便,好不容易输入那么多,一次都要重新输入。还有所有验证都在服务器端进行,一些简单的
输入判断输入验证都在服务器端,虽然服务器强大,但纵观现在的大型网站,新浪百度,阿里腾讯那个不是使用静态页面等技术解决这些问题。等等一系列问题迫使我学习客户端的技术javascript,ajax。就是这样进步的,试试跟着前沿技术按需要学习。还有重要一点就是关于代码规范和美观,虽然不是很严格但是从这些写了5,6年代码的人哪里得到的必须是好的经验,趁早养成一个好习惯,以便将来维护时减少不必要的麻烦。代码的重构更是一个永恒的问题,当然这里我还只能在他们哪里得到笼统的告诫,提示,一切细节都还是要自己去亲身体验。这不,刚刚几天一直在重构代码,其中两天晚上过于投入,通宵去重构。这让我感受到我还没有老,我还很有激情。突然有一种创造力被释放的感觉。
实习给像我这种自认为学校学不到什么实用且想要的东西的年轻人一个不错的锻炼机会。在此期间我还接触了一个很不错的平台希望通过这里推荐给大家微博,微博不仅成为我信息获取的重要渠道之一,也能让我对各种事物本质有更深刻的了解,其中重要的一点是他可以带来用户互联网使用习惯的改变,他会引领我们的社会向公民社会迈进。作为媒体他已经是传播智慧,信息等等的平台。当然等到自己技术水平达到一定程度,何不尝试在开放平台上做一点有自己idea的应用,比如新浪的微博开放平台,比如google开发平台。以前大三时候总是怀疑自己报志愿选专业时候的决定肯定是错的,当时是不了解,仅仅觉得电脑好玩,当你真正深入进去从事他才会发现他的魅力,人都希望自己可以以自己最喜欢的事情来做饭碗,看来那需要一定境界。当大三为自己迷茫要干什么,什么才是自己最擅长,最感兴趣的是什么而困惑的时候,那就是用心去体验,尽全力去感受一些事情的魅力,当你从中获得了最多的快乐(包括成就感,财富等等所带来的)那时候你就可以说自己喜欢的是什么,想要的又是什么。所以说兴趣不是一个人随便说说的,是真的培养起来的,可能我就是这样在诠释李开复那句:followyourheart的吧!!最后我想用最平实的言语告诉大家,要抓住每一次机会,同时思考自己做这件事的目的(我是为了获得快乐),其实不一定你要去学李开复那样追随你的心灵,各个人的环境,条件不一样,自己的问题还是要自己去解决,但我只劝大家大学学不到技术不是大事,关键是你是否学会了独立思考问题以及解决问题的能力(虽然我们的学校都反着做),当然能碰到好的老师,同学会更好。时间是永远的敌人,当我在这夜深人静时候写报告,调程序,也许对面寝室的就在游戏人生,不同仅仅是我希望我的人生过得不后悔。
4扩展阅读:计算机专业毕业实习报告
目录
前言........................................................................1实习目的....................................................................1实习单位简介.................................................................1实习任务....................................................................2
相关技术简介.............................................................2实习内容....................................................................3
影像租赁系统.............................................................3数据库设计...............................................................5使用JDBC链接数据库......................................................8使用Servlet编写服务器端应用程序........................................10调试运行................................................................11实习总结...................................................................12
I前言
作为还没有踏入社会的大学生,面对自己未来的生活与工作,我们心中是有很多疑问的,我们特别需要到真正的工作环境中去感受一下自己几年后会所从事的工作。因此在刚开学的两周时间里,学校为我们安排了生产实习,主要是让我们较深层次接触社会,运用所学的专业知识认识企业实践活动,了解企业运行环境,认识企业管理业务流程,为将来走上工作岗位打下基础。
实习目的
1、加强和巩固理论知识,发现问题并运用所学知识分析问题和解决问题的能力。
2、锻炼自己的实习工作能力,适应社会能力和自我管理的能力。
3、了解实习单位的计算机技术的应用情况、需求情况和发展方向及前景。
4、亲身参与项目的实际完成工作,了解计算机专业软件开发的具体流程。5、通过实习来认识了解自己,发现不足,提前做好自己的职业规划。
实习单位简介
学校安排的实习单位是在中国最大的城市上海,我们学的是计算机科学与技术专业,因此学校给我们安排的单位是上海的一家软件公司-上海杰普科技软件有限公司。
上海杰普软件科技有限公司(BriupTechnology,Inc.)是一家专注于高端IT培训、软件外包、研发咨询的高新技术企业。公司核心成员由海外留学人员和来自Sybase、亚信、Sun等国际大公司的资深技术人员组成,在电信、金融、电子商务等方面有着丰富的专业开发、管理和培训经验。公司全面致力于开展以面向外企、电信、金融等行业为主的中高级软件人才培训及人才外包业务。公司经过多年运营,先后为浦东软件园、徐汇软件园、漕河泾软件园、天地软件园、南京雨花软件园等提供数千名软件开发人员,同时成为全国首家专业软件外包园区---龙软园区最为紧密的合作伙伴,为园区专业提供软件外包人才。上海紧缺人才办公室指定的高端IT培训基地201*年度获得“促进上海信息化建设奖”201*年度、201*年度最受网友推崇的IT培训品牌百家高校指定的专业实习孵化基地首家与“211工程”大学联合培养软件工程硕士的培训机构首家提出“优质
就业”理念的IT培训机构国内首家面向大学生提供免费JAVA集训的IT公司。
公司业务:IT培训:A)DPS人才培训项目:高级JAVA软件开发实训/职业规划及入职培训。B)企业培训项目:企业客户定制开发课程/软件开发/项目管理
软件外包:提供软件开发服务和人力资源外包服务。研发咨询:提供专业的研发管理咨询服务公司文化:诚信、专业、和谐、创新
公司资质:公司成立于201*年,注册资金100万人民币,是上海市人事局许可的高级人才培训中心。同时也是上海市紧缺人才办公室培训基地。
实习任务
在Android平台下运用java语言、JDBC技术、Oracle数据库,开发一个手机上的应用软件影像租赁系统。相关技术简介
Android平台
Android是基于Linux内核的操作系统,是Google公司在201*年11月5日公布的手机操作系统,它采用了软件堆层(softwarestack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。
ORACLE数据库
ORACLE是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。
Java语言
Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继
承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。
JDBC技术JDBC
是一种可用于执行
SQL
语句的
JavaAPI
(ApplicationProgrammingInterface应用程序设计接口)。它由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。
任务种需要用到的相关技术都是我们之前没有学过的,但是我们有C++语言和SQLSERVER数据库的基础,这些技术在某些方面有其通用性,因此我们学习起来也会事半功倍。
实习内容
影像租赁系统
在美国,由于知识产权问题得到了很好的保护,所以一般不会出现盗版的问题。美国人除去在电影院看电影之外就是在音像店租碟回家去看。在这种情况下,影像出租的店铺就比较多。在信息化的背景下,设计一套系统管理影像出租业务成了当务之急,于是通过和店铺经理沟通,获得如下业务信息:
1凡是想要到该影像租赁影碟的被称为会员(Member),只有成为该店的会员才能
够租借该店的影像资料(Title)。
2影像店中不定期会购买一些影像资料(Title),并且获得了复制该影像资料的权
力,每一份影像制品可以有多个拷贝,每一份拷贝称为一个复制条目(TitleCopy)
3对客户而言,原始的影像资料(Title)只能被预定并且可以同时接受多份预
定(Reservation),客户可以租赁的是影像拷贝(TitleCopy)。
4任何一个客户的租赁信息(Rental)都必须存档以便将来店铺对客户的租赁进行
评估。
通过和租赁店经理详细面谈,了解更详细的业务的信息:
1每一个会员必须被记录的信息包括会员编号Id,而且所有会员的编号是唯一的,
姓名Name,称为会员的日期Join_date,以及其他需要被记录的信息包括(住宅地址
Address,所在城市city,住宅电话phone).
2影像制品(Title)必须被记录的信息包括编号Id,而且所有影像制品的编号也是
唯一的俄,标题Title,影片说明Description,价格Price,和其他如下信息(分
级rating,种类category,发行日期release_date).
3每一份影像拷贝(TitleCopy)都有各自的编号Id,同一个影像的若干拷贝编号
不同,但是不同的影像拷贝的编号可能会重复。必须记录下是否已经出租,以便于
店员随时能够查询拷贝资料的当前状态(status)。
4系统中允许会员预定某项影像资料,但必须提前预约租赁时间(res_date)。
5每一项出租事项需要记录下来(租借日期book_date,实际归还日期act_ret_date,
过期时间(exp_ret_date)。
业务逻辑实现:
1查询出所有用户的名字(name)以及用户所借阅的影像资料名字(title)和借阅的日期(book_date)
2查询出最近一周订阅影像资料的用户的名字(name)和相应的影像资料名字(title)及借阅日期(book_date)
3查询出下周日应该归还的影像资料的名称(title)和借阅者的姓名(name),地址(address)
4查询出已经超期还未归还的影像资料的名称(title)和借阅者的姓名(name),地址(address)
5查询出最近一月借阅次数最多的影像资料的名称(title)6查询出已经登记但是还没有拷贝的影像资料的名称(title)7查询出本周预定最多的影像资料的名称(title)
要求:
1实体关系模型2表实例图3建表语句
4样例数据入库(insert语句)5业务逻辑实现(select语句)数据库设计
采用oracle数据库进行设计。
1根据需求分析,设计数据库,其实体关系模型图如图-1。
图-1
2由实体关系图,设计各表的实例结构图如下。
图-2
图-3
图-4
图-5
图-6
3由表实例图,设计建表语句。
使用JDBC链接数据库
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
会员表单代码如下:
packagecom.briup.jdbc;
importcom.briup.pojo.Member;importjava.sql.*;importjava.util.*;
publicclassMemberJdbc{
//提供连接数据库的四个参数
privatestaticfinalStringDRIVER=
"oracle.jdbc.driver.OracleDriver";
privatestaticfinalStringURL=
"jdbc:oracle:thin:@localhost:1521:XE";
privatestaticfinalStringUSER=
"wzp";
privatestaticfinalStringPASSWORD=
publicvoidsaveMember(Membermember){
Connectionconn=null;PreparedStatementpstmt=null;ResultSetrs=null;
8"wzp";
try{
//步骤1:注册驱动Class.forName(DRIVER);//步骤2:建立和数据库的连接conn=DriverManager.getConnection
/*从数据库中获得t_member_seq来作为主键*/StringselectSql=
"selectt_member_seq.nextvalfromdual";pstmt=
conn.prepareStatement(selectSql);
(URL,USER,PASSWORD);
rs=pstmt.executeQuery();Longid=0L;if(rs.next()){}
//步骤3:创建PreparedStatement对象Stringsql=
"insertinto"+
"jack_membervalues(?,?,?,?,?,?)";id=rs.getLong(1);
pstmt=conn.prepareStatement(sql);/*替换占位符"?"*/pstmt.setLong(1,id);
pstmt.setString(2,member.getName());pstmt.setString(3,member.getAddress());pstmt.setString(4,member.getCity());pstmt.setString(5,member.getPhone());pstmt.setDate(6,member.getJoinDate());
//步骤4:执行sql语句
introws=pstmt.executeUpdate();//步骤5:处理返回的结果
System.out.println("成功插入"+rows+"条记录!");
}catch(Exceptione){
e.printStackTrace();
}finally{}
//步骤6:关闭资源,释放内存try{
conn.close();pstmt.close();
}catch(SQLExceptione2){}
}使用Servlet编写服务器端应用程序
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
部分代码如下:
packagecom.briup.pojo;importjava.sql.Date;
publicclassMemberTest{
//程序入口方法
}
publicstaticvoidmain(String[]args){}
//创建Member对象
Membermember=newMember();//设置Member对象的属性值member.setId(10L);member.setName("briup");
member.setAddress("wanlongroad");member.setCity("shanghai");member.setPhone("888888");
longtime=System.currentTimeMillis();member.setJoinDate(newDate(time));
//输出Member对象中的属性值
System.out.println("id:"+member.getId());System.out.println
("name:"+member.getName());
System.out.println
("city:"+member.getCity());
System.out.println
("address:"+member.getAddress());
System.out.println
("phone:"+member.getPhone());
System.out.println
("joinDate:"+member.getJoinDate());
调试运行
使用Android手机模拟软件,模拟手机客户端,运行该影响租赁系统。
实习总结
虽然实习只有短短的两个星期,但是我的收获是很多的。从对项目相关的技术完全不了解,到和同学组成的团队一起克服种种困难,解决各种疑问,一起协同合作成功将软件调试成功。我的感触颇深,古语有云:读万卷书,行万里路。古人将读与行并列甚至有偏重行的意味,这正是说明了实践的重要性。“实践是检验真理的唯一标准”,没有实践何来了解、进步之说。也深深的体会到大学期间为什么要安排这样的实习课程。
通过这次实习,我们基本达到了此次实习的目的,加强和巩固了理论知识,提高了发现问题并运用所学知识分析问题和解决问题的能力。锻炼自己的实习工作能力,适应社会能力和自我管理的能力。了解了实习单位的计算机技术的应用情况、需求情况和发展方向及前景。亲身参与了项目的实际完成工作,了解了计算机专业软件开发工作的具体流程。
这次实习不仅拓展了我们的眼界,更为重要的是使我们了解了所学专业的现阶段发展状况及未来发展动向。在实习最后的几天时间里,在公司工作的一个我们学校的学姐为我们上了一堂人生职业规划的课,教我们该怎么给自己一个合适的定位,同时哪些是我们应该着重学的,同时也介绍了计算机行业的发展前景,以及一些当今比较流行比较热门的技术,为我们的学习指明了方向,也将激励我们计算机专业学子更加努力地学好自己的专业知识,为今后的发展打好基础。
同时,在这段时间我得到的最大体会就是,如果一个人在社会上没有一技之长,那他是没有办法很好的活下来的。工欲善其事,必先利其器。而对于我们来说,扎实稳固的技术就是我们以后走上工作岗位,实现人生梦想、自我价值以及在竞争越来越激烈的今天立足社会的最好利器,只有不断的加强自身专业技能学习才行。所以,我会在以后的时间里努力学习,加强自己的专业能力,使自己变得更强,只有这样才能上到为国家、为社会做出贡献,下到为自己、为父母、为学校交出一份满意的答卷。
实习生活暂告一个段落,闲暇之余,我开始静静地长思。通过这次实习,我认识到只有沉下身来,静下心来认真学习,踏实做事,多用心,多动脑,才能让自身能力有好的起色。社会的竞争是激烈的,我想我们应该好好把握住大学学习的时间,充实、完善自我,全面发展,做一名出色的IT精英!
友情提示:本文中关于《计算机专业 本科生 毕业实习报告》给出的范例仅供您参考拓展思维使用,计算机专业 本科生 毕业实习报告:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。