参考文档安卓开发实习周记范文word版 11页Word格式文档下载.docx
- 文档编号:17145534
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:10
- 大小:26.54KB
参考文档安卓开发实习周记范文word版 11页Word格式文档下载.docx
《参考文档安卓开发实习周记范文word版 11页Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《参考文档安卓开发实习周记范文word版 11页Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
掌握文本显示组件的继承结;
掌握文本显示组件的基本属性及操作方法。
TextView组件的主要功能是用于显示文本,实际上这种控件主要就是提供了一个标签的显示操作。
<
TextView>
组件的常用属性及对应方法。
配置文本显示框。
设置“android:
text”属性设置文字的显示风格(android:
textStyle):
正常
(normal)粗体(bold)斜体(italic)。
Android中设置文字大小的定义类型。
在Android中所有的组件可以设置大小,但是在设置大小的时候需要指定其单位,这些单位如下:
px(pixels):
像素;
dip(deviceindependentpixels):
依赖于设备的像素;
sp(scaledpixels——bestfortextsize):
带比例的像素;
pt(points):
点;
in(inches):
英尺;
mm(millimeters):
毫米。
使用样式表文件,在Android中为了方便美工对组件进行修饰,也可以使用一些样
式文件对组件显示进行控制,用户只需要按照如下的xml文件格式即可定义组件的显示样式。
TextView作为文本组件主要的功能是显示文本数据;
所有的组件可以直接通过一个样式表文件进行属性的配置。
第二周
本周张栋老师又启动了一个新的项目——电子名片管理系统。
该项目包括三个部分:
个人APP、企业版APP和管理平台。
该项目的开发背景是:
名片是商务交往的纽带。
而制作名片的核心目的就是自我展示和业务推介,通过名片建立自己的人脉圈。
传统的纸质名片不易传递,存储和管理。
在商务场合中很多时候需要给多名客户分发名片,而传统的纸质名片需要准备一定的数量和一定的时间进行分发。
同时分发和接受的名片并不易存储,极易丢失。
大量的纸质名片很难对其进行管理,例如很难找到某张名片。
为了达成以下几个目标决定开发该应用。
1.名片交换方便快捷:
1对1名片交换更加方便
2.多人交换一步即成:
多人之间的名片交换更加方便,使用应用一
键可以达到目的
3.名片信息清晰易得:
对于用户的信息可以进行实时的维护,也可
订制自己的名片信息
4.云人脉圈智能可控:
名片信息可同步到云端,保留信息
项目一启动,我们就开始进行需求分析,然后开始设计和制作原型,在大家熬夜奋战的情况下,我们终于完成了个人APP、企业APP和平台的原型制作。
在完成任务的同时,我还继续深入学习Android技术,各自开始编写一些简单的Android应用程序。
实现简单的界面布局功能。
学习android中各种基本组件的使用
掌握RadioGroup类和RadioButton类的使用,单选钮在开发中提供了一种多选一的操作模式,也是经常见到的一种组件,例如:
在选择文件编码的时候只能从多种编码中选择一种,或者是选择性别的时候只能从“男”或“女”之中选择一个,而在Android中可以使用RadioGroup来定义单选钮组件。
RadioGroup类的常用操作方法。
RadioGroup提供的只是一个单选钮的容器,只有在此容器之中配置多个按钮组件之后才可以使用,而要想设置单选钮的内容,则需要使用RadioButton类。
掌握RadioGroup类相当于定义了一个单选钮的容器;
RadioButton类用于定义单选钮中的内容。
掌握CheckBox组件的使用。
CheckBox的主要功能是完成复选框的操作,在用户输入信息的时候,可以一次性选择多个内容,例如:
用户在选择个人兴趣爱好的时候一定会存在多个,则此时就直接使用CheckBox即可完成功能。
CheckBox类的常用方法。
通过程序操作复选框组件。
CheckBox组件用于实现复
选框的功能。
掌握下拉列表Spinner的使用;
可以通过程序配置Spinner显示内容;
可以通过配置文件配置Spinner显示内容。
下拉列表框也是一种常见的图形组件,它可以为用户提供列表的选则方式,与复选框或单选钮相比还可以节省手机的屏幕空间,在Android中可以使用android.widget.Spinner类实现。
Spinner类的常用方法。
配置列表项:
在Android中,可以直接在main.xml文件中定义“<
Spinner>
”节点,但是在定义此元素的时候却不能直接设置其显示的列表项,关于下拉列表框中的列表项有以下两种方式进行配置:
方式一:
直接通过资源文件配置;
方式二:
通过android.widget.ArrayAdapter类读取资源文件或者是指定具体设置的数据。
其中,ArrayAdapter类的功能:
有两个主要功能:
读取资源文件中定义的列表项或者是通过List集合设置列表项。
值得注意的是,对于下拉列表项的显示风格一般都会将其设置为:
“android.R.layout.simple_spinner_item”,下面分别在values文件夹之中定义两个资源文件,用于保存所需要的下拉列表信息。
使用Spinner可以完成下拉列表框的显示功能;
下拉列表框的显示内容可以通过配置文件或程序进行填充。
掌握时间选择器的使用;
可以通过程序配置显示的时间。
在Android中使用
TimePicker(时间选择器),可以进行时间的快速调整。
TimePicker的常用方法。
掌握日期选择器的配置及使用。
与时间选择器对应的还有一个日期选择器
(DatePicker),可以完成年、月、日的设置。
DatePicker类的常用方法。
日期选择器可以进行日期的配置;
可以通过设置配置不同的显示风格。
线型布局管理器的配置;
通过Activity程序进行线型布局。
布局管理器分类:
在Android中一共有以下四种布局管理器:
LinearLayout:
线性布局管理器(默认),分为水平和垂直两种,只能进行单行布局;
FrameLayout:
所有的组件放在左上角,一个(来自:
WwW.:
安卓开发实习周记)覆盖一个;
TableLayout:
任意行和列的表格布局管理器,其中TableRow代表一行,可以向行中增加组件;
RelativeLayout:
相对布局管理器,更具最近一个视图组件,或是顶层父组件来确定下一个组件的位置。
废除的布局管理器:
在Android2.3.3版本之前还存在着一种绝对布局管理器
(AbsoluteLayout),此布局管理器使用X、Y轴坐标的形式排列组件。
线型布局有两种排列方式:
水平和垂直可以通过LinearLayout类定义线型布局,而布局参数可以使用LinearLayout.LayoutParams类完成。
FrameLayout布局(帧布局)就是在屏幕上开辟一个区域以填充所有的组件,但是使用FrameLayout布局会将所有的组件都放在屏幕的左上角,而且所有的组件可以层叠进行显示。
框架布局是在一个指定的区域内使用组件进行填充;
可以使用FrameLayout和
FrameLayout.LayoutParams类手工配置布局。
掌握表格布局管理器的基本使用;
掌握TableLayout和TableRow的操作关系;
掌握表格布局管理器中常见属性的作用。
TableLayout是采用表格的形式对控件的布局进行管理的,在TableLayout布局管理器之中,要使用TableRow进行表格行的控制,之后所有的组件要在TableRow中增加。
表格布局管理器使用TableRow控制表格行;
表格布局的几个属性:
定义伸缩列:
android:
shrinkColumns="
3"
设置不显示列:
collapseColumns="
0,3"
增加背景图
片:
background="
@drawable/mldn_logo"
表格布局也可以使用
Activity程序动态生成。
掌握相对布局管理器的主要特点及使用;
可以使用Activity程序动态增加组件。
相对布局管理器指的是参考某一其他控件进行摆放,可以通过控制,将组件摆放在一个指定参考组件的上、下、左、右等位置,
这些可以直接通过各个组件提供的属性完成。
相对布局管理器是以一个组件进行定位的参考;
使用RelativeLayout和RelativeLayout.LayoutParams类可以在Activity程序中动态配置布局管理器。
Android事件处理的学习。
了解事件处理的作用,了解常用的事件及相关处理接口。
Android程序的开发主要是借助于Java语言,其事件的处理流程也是参考了java中的事件处理操作,在Java之中,如果要想进行图形界面的事件处理则首先必须有一个事件源,而造成事件源产生可以有多种形式,例如:
单击按钮或者是修改下拉列表选项,之后根据此事件源找到相应的事件处理操作类,对事件进行处理。
事件处理的核心在于如下操作:
注册监听程序;
根据指定的事件编写指定的处理程序;
在事件处理类之中完成事件的处理操作。
单击事件、单选按钮与OnCheckedChangeListener、下拉列表框与OnItemSelectedListener、监听日期与时间的改变、焦点事件、长按事件、键盘事件、触摸事件。
掌握滚动视图:
ScrollView,列表显示:
ListView,对话框:
Dialog,随笔提示文本:
AutoCompleteTextView,拖动条:
SeekBar,评分组件:
RatingBar,信息提示框:
Toast,图片切换:
ImageSwitcher,文本切换:
TextSwitcher,拖拉图片:
Gallery,网格视图:
GridView,时钟组件:
AnalogClock与DigitalClock,计时器:
Chronometer,标签:
TabHost,菜单:
Menu,隐式抽屉组件:
SlidingDrawer,缩放控制:
ZoomControls,弹出窗口:
PopupWindow,树型组件:
ExpandableListView。
第三周
本周开始编写电子名片管理系统项目规格说明书。
接着又和同学们一起分析和设计数据库。
在这期间,我不仅学会了分析问题、撰写文档的能力,还学会了许多以前没有使用过得软件。
当然在确保完成任务的同时,我还不忘继续学习Android开发技术。
本周还学习了Android提供的数据的存储方式:
在Android中一共提供了五种数据存储:
SharedPreferences存储;
文件存储;
SQLite数据库存储;
ContentProvider存储;
网络存储。
SharedPreferences提供了一些基础的信息保存功能,所有的信息都是按照“key=value”的形式进行保存的,但是android.content.SharedPreferences接口所保存的信息只能是一些基本的数据类型,例如:
字符串、整型、布尔型等。
SharedPreferences可以实现简单的数据存储功能实现,可以利用super.getSharedPreferences()方法取得实例。
使用SharedPreferences可以方便的完成数据的存储功能,但是其只能保存一些很简单的数据,如果想存储更多类型的数据,则可以使用文件的存储操作,如果要想操作文件,则需要Activity类的支持。
利用IO流操作文件,考虑到用户要自定义保存目录,以及在“sdcard”上操作,所以本程序不太适合直接使用Activity类提供的文件操作方法,用户可以直接使用最传统的IO流完成。
使用IO流完成了文件的保存,但是却存在一个最大的问题,因为现在文件的路径采用的是硬编码的方式设置,那么就有可能因为sdcard不存在而出现错误,即:
最好的做法就是判断sdcard是否存在,如果存在则保存,如果不存在则提示用
户“sdcard”不存在,无法保存,而要想完成这个判断的功能就必须通过android.os.Environment类取得目录的信息。
DOM操作:
使用文件保存数据固然很方便,但是如果现在数据较多的话,则管理起来就不方便了,所以在使用文件保存时,也往往会采用XML文件形式进行数据的保存,而一旦使用XML操作,那么就肯定需要对XML文件进行解析,而DOM解析就是最常用的一种。
SAX操作:
虽然DOM操作使用广泛,但是并不适合于使用DOM进行大数据文件的操作,而这个时候就可以使用SAX解析方式进行XML文件的读取。
使用XMLPull解析:
DOM和SAX在使用上各有特点,但是使用起来也都很不方便,而开发过JavaEE程序的读者应该很清楚,在日常的工作之中往往会用多种开源组件(JDOM、DOM4J)来完成XML解析的操作,但是在Android操作系统之中又提供了一种pull解析的方式。
在Android中如果要完成PULL解析处理需要org.xmlpull.v1.XmlPullParserFactory类和org.xmlpull.v1.XmlPullParser接口的支持,XmlPullParserFactory类的主要功能是可以通过里面提供的newPullParser()方法取得一个XmlPullParser接口的对象。
以上的程序使用了Pull解析方式完成了XML文档的解析操作,但是Android中的Pull解析方式也可以同样完成XML文档的输出功能,而这个时候就可以利用org.xmlpull.v1.XmlSerializer接口完成,此接口主要功能是可以通过程序控制XML文件中的元素、属性、文字的关系结构。
JSON数据解析:
JSON采用完全独立于语言平台的文本格式(这一点与XML作用类似),使用JSON可以将对象中表示的一组数据转换为字符串,然后可以在各个应用程序之间传递这些字符串,或者在异步系统中进行服务器和客户端之间的数据传递。
JSON操作本身有其自己的数据格式,这些数据格式,用户可以自己使用字符串拼凑,也可以直接利用JSON给出的操作类完成,而在Android系统之中,JSON操作所需要的数据包已经默认集成了,所以用户不再需要任何导包的操作,即可进行开发使用文件存储可以保存更加丰富的数据;
在Android之中可以使用XML的DOM和SAX解析方式进行文件操作;
在Android之中提供了PULL解析用于完成XML解析;
JSON可以进行简便的信息传送,性能更高;
可以将要读取的文件配置到项目的res文件目录之中,这样可以采用Resource直接进行资源文件的读取。
了解SQLite数据库的基本作用;
掌握数据库操作辅助类:
SQLiteDatabase的使用;
可以使用命令操作SQLite数据库;
可以完成数据库的CRUD操作;
掌握数据库查询及Cursor接口的使用。
SQLite是一个轻量级的、嵌入式的、关系型数据库,是遵守ACID的关联式数据库管理系统,其主要的是针对于嵌入式设备专门设计的数据库,由于其本身占用的存储空间较小,所以目前已经在Android操作系统之中广泛的使用着,而且在SQLite数据库之中可以方便的使用SQL语句实现数据的增加、修改、删除、查询等操作,最新版本的SQLite数据库为SQLite
3。
在Android系统之中,一个android.database.sqlite.SQLiteDatabase类的实例都代表了一个SQLite数据库的操作,通过SQLiteDatabase类可以执行SQL语句,以完成对数据表的增加、修改、删除、查询等操作,在此类之中定义了基本的数据库执行SQL语句的操作方法以及一些操作的模式常量。
SQLite数据库是一个专门用于嵌入式设备的数据库;
SQLite支持SQL语句的操作;
可以使用SQLiteOpenHelper类完成数据库的操作;
所有的查询数据使用Cursor进行接收。
在Android当中,每一个应用程序的数据都是采用私有的形式进行操作的,
篇二:
软件开发实习周记10篇
实训总结
实训目的:
实训单位和工作岗位:
实训的内容:
从事工作情况
实训的心得体会:
“天下英雄皆我辈,一入江湖立马催。
”从学校到社会的大环境的转变,身边接触的人也完全换了角色,老师变成老板,同学变成同事,相处之道完全不同。
在这巨大的转变中,我们可能彷徨,迷茫,无法马上适应新的环境,但在同事的帮助和自己摸索的情况下,我还是完成了这次实训。
但我发现,以我们的经验,不学到一定的深度和广度是难以在实际工作中应付自如的。
因此反映出学习的还不够,缺点疏漏。
需在加以刻苦钻研及学习,不断开拓视野,增强自己的实践操作技能,我们也许看不惯企业之间残酷的竞争,无法忍受同事之间漠不关心的眼神和言语。
很多时候觉得自己没有受到领导重用,所干的只是一些无关重要的杂活,自己的提议或工作不能得到老板的肯定。
“在大学里学的不是知识,而是一种叫做自学的能力”。
参加工作后才能深刻体会这句话的含义。
课本上学的理论知识用到的很少。
在这个信息爆炸的时代,知识更新太快,靠原有的一点知识肯定是不行的。
我们必须在工作中勤于动手慢慢琢磨,不断学习不断积累。
遇到不懂的地方,自己先想
方设法解决,实在不行可以虚心请教他人,而没有自学能力的人迟早要被企业和社会所淘汰。
所以我们还要继续学习,不断提升理论素养。
这次实训也让我深刻体会到了团结合作的重要性,团结合作是一个优秀的开发团队的基本素质,是一个项目成功的关键。
虽然我们团队只有几个人,而且时间也很短,我们最终还是顺利的完成了任务,靠的是什么?
不仅是努力,还有团结。
整个项目的过程中我们都很讲究团结合作,大家有明确的分工,遇到问题都能互相帮助解决。
问题的及时解决保证了项目按计划进展。
我们之间也发生过很多争执,很多时候都是争得面红耳赤,在工作中我认为这是一种好的现象,在争执中我们得到了正确的认识,也相互之间学到了不少东西。
软件开发不是一个人的工作,而是一个团队的工作,所以工作中一定要考虑整体,不能一意孤行。
当然,这个月的实训也给了我不少经验和教训。
首先,做项目的每一个环节都应该谨慎。
任何一个环节都不能马虎,敷衍了事。
一个环节的失误可能会导致后面的环节都做不好,甚至全盘返工。
成功的需求分析才能有成功的概要设计,成功地概要设计才能进行成功的详细设计,成功地详细设计是保证编码思路清晰和代码BUG少的前提。
然而我在这一点上注意的不够。
开始以为只要把产品做出来就OK了,其他都不重要。
所以开始需求文档和设计文档都做得很
马虎,编码开始的时候就有点理不清思路了,脑子里面很乱,不断地出现问题,到编码到一半的时候做不下去了。
最后只能重新根据需求做设计,然后根据设计重头开始编码。
这样浪费了我很多时间,感觉到起初莽撞的开始编码吃了不少力,而且还没有什么结果。
设计做好之后编码就轻松多了,从头到尾思路很清晰,做起来效率也很高。
这次惨痛的教训我想足以让我在以后的工作牢记在心了。
Coding不是软件开发的全部,只是一个部分,所有的文档也一样重要。
我想起在学校里面学的软件的生命,占主要的并不是编码,而是维护,没有详细的,正确的文档资料是没有办法维护的。
其次,文档要尽量详细,代码命名要规范。
就像前面说的,软件开发是一个团队的工作,也许自己心里很清楚,但是合作的同事他们并不清楚你是怎么想的,详细地文档资料才能保证整个项目组有共同的认识。
比如需求吧,如果项目组成员各自对需求的某些地方理解不一致很可能做到最后发生很大的分歧。
规范代码的命名也是一个不能忽视的问题,一方面可能在整合的时候出现问题,哪怕只是文件命名的大小写(这一点我在这次项目中犯过,教训很深刻,其实就是大小写的问题,我以为没什么关系,后来证明关系大着呢!
)。
另一方面命名不规范代码的可读性就很差,这会给测试带来很大的不方便。
我们这次由于时间关系,只是进行了一下小组内代码走查,我发现由于大家命名不规范,各人一种命名
的风格,导致阅读很困难。
还有一点认识就是我觉得设计原型真的是很重要的一个环节。
一方面它能把用户的需求实体化,帮助我们审查需求说明书。
另一方面,在需求阶段把原型提供给客户可以问题得到及时的反馈,避免了在项目结束之后,客户告诉我们说那不是他想要的那样。
再者,原型为我们设计编码提供了很好的参考,提高了效率。
随着项目的结束,我的实训也结束了。
通过制作这个网站让我由浅至深、一步一步的了解了原来制作一个网站要走得程序很多。
每个人除了要有一定的技术之外,更重要的是团队的合作,在一个团队里只有我们团结一致,那么所有的困难都会迎刃而解,因为一个人的力量是有限的,而一个团队的力量是无穷的。
在信息时代,学习是不断地汲取新信息,获得事业进步的动力。
作为一名年轻同志更应该把学习作为保持工作积极性的重要途径。
走上工作岗位后,我积极响应单位号召,结合工作实际,不断学习理论、业务知识和社会知识,用先进的理论武装头脑,用精良的业务知识提升能力,以广博的社会知识拓展视野。
我们还要努力实践,自觉进行角色转化。
“理论是灰色的,生活之树常青”,只有将理论付诸于实践才能实现理论自身的价值,也只有将理论付诸于实践才能使理论得以检验。
同
样,一个人的价值也是通过实践活动来实现的,也只有通过实践才能锻炼人的品质,彰现人的意志。
总的来说,这次实习真的是让我受益匪浅。
不光是学到很多技术,而且加深了对软件开发的理解,从个人发展来看,我觉得从认识上让我完成了从学习到工作的角色转变。
提高了动手能力,得到了很多工作中的经验教训。
更重要的是让我体会到这个职业的乐趣,让我喜欢上了这个职业。
“千里之行,始于足下”,这是一个短暂而又充实的实训,我认为对我走向社会起到了一个桥梁的作用,过渡的作用,是人生的一段重要的经历,也是一个重要步骤,对将
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考文档安卓开发实习周记范文word版 11页 参考 文档 开发 实习 范文 word 11