齐鲁软件园见习

2024-07-07

齐鲁软件园见习(精选6篇)

篇1:齐鲁软件园见习

齐鲁软件园简介

济南高新区齐鲁软件园成立于1995年11月,1997年3月齐鲁软件园被国家科技部认定为全国首批“国家火炬计划软件产业基地”。2001年7月被国家发展计划委员会、国家信息产业部认定为“国家级软件产业基地”。

紧紧围绕产业拉动、园区规划建设、企业服务三大任务,突出了人才集聚、技术支撑、产业国际化、集成联盟四项重点工作。齐鲁软件园经过10年的发展,现有几千家入园企业,具有自主知识产权产品达到315家,经科技部认定的骨干企业9家,11家企业通过CMM认证,从业人员19000多人。自2000年以来经济指标以每年超过50%的速度递增,2005年软件园入园企业技工贸总收入将达到244亿元。软件园通过为企业打造“人才平台、技术平台、企业联盟”的服务环境,在2005年10月国家基地综合排名中齐鲁软件园综合排名位居前列位,引起业界广泛关注。2008年齐鲁软件园取得了令人瞩目的成绩,2008年园区的招商引资指标创近年新高,完成合同利用外资6401万美元,实际利用外资2273万美元,合同利用市外资金预计5.37亿元(7900万美元),实际引进市外资预计完成5亿元。多家重点企业落户园区。其中外资企业包括中讯软件、泰华名气通、新通亮特、百利通、嘉博实业、日本UNISYS、日立信息(日立情报)、日立华胜、美国优创等;内资企业包括北大众志、力创赢芯、东方道迩等。

截止2008年年底,园区人才培训机构(齐鲁软件园纬库工程师培训中心等)总数已达到10家,年培养能力达到5000人,全年共培训学员3803,其中毕业2341人,893人进入园区工作。

济南纬库软件科技有限公司简介

济南纬库软件科技有限公司位于济南市高新区新泺大街786号。是一家集软件开发、软件外包、人才外包、企业服务、教育培训、技术咨询于一体的高新科技公司,于2008年3月入驻齐鲁软件园。有一批来自SUN、IBM、华为、中科软等国内外知名企业的技术专家、工程师共同创办。公司致力于计算机应用软件开发、系统集成服务领域,与各IT厂商保持良好的合作关系。在软件开发方面,以基于经营分析、辅助决策支持系统的系列应用软件为主线,主要为企事业用户提供软件解决方案;软件产品方面提供系列企业移动商务管理软件产品。在企业信息化领域,纬库公司将坚持不懈地为推进企业信息化建设贡献力量,我们的目标是:不间断地向客户提供优质的企业管理信息化服务,向客户提供高性价比的软件产品、解决方案,以期成为最优秀的企业信息化领域的IT服务企业。公司主营业务:

(1)资深企业移动商务应用软件产品、服务提供商;大中型企事业单位移动协同办公方案提供商

(2)教育培训

(3)计算机网络系统集成济南纬库软件科技有限公司旗下的纬库软件培训学校紧跟市场的需求,凭借强大的技术实力和多年积累的软件外包经验,采用先进的办学模式倾力培养专业、实用的高端IT人才和提供及时高效的技术支持。现于业内众多企业达成深度合作。

“把需要工作的人变成工作需要的人”是纬库办学的宗旨;“让千千万万的人通过我们的教育改变生活”是纬库的立业之本;“服务满意率100%、就业率100%”是纬库不懈追求的目标。多年来,数以万计的毕业学员通过纬库面向全国的人才培养推荐体系成功就业,逐渐实现了梦寐以求的人生理想。

纬库软件培训学校的宗旨就是服务好一切学生,让学生在纬库掌握实实在在的真技术。纬库软件培训学校的目标是做中国最负责任的教育企业。

公司网站:

篇2:齐鲁软件园见习

专业:计算机科学与技术

姓名:

班级:

学号:

张传敬

计算机1112

20111221370

一、实习目的

认识实习是计算机科学与技术专业的学生在校期间重要的实践性环节,目的在于通过接触了解计算机的基本组成结构、计算机软件的开发流程以及计算机网络的相关知识,对所学专业有一个感性认识,树立正确的专业思想,为以后学习专业课程作好准备。

