android开发实训报告洛阳理工学院.docx
- 文档编号:11583590
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:17
- 大小:54KB
android开发实训报告洛阳理工学院.docx
《android开发实训报告洛阳理工学院.docx》由会员分享,可在线阅读,更多相关《android开发实训报告洛阳理工学院.docx(17页珍藏版)》请在冰豆网上搜索。
android开发实训报告洛阳理工学院
洛阳理工学院
生产实习报告
专业计算机科学与技术
班级B120531
学号B12053114
姓名晁美霞
完成日期2013/09/11
四川华迪信息技术有限公司(简称华迪公司)创立于2003年,主要从事行业应用软件开发、系统集成、软件与信息服务外包、软件与网络开发技术培训、大学生实习实训与各类IT职业技能高端培训等业务。
公司先后被认定为国家计算机系统集成资质企业、四川省“双软”企业以及高新技术企业,并通过CMMI3级认证,是国家财政部、教育部批准的国家职业教育基地和国家职业教育基地和国家职业教育基地和国家软件工程专业实习实训基地。
作为中国大学生校外实训基地建设的开创者和领航人,华迪实训基地是西部地区规模最大、专业化程度最高、影响力最强的IT实训基地——8年来,华迪合作院校/培训的学生累积达到近80000人;培训学生专业对口就业率达96%以上;校企合作联办专业学生就业率达到95%以上。
华迪公司地处成都高新技术开发西区,周围Intel公司、Motorola公司等高科技企业星罗棋布,与成都出口加工区、成都现代工业港、成都模具工业园相邻,周围国际化氛围与产、学、研气氛十分浓厚。
此外,还在成都高新技术南区设有办公区、在洛阳设有分公司。
洛阳华迪智谷软件科技有限公司(简称洛阳华迪),是在洛阳市各级领导的关心支持下,由洛阳市经济开发区和四川华迪信息技术有限公司联合打造的洛阳市“公共实训培训服务平台”,也是华迪实训基地的洛阳中心。
公司于2011年正式成立,注册资本100万,是由四川华迪信息技术有限公司(95%)和四川华迪信息技术有限公司工会(5%)共同投资的。
公司现有实训专用电脑200台,项目管理服务器2台,专用交换机、路由器、防火墙等各型网络设备30多台,可同时容纳200人住宿及实训。
华迪公司拥有一支专业技术扎实、行业服务经验丰富、职业化素质高的工程师队伍。
技术人员中90%以上具有企业中高级技术职称,其中许多人参与过国家863软件开发项目,承担过许多大型应用软件开发、信息系统集成和网络工程项目。
在全球信息产业迅猛发展,世界经济一体化趋势不可逆转,软件与信息服务外包方兴未艾的时代背景和历史性机遇面前,华迪公司将始终秉承“创新、诚信、品质、回报”的经营理念,坚持以“创新的精神,诚信的态度,优良的品质,最大的回报”引领公司各项业务的发展,努力为促进我国信息产业的发展、促进IT专业化人才培养模式的改进做出积极的贡献!
2013/9/2
今天是来华迪的第一天,上午首先由王老师讲近几年就业趋势,企业文化,注意事项及职业素养。
随后高老师讲解软件项目计划,RUP模型,用例建模、数据库设计、Android环境的搭建及运行及演示往年学员的一些项目。
主要有:
一、软件项目计划
1、软件项目计划是一个综合的组装(即它是一个计划集),用来收集管理项目时所需的所用信息,包括在开始阶段中的许多工件,并且在整个项目过程中保留下来。
2、软件项目计划的内容:
项目概述、项目组织结构、项目管理流程、项目技术流程、项目支持流程、其它专题计划
二、RUP简介
1、RUP生命周期:
先启阶段、精华阶段、构建阶段和产品化阶段。
2、RUP对质量的定义
3、迭代式开发:
在迭代式生命周期中,您需要根据主要风险列表选择要在迭中开发的新的增量内容。
三、用例建模
1、用例模型是系统既定功能及系统环境的模型,它可以作为客户和开发人员之间的契约。
2、用例之间的关系:
包含关系、扩展关系和泛化关系
3、RationalRose的使用
四、数据库设计
1、PowerDesigner的使用
2、概念数据模型:
只考虑实体和实体之间的联系,不用考虑很多物理实现的细节
3、物理数据模型:
五、Android开发
1、编码前准备:
安装JDK、安装Eclipse、安装Ant、安装ADT、安装AndroidSDK
2、新建Android项目:
"New"->AndroidProject,ProjectName-项目名称;BuildTarget-编译项目的SDK版本;Applicationname-程序名称;Packagename-包名;MinSDKVersion-程序所支持的最低SDK版本代号(2对应1.1,3对应1.5,4对应1.6)
3、运行Android项目:
打开菜单"Run"->"RunConfigurations"->Newlaunchconfiguration,设置启动项目名称,在Android选项卡中选择启动项目,在Target选项卡中设置模拟器
4、创建/使用模拟SD卡:
创建SD卡,运行类似如下命令:
mksdcard-lsdcard512Md:
\Android\sdcard.img,模拟器中使用SD卡,在项目配置的Target选项卡的"AdditionalEmulatorCommandLineOptions"框中输入类似如下参数:
-sdcardd:
\Android\sdcard.img
5、配置模拟器:
运行类似如下命令:
Androidcreateavd--nameAndroid15--target2。
或者直接在菜单"Window"->"AndroidAVDManager"中配置模拟器
6、AndroidUI布局:
线性布局、相对布局、帧布局、表格布局、绝对布局
7、Android消息机制:
Win32经典消息机制模型,Looper、Handler、Thread三者关系,代码剖析,消息处理“三步曲”
8、编码两种方式
方式一:
方式二:
六、Android目录结构
1、src-用于放置源程序
2、gen-自动生成R.java文件,用于引用资源文件(即res目录下的数据)
3、assets-用于放置原始文件,Android不会对此目录下的文件做任何处理,这是其与res目录不同的地方
4、res/drawable-用于放置图片之类的资源;res/layout-用于放置布局用的xml文件;res/values-用于放置一些常量数据
5、AndroidManifest.xml-Android程序的清单文件,相当于配置文件,配置应用程序名称、图标、Activity、Service、Receiver等
2013/9/3
上午继续昨天的内容继续讲解,给我们演示了登陆界面以及事件、事件的监听者设置的讲解,稍后又演示了一个记事本项目,对API做了简单的讲解,最后又给我们讲解了一些有关多线程的编程知识。
主要有:
一、Android事件
1、事件:
表示用户在图形界面的操作的描述,通常是封装成各种类,比如:
键盘事件操作相关的类为KeyEvent、触摸屏相关的移动事件类为MotionEvent等,在后面我们将专门列出相关的事件。
2、事件源:
事件源是指事件发生的场所,通常是指各个控件,例如:
Button、EditText等控件。
3、事件处理者:
事件处理者是指接收事件对象并对其进行处理的对象,事件处理一般是一个实现某些特定接口类创建的对象。
4、publicclassTestActivityextendsActivity{
TextViewmytext=null;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/*以下是定义Button按钮*/
Buttonmybutton=(Button)findViewById(R.id.mybutton);
mytext=(TextView)findViewById(R.id.mytext);
mybutton.setOnClickListener(newclicklistener());
}
classClicklistenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewv){
switch(v.getId()){
caseR.id.mytext:
mytext.setText("你好");
}
}
}
}
二、线程
1、多线程的好处:
可以同时并行的运行多个操作程序
2、实现线程两种方式:
继承Thread类、实现Runnable接口
Threadt=newThread(newRunnable);
3、privateRunnablerun=newRunnable(){
publicvoidrun(){
if(MyAndroidActivity.this.msg!
=null){
MyAndroidActivity.this.msg.setText("HelloWorld.");
}
}
三、页面跳转
1、新建一个继承Activity的类,在功能清单AndroidManifest.xml文件中添加进上面Activity配置代码
2、打开新的Activity:
startActivity(newIntent(MainActivity.this,NewActivity.class))
3、打开新的Activity,并传递若干个参数给它
4、Intentintent=newIntent(MainActivity.this,NewActivity.class)
Bunlebundle=newBundle();//该类用作携带数据
bundle.putString("name","计算器");
bundle.putInt("age",4);
intent.putExtras(bundle);//附带上额外的数据
startActivity(intent);
在另一个Activity里面接收参数:
Bundlebundle=this.getIntent().getExtras();
Stringname=bundle.getString("name");
intage=bundle.getInt("age");
2013/9/4
小组进行商讨,最终确定我们组的项目为—Android计算器,然后经理进行
进行分工,分别有负责文档的编辑,负责项目界面的设计,负责代码的编写以及项目的测试工作等几项内容。
主要有:
一、开会
1、讨论项目主题,并确定为—计算器
2、制定整个计算器的开发流程及开发周期
3、分配各个组员任务
二、写计算器的需求分析
1、计算器的开发背景:
我们生活中的开支,大额数字或者多倍小数的计算都需要计算器的计算器
2、计算器的功能规定:
可单机按钮进行操作、通过键盘直接输入
3、计算器的故障处理要求:
软件故障、硬件故障
4、系统总体设计:
计算器界面友好、操作简单
5、系统流程和设计
6、输入模块详细设计
7、显示木块详细设计
三、熟悉Android开发
1、安装Android开发环境
2、查看Android有关的数据和视频
3、编写简单的项目
publicclassHelloAndroidextendsActivity{
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
TextViewtextView=newTextView(this);
textView.setText("Hello,Android!
");
setContentView(textView);
}
}
4、创建虚拟机
5、运行项目
四、整理计算器项目的项目开发计划
2013/9/5
经理对昨天的任务进行总结,说明项目的进展情况,并分配今天的任务。
主要有:
一、开会
1、介绍项目的进展情况
2、总结昨天的项目总体概况
3、分配今天要完成的任务
二、画计算器甘特图
1、安装Project2010
2、上网搜集Project2010的使用方法
3、观看有关的Project2010的视频
4、新建Project2010项目,命名为Android计算器
5、根据计算器项目的开发计划书画计算器甘特图
6、整个项目大概分为六个阶段
1)立项:
确定项目主题
2)需求阶段:
写开发计划书和需求分析书
3)设计阶段:
设计计算器的界面模型和开发模型
4)编码阶段:
单元编码、集成子系统、集成系统
5)测试阶段:
回归测试、修改代码
6)安装部署和检验阶段
7、画计算器甘特图
三、代码学习
1、public class _EditText extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setContentView(R.layout.edittext);
setTitle("EditText");
EditText txt = (EditText) this.findViewById(R.id.editText);
txt.setText("我可编辑");
}
}
2、导入Android’项目
3、运行项目
四、画计算器用例图
1、安装RationalRose软件
2、学习有关RationalRose的用法
3、画计算机用例图
4、
2013/9/6
一、画计算器项目流程图
1、熟悉计算机项目流程
2、计算机项目大致可分为五个流程
1)初始化界面
2)用户输入操作数一
3)用户选择元算:
四则元算、正余弦、角/弧度转换、记忆功能
4)用户输入操作数二
5)显示计算结果
3、画计算器流程图
二、画计算器类图
1、分析计算器项目共涉及多少类
2、计算器项目大致有四类
1)用户
2)操作数
3)操作方法
4)结果
3、画计算器类图
4、
三、画计算器活动图
1、学习怎样在RationalRose画活动图
2、画计算器活动图
2013/9/7
一、写计算器的测试用例
1、集成测试用例
1)四则运算:
用户进行加减乘除运算,计算器显示计算结果
2)清零功能:
通过按清零按钮C,计算器显示为零
3)+/-功能:
输入操作数,并按+/键,计算器显示结果,正数取负,负数取正
2、系统测试用例
1)功能测试:
根据产品的需求规格来测试系统的功能项
2)性能测试:
在不同的环境下,测试系统的自适应性和运行情况
3)用户界面测试:
用户界面的功能符合软件需求规约和产品说明书
3、单元测试用例
1)单元测试模块为四则运算
2)用户进行加运算
3)用户进行减运算
4)用户进行乘运算
5)用户进行除运算
二、据测试用例,对计算器进行测试
1、对计算器进行集成测试
1)用例名称:
四则运算
2)参与执行者:
用户
3)前置条件:
计算器已开启
4)主事件流:
用户输入操作数一,用户选择加减乘除元算,用户输入操作数二,计算结果,作为下一次计算的操作数一
5)后置条件:
显示计算结果
2、对计算器进行系统测试
3、对计算器进行单元测试
三、通过测试,发现有的功能不是很完善,对计算器代码进行更改
2013/9/8
一、代码更改
privateOnClickListenerlistener=newOnClickListener(){
publicvoidonClick(Viewv){
Strings=text1.getText().toString();
Buttonbtn=(Button)v;
Stringbt=btn.getText().toString();
if(btn.getId()==R.id.button_1||btn.getId()==R.id.button_0){
if(newdigital){
text1.setText(s+bt);
}
else{
text1.setText(s);
newdigital=false;
}return;
}
if(btn.getId()==R.id.button_0){
a=0;b=0;option=0;
newdigital=true;
text1.setText("0");
}
}
}
二、做项目回报PPT
1、介绍组员的角色
2、项目的开发背景:
简单操作、方便快捷、广受欢迎
3、系统的架构:
输入功能、操作方法、显示功能
4、功能简介
5、进度控制
6、界面运行
7、结束语
三、修改文档格式
一、实习目的
通过实训提高自己的对社会的认知能力,同时理论联系实际,让自己迅速适应社会,跟上IT前进的快速步伐;通过理论与实际的结合、学校与社会的沟通,进一步提高学生的思想觉悟、业务水平,尤其是观察、分析和解决问题的实际工作能力,以便培养自己成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。
其中主要包括:
1)充分理解Android软件工程师职业要求,准确把握Android软件工程师所应具备的基本素质和技能;熟练掌握Android编程语言;
2)了解移动互联网行业的业务需求、技术要求和发展状况;
3)掌握嵌入型数据库SQLite开发、网络开发、传感器开发、多媒体多发、游戏开发;熟练使用主流设计工具开展系统设计与建模工作;
4)了解软件开发企业工作规范和标准,掌握软件项目开发全过程的活动要求(立项、分析、设计、编码、测试、部署、结项等);
5)感受企业文化,体验团队合作精神,养成良好的表达、沟通与协作习惯;
6)掌握笔试、面试技巧,懂得商务礼仪,能够明确地规划自己的职业发展道路;
二、实习安排
2013/9/2至2013/9/3上午:
上课,介绍企业文化及整个实训过程和考评要求讲解,软件项目计划和配置管理,软件需求和分析设计,Android系统架构及评审RationalRose和PowerDesigner的使用。
2013/9/3下午至2013/9/8:
项目练习,全体学生分为十组,每组十人左右,每组确定一个项目主题,进行设计编码,包括需求分析阶段、分析设计阶段、编码阶段、测试阶段和项目评审阶段。
2013/9/9至2013/9/9:
项目评审及企业参观
三、实习内容
通过学习Android有关知识,编制一个Android项目,熟练使用主流设计工具开展系统设计与建模工作,感受企业文化,体验团队合作精神,养成良好的表达、沟通与协作习惯。
2013/9/2
学习企业文化及有关Android的知识,观看《九宫格游戏》、《坦克大战游戏》、《疯狂连连看游戏》、《科学计算机程序》等项目的演示,学习RationalRose和PowerDesigner的使用。
了解到当代员工所必需的职业素养:
自律、主动、诚信、专业、团结。
2013/9/3
对Android知识进一步学习,主要学习Android事件和线程。
Android线程,其中重点是消息发送和计划任务,接受消息发送和计划任务的处理是目标线程,它是通过Looper机制维护消息队列。
HandlerThread类结合了Looper的方法,所以,我们不必关心Looper。
下午,去机房,进行Android环境的安装及熟悉Android的项目运行情况,导入项目进行运行。
2013/9/4
小组进行商讨,最终确定我们组的项目为—Android计算器,然后经理进行
进行分工,分别有负责文档的编辑,负责项目界面的设计,负责代码的编写以及项目的测试工作等几项内容。
上午主要分析有关我们计算器项目使用的需求说明,下午写《计算器的需求说明书》。
2013/9/5
根据项目的开发计划,画项目的干特图和例图。
甘特图是历史悠久、应用广泛的制定进度计划的工具。
而用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。
上午主要是学习有关Project2010和RationalRose的用法。
下午主要画甘特图和用例图。
2013/9/6
根据项目进度,分析项目的流程,项目中的类及各类之间的关系,用例要求所要进行的活动,以及活动间的约束关系,画流程图、类图、活动图。
安装Visio2003,学习Visio2003的用法及怎样在RationalRose画活动图。
下午,主要画流程图、类图、活动图。
2013/9/7
项目进行到编码阶段,上午写测试用例,包括单元测试,系统测试,功能测试。
下午对项目进行测试,并把出错的地方记下来,进行代码修改。
2013/9/8
上午继续对代码进行测试,把出错的地方与编码人员进行交流,更改代码。
下午老师初检项目,并提出更改信息,对文档进行更改。
做项目汇报PPT。
2013/9/9
上午进行项目评审,每组演示各自的项目,包括项目背景,系统框架、项目的运行及功能简介。
下午进行企业参观,我们去了恒生科技园,讲解员介绍恒生科技园的该款及发展趋势。
随后,我们到园区进行参观,感受到企业氛围。
四、实习总结及体会
时间过得真快,转眼之间紧张又愉悦的八天时间转眼间就结束了。
在这次实训中,我学到了很多很多,不仅是专业上的,对编程知识的巩固,并用Android的相关知识编制属于我们自己的项目,更是培养了我们团队合作精神和沟通能力,真的非常感谢这次实训。
在这个过程中,我真正的了解到了理论与实际相结合的必要性以及独立思考的重要性。
通过这次实训,我们了解到了Android的发展与前景。
Android是现在比较流行的程序设计语言,Android在很多领域特别是网络应用方面具有着跨平台、兼容性极佳的表现。
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
在这次实训中,我们了解到了一个软件开发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 开发 报告 洛阳 理工学院