二、实习任务

认识实习要了解计算机的发展过程、技术现状和应用情况,激发今后学习计算机专业知识的积极性。为使同学们具体而有目的的实习,现提出具体实习任务如下:

1、了解计算机科学与技术专业的大体情况。

2、如何学习专业知识。

3、了解计算机软件设计与开发。

4、了解计算机在大型企业中的应用情况。

三、总结:

通过这次认识实习,自己对计算机专业有了更加清晰的认识,同时对以后的学习也有了一定的思考。“找准专业定位,刻苦认真钻研”,我觉得这应该是自己在大学学习期间应该做到的。

“认识实习”是我们计算机专业学生在校期间重要的实践性环节,它的主要目的在于通过让我们接触了解计算机的基本组成结构、计算机软件的开发流程以及计算机网络的相关知识,对所学专业有一个感性认识,树立正确的专业思想,为以后学习专业课程作好准备。大二期间的这次认识实习同时对于我们以后的专业划分也是一个很好的参考,通过这次认识实习,对计算机科学与技术专业有了更清楚的认识。

在此次实习中,自己的收获与体会主要表现在以下几方面:

一、对计算机专业有了更清晰的了解。

我们计算机科学与工程学院所设的计算机专业有计算机科学与计算机技术两个方向。计算机科学方向则是学院中最为经典的专业方向。计算机科学与技术专业要求主要是具有良好的科学素养,能系统地、较好的掌握计算机科学与技术包括硬件、软件与应用的基本理论、基本知识和基本技能与方法,能在各级行政机关、科研机构、教育部门、金融单位及通信运营、软件开发、系统集成、电子商务、信息产品制造、硬件销售等IT企业中工作。

二、参观学习感悟

“参观活动”是我们计算机专业学生在校期间重要的实践性环节,它的主要目的在于通过让我们接触了解计算机的基本组成结构、计算机软件的开发流程以及计算机网络的相关知识,对所学专业有一个感性认识,树立正确的专业思想,为以后学习专业课程作好准备。大二期间的这次参观活动同时对于我们以后的专业划分也是一个很好的参考,通过这次参观活动,对计算机科学与技术专业有了更清楚的认识。

作为还没有踏入社会的大学生,面对自己未来的生活与工作,我们心中是有很多疑问的,我们特别需要到真真正正的工作环境中去感受一下自己几年后会所从事的工作。这次认识实习中的齐鲁软件园的参观学习不仅让我们对距离自己最近的与自己专业最对口的公司有了详尽的了解,同时也让我们对自己接下来的学习有了进一步的规划。

上午,首先,在工作人员的引导下,我们参观了软件园的服务中心、研发中心及各大公司的开发试验室,使同学们近距离了解了一下技术研发过程。随后,软件园的负责人杨光老师又带领同学们前往软件园企业创新展厅进行了参观学习。此外,参观过程中,我们还参观了部分外资企业,了解了外企的工作环境及公司的科技发展状况。

此次认识实习不仅拓展了我们的眼界,更为重要的是使我们了解了所学专业的现阶段发展状况及未来的发展动向。为我们的学习指明了方向,也将激励我们计算机专业学子更加努力地学好自己的专业知识,为今后的发展打好基础。

二、找准专业定位,刻苦认真钻研

通过这这次认识实习,自己不仅对专业方向有了进一步的了解,同时对自己以后的大学学习也有了自己的要求和方向。

找准专业定位,刻苦认真学习。计算机专业学生的学习相对于很多专业来说是很难很枯燥的,但是,正因为如此,在大学期间我们才更应该脚踏实地、认真刻苦的钻研。如果耐不下心来,只是追求着片刻的成功,最后在社会工作中一定不会有很高的成就。李开复是我们计算机专业的学生需要学习的榜样,他在卡梅隆大学学习期间就是不断地钻研创新。他那句一个计算机专业的学生在大学期间应该完成至少十万行的语句到现在还影响很大。如今他所开办的创新工厂,也是旨在培养充满创新精神、不断努力钻研的新的社会时期所需要的人才。

这次实习顺利完成,自己的收获也很大,作为一名计算机专业的学生自己要脚踏实地、认真努力,把专业知识学好,打好基础,为以后的学习工作。

篇3:浪潮齐鲁软件实习心得体会

今年五月份,和几个同学一起,经过浪潮几轮轻松的面试(说轻松是相对浪潮招正式员工的层层考试而言),我们巧合的成为了浪潮软件的实习生。同学们其中三个被分到浪潮的第一研究室,三个到烟草事业部,我和另外两个被分到了技术研究中心。公司将我们分散在不同的项目组里,可能是基于老带新的考虑吧,感觉对我们的成长还是颇有好处的。

上班伊始,公司给分配了电脑。相较别人,我算是很幸运的了,17纯平显示器,不用跟其他人一样每天痛苦的面对那个15的球面古老显示器,对此窃喜许久。接下来的一段时间,就是熟悉工作环境,总体感觉这里还是非常宽松惬意的。相对外企,国企工作压力比较小,气氛也相对的活跃,因为特定的环境(周边就是荒郊野岭),加班成了司空见惯的事情,不过大家加班也并不是全在工作,大多数人还是在玩游戏,看网页等消遣时间。

尽管压力不大,但是对于刚刚一脚迈出校园,一脚还没踏进公司的我来说,还是有些紧张的。

首先是意识上面的,在我过去四年的本科,一年的研究生生涯里,我把自己的专业定位到了程序员,工作性质定位到了编码,始终坚信未来的出路就是coding。现实其实不是这样的,公司需要各种各样的人才,编码只是其中的一部分,一个微小的部分。写文档,做需求,做设计,做支持,做测试这些的分量都不必编码低,或者要高上一个数量级。

还有规范上面,在学校里面学了太多的理论,我清楚地记得不只一位老师讲过,编码一定要规范,注释是必须的。没有的注释的程序,就是一堆垃圾。到了企业才真正体会到,不写注释的代码增加的人力,时间是不可估量的。公司在这方面给我们进行了专门培训,对我们以后再公司要用到的开发平台,使用工具也安排了专业人员对我们进行了耐心的讲解和专门知道,这对提高我们的软件开发水平,增强软件开发意识是一个很大的帮助。

部门每个月都会安排至少一次的培训讲座,涵盖面非常广泛。包括Oracal,DB2,Rup,RoR,Qtp等等,员工根据自己的兴趣以及需要有选择的参加。通过参加这些培训,开阔了视野,了解当前it行业的最新形势。通过这些培训活动,也认识了不少公司的重量级牛人,接近强人,学习他们,也给自己的工作带来了很大的信心。

来到浪潮,我做了很多方面的工作了。首先是公司为提高我们注重文档的意识,进行了为期一个月的文档审核工作,经过这轮折磨(我一直认为这是一段痛苦的磨难),我的确对文档开始刮目相看了。然后参加浪潮的loushang3.2封版测试,这段时间尤为充实紧张,整个技术中心都在为主打产品loushang3.2忙碌着,测试过程中,对loushang平台有了比较深刻的了解,我主要是对mda部分进行测试,那段时间可谓是鞠躬尽瘁了。不过现在回想,也是最值得回忆的一段时光。熟悉了平台之后,就参与到项目的开发中,一个是绩效考核系统,一个就是与我论文息息相关的在线考试系统。这里就不罗嗦了。

以上就是我的一些简要的实习经历和感受,同时提出以下建议,希望对以后的实习同学有所帮助:

第一:做好准备,正确选择。明确自己的就业方向,提前下手,要么你拥有了过硬的技术水平,要么你切实满足某个公司的需求,才能进入一个你理想的实习单位。

第二:虚心学习。出现问题在独立思考依靠自己解决的基础上,要积极地向同事请教。软件行业单打独斗是没有通行证的,困扰一天的问题说不定一杯茶的功夫就能解决。

第三:积极主动。不能自视甚高,封闭保守。要善于与人交流。在与人的交往中要积极主动,不亢不卑,从容得体。主动的表达自己的想法。“敏于行而纳于言”是不行的,有什么好的想法也要积极的去表达,有独到见解的人是会博得别人的尊敬的。

篇4:齐鲁软件园见习

软件日语大赛的指导思想:为校企联合开展对日软件人才培养搭建平台。大赛的方案设计来源于对日软件企业的实际人才需求,比赛用题全部来自各个企业,由组委会负责汇总和整理。整个过程包括三个主要阶段:初赛、暑期培训及复赛、决赛。

1、初赛:6月份

初赛时报名人数不限,凡是高等学校的计算机、信息类相关专业的学生均可以报名参加。主要目的是借助大赛达到营造学习氛围、指导学生学习。报名费用及方式详见大赛网站。请每个学校的指导老师及时关注大赛网站,及时辅导和组织学生参赛。

初赛的形式:采用笔试答卷方式,内容包含计算机基础、软件适应性测试和日语基础三部分。

2、暑期培训及复赛:7-8月份

暑期培训的主要目的是使学生了解企业的需求,明确需要学习的内容以及如何学习。经过初赛选拔的学生有资格参加暑期培训。培训时间约7天左右。培训地点、具体时间、费用等详见大赛网站。

暑期培训内容包括两个方面:一是针对口语、会话、礼仪、写作等日语学习方面进行辅导和提高,二是与对日软件方面的企业领导面对面的交流,更多的了解企业的人才需求与软件外包发展趋势;同时安排各个企业的人才选拔,被企业选中的学生直接进入决赛。暑期培训结束时举行复赛,主要从听、说、写几个方面考察选手的日语应用能力。根据复赛成绩选拔进入决赛的学生。

3、决赛: 10月份

决赛主要包括IT日语和面试问题,评委主要由对日软件企业的领导组成,按照实际招聘对日软件开发人才的要求考察学生的综合素质和IT日语能力。

4、选拔及成绩评定

篇5:软件工程专业见习报告

姓名: 班级: 学号: 执行学期:

成绩评定:□优 □良 □中 □及格任课教师:

2015年7月3日

□不及格

《专业见习》报告

班级 姓名 学号

一、见习目的

为了今后的工作需要,为了接触广阔的社会,丰富我们的知识和人生阅历,去与我们专业相关的工作场所见习是一个很好的办法。马克思主义唯物辩证法的一个最为显著的特点就是强调物的实践性。这次见习的主要目的是使我们对本专业密切相关的一些工作做进一步的了解。

二、见习要求

在课堂上我们学到的一般都是纯理论的知识点,所以,借此机会,我们要把所学的知识理论和在学习过程中所遇到的有关专业方面的疑难点与此次较为宝贵的见习实践相结合,真正做到学以致用,并要在实际见习实践中充分对软件工程这个专业有进一步的认识和了解。此外,个人希望能通过此次见习活动对自己的未来职业有一个初步的认识和了解。

三、见习过程和内容

见习地点:南京东软实训基地

见习内容:工作人员向我们介绍了东软公司的发展历程、主营业务、业务范围、各分基地的大致情况及主要经办过的工程。经过一天的学习,我们大致了解了企业里的一些运营模式,之后我们一起参观了企业里的一些公司,对于一些员工的工作分工做到了能说出一二来。

我们上了一周的java企业课程培训,主要目的是让我们更加理解企业里的一些具体工作案例,以便于我们更快的了解企业运行,而我们目前是大一下半学期,还有近两年的时间来完善自身,为我们将来的工作实习打下坚实的基础。

通过讲解。我们知道了一些java的基本情况: 1.平台无关性

平台无关性是指Java能运行于不同的平台。Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与 机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。2.安全性

Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。

3.面向对象

Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。

4.分布式

Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。

5.健壮性

Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。

6.解释型

我们知道C,C++等语言,都是针对CPU芯片进行编译,生成机器代码,该代码的运行就和特定的CPU有关。Java不像C或C++,它不针对CPU芯片进行编译,而是把程序编译成称为自字节码的一种“中间代码”。字节码是很接近机器码的文件,可以在提供了java虚拟机(JVM)的任何系统上被解释执行。

7.动态

java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。

Java提供了一个功能强大语言的所有功能,但几乎没有一点含混特征。C++安全性不好,但C和C++被大家接受,所以Java设计成C++形式,让大家很容易学习。Java去掉了C++语言中的指针运算、结构、typedefs、#define、需要释放内存等功能,减少了平常出错的50%,让Java的语言功能很精炼。而且,因为Java很小,所以整个解释器只需215K的RAM,并增加了一些很有用的功能,如自动收集碎片。Java实现了C++的基本面象对象技术并有一些增强,(为了语言简单,删除了一些功能)。Java处理数据方式和用对象接口处理对象数据方式一样。

Java与C和C++直接相关.Java继承了C的语法,Java 的对象模型是从C++改编而来的.现代程序设计始于C,而后过渡到C++,现在则是JAVA.通过大量的继承,JAVA提供了一个强大的,可以更好地利用已有成果的,逻辑一致的程序设计环境,并且增加了在线环境需求的新功能.或许最重要的一点在于,由于它们的相似性,C,C++和JAVA为专业程序员定义了一个统一的概念架构.程序员从其中的一种语言转到另一种语言时,不会遇到太大的困难。

作为目前企业最流行的一种计算机编程语言,java在企业里的地位是毋庸置疑的。这是一门强大的语言,电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务。Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的首选语言。

之后的几天,我们一共学习了三个项目:月亮、十个小球、像素鸟。每个案例由简到繁,一步一步的让我们学会了java编程思想、指令的规范性、严谨到不能错一个字符。程序本身不怎么重要,重要的是编程的想法,你对于这个项目本身是如何构思的,这将是决定这个程序的发展的重要基础。同时,我们也了解了英语的重要性,因为编程从头到尾都是由英语编的,甚至整个软件也是全英文的,这也让我们对英语有了更大的动力。三个项目的详细源代码在报告的最后。

四、见习总结与体会

通过本次实习,我大致了解了企业里对于编程人员的一些需求,同时也更加明白了现实中残酷的丛林法则,在见习过程中,我充分的了解到实践的重要性。通过学习,对自己专业有了更为详尽而深刻的了解,也是对学校所学知识的巩固与运用。从这次实践中,我体会到了实际的工作与书本上的知识是有一定距离的,并且需要进一步的学习。只有把学到的理论知识和具体的实践工作相结合,我们才能更好的为公司乃至社会服务。

我们现在欠缺的主要是两点:(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。而我觉得解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。

项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据Java的研究和实践经验总结,选择项目的时候要注意以下方面: 1:项目不能太大,也不能太小 这个要根据项目练习的阶段,练习的时间,练习的目标来判断,不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。2:项目不能脱离实际应用系统,项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。因为培训的时间有限,必须让我们尽快地融入到实际项目的开发当中去。任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。3:项目应能覆盖所学的主要知识点 学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了!

五、源代码:

//月亮 package Ev1;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.util.Random;import javax.crypto.Mac;import javax.swing.JFrame;import javax.swing.JPanel;public class M1 {

public static void main(String[] args)throws InterruptedException {

}

//

} System.out.println(“ ”);JFrame jframe=new JFrame();jframe.setTitle(“星星”);MyJPanel mjp=new MyJPanel();jframe.add(mjp);jframe.setSize(700,800);jframe.setVisible(true);//显示画布 //jframe.setLocationRelativeTo(null);jframe.setDefaultCloseOperation(3);mjp.movesun();mjp.movesun1();class MyJPanel extends JPanel{

int[] xx;

int[] yy;

int a;

int b;

int i;

public MyJPanel(){

a=120;

b=150;

i=0;

xx=new int[150];

yy=new int[150];

Random rm=new Random();

for(int i = 0;i < xx.length;i++){ xx[i]=rm.nextInt(700);yy[i]=rm.nextInt(800);

}

}

@Override//右击source/verr

} public void paint(Graphics g){

// TODO Auto-generated method stub super.paint(g);Font font=new Font(“宋体”,Font.BOLD,10);

//设置字体,粗细,大小 g.setFont(font);this.setBackground(Color.black);

//画布颜色 g.setColor(Color.yellow);//设置画笔颜色 for(int i=0;i

g.setColor(Color.yellow);g.fillArc(a, b,70,70,0,360);

//设置坐标,大小,起始角度,角度 g.setColor(Color.black);g.fillArc(a+25,b ,70,70,0,360);g.drawString(“*”,xx[i],yy[i]);

void movesun(){

new Thread(){

//定义一个线程,并且启动

//右击source/ov

@Override public void run(){

// TODO Auto-generated method stub super.run();while(true){ a++;b--;

}

} if(a>=700||b<=0){

} repaint();try {

Thread.sleep(20);a=0;b=800;} catch(InterruptedException e){

}

// TODO Auto-generated catch block e.printStackTrace();

}.start();

}

void movesun1(){

new Thread(){

//定义一个线程,并且启动

//右击source/ov

@Override public void run(){

// TODO Auto-generated method stub super.run();while(true){

yy[i]++;

if(yy[i]>=800){

} i++;if(i>=150){

yy[i]=0;

}

i=0;repaint();try {

Thread.sleep(50);} catch(InterruptedException e){

} }

// TODO Auto-generated catch block e.printStackTrace();}

} }

}.start();//十个小球 package Ev1;import java.awt.Color;import javax.swing.JPanel;public class ball {

int x,y;

//坐标 int r;

//半径 int speed;

//速度 int way;

//方向 Color color;

//颜色

JPanel jpanel;//画纸

public static final int LEFT_UP=0;public static final int LEFT_DOWN=1;public static final int RIGHT_UP=2;public static final int RIGHT_DOWN=3;

public ball(){ } public ball(int x,int y,int r,int speed,int way,Color color,JPanel jpanel){

this.x=x;this.y=y;this.r=r;this.speed=speed;this.way=way;this.color=color;this.jpanel=jpanel;} void move(){

switch(way){

case LEFT_UP:

x=x-speed;y=y-speed;if(x<=0)way=RIGHT_UP;

if(y<=0)

way=LEFT_DOWN;

break;case LEFT_DOWN: x=x-speed;y=y+speed;

if(x<=0)

way=RIGHT_DOWN;

if(y>=jpanel.getHeight()-2*r)

way=LEFT_UP;

break;case RIGHT_UP:

x=x+speed;

y=y-speed;

if(x>=jpanel.getWidth()-2*r)

way=LEFT_UP;

} }

if(y<=0)

way=RIGHT_DOWN;

break;case RIGHT_DOWN:

} x=x+speed;y=y+speed;if(x>=jpanel.getWidth()-2*r)way=LEFT_DOWN;if(y>=jpanel.getHeight()-2*r)way=RIGHT_UP;break;package Ev1;import javax.swing.JFrame;public class BallJFrame {

public static void main(String[] args)throws InterruptedException{

JFrame k = new JFrame();BallJPanel p = new BallJPanel();k.add(p);k.setTitle(“小球”);k.setSize(700,800);k.setDefaultCloseOperation(3);k.setVisible(true);

}

p.ballrun();} package Ev1;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.util.Random;import javax.swing.JPanel;public class BallJPanel extends JPanel{ ball[] ball;

Random rm;

Color co;

BallJPanel()throws InterruptedException{

rm = new Random();

ball=new ball[10];

for(int i = 0;i < ball.length;i++){

int way=rm.nextInt(4);int a=rm.nextInt(256);

int b=rm.nextInt(256);int c=rm.nextInt(256);int x=rm.nextInt(600);

int y=rm.nextInt(700);int r=rm.nextInt(50)+1;int speed=rm.nextInt(10)+1;

co=new Color(a,b,c);

ball[i]=new ball(x,y,r,speed, way, co,this);

}

}

@Override//右击source/verr

public void paint(Graphics g){

// TODO Auto-generated method stub

}

void ballrun(){ super.paint(g);this.setBackground(Color.BLACK);//g.setFont(font);

{ g.setColor(ball[i].color);g.fillArc(ball[i].x, ball[i].y, ball[i].r*2, ball[i].r*2, 0, 360);//坐标,半径,大小,起始角度,全角度 } this.setBackground(Color.yellow);

//画布颜色 for(int i = 0;i < ball.length;i++)

new Thread(){

@Override public void run(){

// TODO Auto-generated method stub super.run();for(;;){ for(int i = 0;i < ball.length;i++){ } repaint();

//刷屏

} try {

Thread.sleep(10);ball[i].move();} catch(InterruptedException e){

e.printStackTrace();} }

}.start();}

}

//像素鸟

package birdfly03;

import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;

import javax.imageio.ImageIO;import javax.swing.JFrame;import javax.swing.JPanel;

public class Birdgame03 {

public static void main(String[] args)throws IOException, InterruptedException {

JFrame jf =new JFrame();jf.setSize(432,670);MyJPanel03 mjp=new MyJPanel03();jf.add(mjp);

}

}

jf.setTitle(“小鸟,我让你飞!!”);jf.setVisible(true);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);mjp.action();class MyJPanel03 extends JPanel{

int score;BufferedImage backgroundimage;BufferedImage gameoverimage;BufferedImage startimage;boolean gameover;boolean started;Bird03 bird;Ground ground;Column column1,column2;public MyJPanel03()throws IOException{

score=0;backgroundimage=ImageIO.read(getClass().getResource(“bg.png”));gameoverimage=ImageIO.read(getClass().getResource(“gameover.png”));startimage=ImageIO.read(getClass().getResource(“start.png”));gameover=false;started=false;bird=new Bird03();ground =new Ground();column1=new Column(1);column2=new Column(2);

} @Override public void paint(Graphics g){

} public void action()throws InterruptedException{ MouseListener l =new MouseAdapter(){ // TODO Auto-generated method stub super.paint(g);g.drawImage(backgroundimage,0,0,null);Graphics2D g2=(Graphics2D)g;g2.rotate(-bird.aphan,bird.x,bird.y);g.drawImage(bird.image,bird.x-bird.width/2,bird.y-bird.height/2,null);g2.rotate(bird.aphan,bird.x,bird.y);Font font=new Font(“宋体”,Font.BOLD,50);g.setFont(font);g.drawString(“"+score, 20, 40);g.drawImage(ground.image,ground.x,ground.y,null);g.drawImage(column1.image,column1.x-column1.width/2,column1.y-column1.height/2,null);g.drawImage(column2.image,column2.x-column2.width/2,column2.y-column2.height/2,null);if(gameover){ } if(!started){ } g.drawImage(startimage,0,0,null);g.drawImage(gameoverimage,0,0,null);

@Override public void mousePressed(MouseEvent e){ // TODO Auto-generated method stub

super.mousePressed(e);if(gameover){

try {

bird=new Bird03();} catch(IOException e1){

} try {

ground=new Ground();

// TODO Auto-generated catch block e1.printStackTrace();} catch(IOException e1){

} try {

column1=new Column(1);

// TODO Auto-generated catch block e1.printStackTrace();} catch(IOException e2){

} try {

column2=new Column(2);

// TODO Auto-generated catch block e2.printStackTrace();} catch(IOException e1){

} score=0;gameover=false;

// TODO Auto-generated catch block e1.printStackTrace();

}

else{

} started=false;} started=true;bird.startfly();/*public void MousePressed(MouseEvent e)throws IOException{

} }*/ try{

else{

} } catch(Exception ex){ ex.printStackTrace();started=true;bird.startfly();bird=new Bird03();ground=new Ground();column1=new Column(1);column2=new Column(2);score=0;gameover=false;started=false;} if(gameover){

} } };addMouseListener(l);while(true){

} if(!gameover){

} if(bird.hit(column1)||bird.hit(column2)||bird.hit(ground)){ } repaint();Thread.sleep(1000/60);gameover=true;if(started){

} bird.fly();ground.step();if(bird.x==column1.x||bird.x==column2.x){ } score++;bird.step();column1.step();column2.step();class Bird03{

int x,y;int size;double v0;double speed;

BufferedImage image;double g;double t;double aphan;int index;double s;int width;int height;BufferedImage[] images;public Bird03()throws IOException{

} void step(){ double v0=speed;image=ImageIO.read(getClass().getResource(”0.png“));x=200;y=280;g=4;t=0.25;v0=20;speed=v0;size=40;index=0;s=0;aphan=0;width=image.getWidth();height=image.getHeight();images=new BufferedImage[8];for(int i = 0;i < images.length;i++){ } images[i]=ImageIO.read(getClass().getResource(i+”.png“));

} s=v0*t-g*t*t/2;y=y-(int)s;double v=v0-g*t;speed=v;aphan= Math.atan(s/8);void fly(){

} void startfly(){ } public boolean hit(Ground ground){

} public boolean hit(Column column){

if(x>column.x-column.width/2-size/2 &&

x

//检测是否在缝隙中

if(y>column.y-column.gap/2+size/2 &&

y

return false;boolean hit= y+size/2>ground.y;if(hit){

} return hit;y=ground.y-size/2;aphan=-3.1415026/2;speed=v0;index++;image=images[(index/12)%8];

}

}*/

}

} } return true;return false;/*if(x>column.x-column.width/2-size/2&&

} return false;x

}

return true;y>column.y-column.gap/2+size/2){ return false;class Column{

BufferedImage image;int x,y;int dis;int width;int gap;int height;public Column(int n)throws IOException{

image=ImageIO.read(getClass().getResource(”column.png“));dis=245;x=550+(n-1)*dis;gap=144;

}

} Random random=new Random();y=random.nextInt(218)+132;width=image.getWidth();height=image.getHeight();void step(){

} x--;if(x==-width/2){

} x=2*dis-width/2;Random rm= new Random();y=rm.nextInt(218)+132;class Ground{

} int x,y;BufferedImage image;public Ground()throws IOException{

} void step(){

篇6:齐鲁软件园见习

(信息化办公室 武文韬 2018.3)

在本月,我制作了一个名为GeoQuiz的应用Demo,应用了最近学到的一些知识。

设计该应用之心得

1.在制作较为复杂的应用时,最好使用MVC设计模式,也就是俗称的MVC分层。

M是model,也就是模型层。V是view,也就是视图层。C是controller,控制层。通过分层可以使应用结构清晰,通过接口也就是interface进行低耦合,防止应用结合太过紧密而无法进行修改和升级。

2.在设计应用时一定要预留升级的空间,不可将应用写的太死。否则在升级的时候要进行大量底层的变动,非但费时费力,还很容易出错。一但出错,若无上个节点的备份,会出大问题。

编程该应用之心得

1.在设计一些比较重要的键也就是Key的时候,最好将其写在文件顶端引用库文件的位置下方,并用静态也就是static和final进行标记。因为这些键在安卓设计中是贯穿activity的重要工具,经常配合intent进行传参等操作。若不写成静态的,首先可能被更改,程序容易出错,也并不安全,容易被攻击。

2.当程序出现未知错误时,可以通过清理应用程序缓存也就是在Androidstudio进行CleanProject操作以防止gradle出错。因为错误是未知错误,即便是贴到百度等搜索引擎上也是非常难找到解决办法的。

3.较为复杂的逻辑一定要单独封装进多个方法中,然后在主要方法中进行调用。我在学习过程中,想给qeoquiz应用添加一些功能,比如增加后退翻页按钮,防止数组溢出等,修改了一些代码。最后导致应用崩溃,幸好事先留有备份。

4.在使用DEBUG工具时一定要耐心,断点的位置也是一门学问。这样的复杂应用一旦出现问题,用眼睛判断是非常困难的。而当应用逻辑出现问题时,即便是Androidstudio的lint已经非常智能,但是也无法自行判断设计者的意图是否有误。这个时候断点调试是非常必要的。在一开始,因为自己的不耐心,一步一步运行的时候没有注意变量值的变化,被迫再来一次。然后才意识到自己的断点打的位置不好,导致要单步运行多次。

总结:

本月我收获很大,从理论变成产品是一个比想象中更艰巨的工作。虽然成品只是一个答题软件的demo,但我也走了许多弯路。我意识到,虽然软件制作了出来,但我对activity的生命周期和参数传递的认识并不好,通过阅读API文档,我补足了一些,但软件开发对于独立开发者是一个艰巨的工作,我还需要学习的更为扎实。

见习点评:

该见习生在信息化办公室服从安排,积极工作,在完成公司任务之后还自己学习进步。希望他努力学习,早日为公司信息化做出自己的贡献。

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【齐鲁软件园见习】相关文章:

齐鲁软件设计大赛学习心得06-20

齐鲁证券08-01

齐鲁文化06-11

齐鲁精神07-31

齐鲁银行简介05-17

齐鲁文化品牌06-07

齐鲁民俗文化05-03

《齐鲁晚报》“家教05-11

齐鲁文化走出去06-27

2017齐鲁最美教师07-23

上一篇:《爱丽丝镜中奇遇记2》经典台词下一篇:难忘的背影初中作文