毕业设计经验小结.docx
- 文档编号:4777291
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:16
- 大小:243.24KB
毕业设计经验小结.docx
《毕业设计经验小结.docx》由会员分享,可在线阅读,更多相关《毕业设计经验小结.docx(16页珍藏版)》请在冰豆网上搜索。
毕业设计经验小结
毕业设计经验小结
2012/7/23-25高敏
一、毕业设计概述
1、意义
毕业设计的意义是什么,用我自己的话来描述,就是:
四年学习成果的检验,大学期间的最后一战。
课堂不懂,作业不会,考前突击,百战不殆,这是大学生的通病。
知识的积累是一个过程,不要用时方恨少,最后关头只能靠别人。
在毕业设计的时候,我就深深的认识到了自己知识的欠缺:
流程图怎么画,忘了;
系统架构怎么描述,忘了;
代码错误怎么修改,忘了;
数据库怎么列表,忘了;
……
如果想要独立完成毕业设计,那就要最后半年的时间加班加点补上四年所学,确实很辛苦。
但是因为认真的对待了最后一战,这些知识终究都是我的了。
要这些软件开发知识有什么用?
没多大用处,我自己本人以后不太可能是软件工程师。
可是我却从这个过程中学会了一门重要的生存技能:
知识获取。
毕业设计其实说白了就是把你逼上学习的绝境。
哪怕论文是导师给的,软件是网上down的,答辩也是逃不掉的,所以或多或少都得学。
这个过程包括了从网络和书籍中查找资料、包括了Word和PPT的操作、包括了以前所学的很多专业知识、包括了软件开发的基本技能……毕业设计包括了太多太多平时的积累,也包括了许多平时没有讲过的知识。
总之,认真对待吧,大学最后一战,要打的漂亮~
2、安排
毕业设计一个星期就可以突击出来,但如果安排好,认真对待,总时间也不会短。
我的毕业设计时间拉得有点长,从2011年11月开始,到2012年6月25日结束,中间有不少日子是完全没有接触毕设的。
如果专注于毕设,按照安排一步步落实下来,两个月甚至更短时间就可以完成所有任务。
下面以我的毕设课题为例,简要介绍毕业设计安排。
(1)毕设题目拟定,最多一天。
题目是导师定的,《基于Android平台的学生日程管理系统》。
我自己没这个水平,当时我的水平,连Android开发软件是什么都不知道。
【Android手机软件的开发,对我这样大学四年没接触过Java语言、没有学过Eclipse的人来说,比较困难。
学生日程管理软件在手机软件中相对容易,也比较实用,所以选择了这个课题。
其实一开始导师问过我想要做C语言应用软件还是Android软件,无知的我果断的选了Android软件,只因为当时我用的HTCG7,我天真的想着开发了软件可以自己用。
。
。
结果,手机软件要用Java语言!
我完全没学过!
!
傻了,没法改了,因为教研室已经报上去了…而且,刚毕业,我的Android手机就坏了…..】
(2)知识初步掌握,一周到一个月,取决于毕设总时间长度。
学习Eclipse的使用、Java语言、Android开发基础知识。
这些都是前期最为重要的准备工作。
【毕设前期我看了大量Android开发方面的学术论文,这些论文一部分是教员给的,一部分是我从网上找的。
不要小看网络资源,XX一下,可以找到许多论文网站,从论文网站中进行筛选,往往可以找到一些专业期刊中的好文。
学校的图书馆里的每一本Android开发书籍,我都找到了翻看过了,甚至当时学长打电话问我Android书在哪个架子上,我可以随口背出前几位书号,现在依稀记得是T什么2什么9…
Eclipse不需要专门找书,Java语言也不需要非常熟悉,毕竟计算机语言也是相通的,C和Java之间也是有联系的。
广泛看书是为熟悉敌人,才好在接下来动刀子。
而短时间内提高效率掌握开发知识的最好方法,就是把一本Android书中的某一个典型事例吃透。
】
(3)软件开发,半个月到一个月,全天候工作。
了解手中已有的几个软件的特点、架构、控件,筛选出合适自己课题的软件,进行修改。
留有用的框架,去掉不需要的功能,添加需要的功能。
【极短的时间,从无到有,想要开发出一个完善的软件非常困难。
Android是一个开放平台,允许用户在现有软件基础上进行改进,所以我选择了从网上找基本软件进行修改,完成自己的作品。
有源代码的软件不少,要选择一个作为基本软件,首先就要完全看懂“源代码”。
这可不是看电影,一点都不好玩,我研究了半个月,才理清每个软件的功能。
然后就要动刀子了。
软件代码一层层打开,去掉该去掉的,改正错误的,添加需要的。
简单的说就一句话,选软件,动刀子。
】
(4)论文撰写,半个月,全天候熬夜工作。
写论文是个翻来覆去的活儿,非常磨人。
想要答辩不出岔子,论文一定要自己写。
想得校优省优,那就熬夜吧!
【只要导师对论文说一个“不”,就啥也别说了回去默默改吧。
】
(5)答辩,3天时间准备,妥妥的。
答辩不是这么简单,因为还有PPT。
有了PPT,还需要讲稿。
万无一失了?
当然不是,因为答辩要回答各种刁钻的问题。
【制作PPT,准备讲稿,然后落落大方的讲出来,注意,不是读出来,然后流利回答完所有评委的问题,才算完美落幕。
】
二、态度决定成败
1、端正态度
毕业设计,其实应付过去也就这么回事儿,导师给个文章,网上down个软件,论文复制粘贴就是答辩PPT,不信评委不让毕业。
可是如果想打好这仗,想要给四年完美收官,就先端正态度吧。
别人玩游戏,别人打牌,别人煲电话粥,都和你无关。
毕业设计一个半月看似多,其实根本不够,开发软件加论文,满打满算也得两个月。
所以吃苦是必须的,态度是关键的。
两条路,一条是靠人,一条是靠己,我选了第二条,所以再累也不会有怨言。
这就是我的态度。
2、锲而不舍
毕业设计有时候真的要咬牙坚持。
软件开发中,一个单词写错,可能会报上百个错误,满屏的红叉,要的是一个个排除,耐心寻找;论文一万五千字,用了五十多个参考文献,撰写过程中查找的文献上百个;PPT制作那天是端午假期第一天,我在办公室一白天没出门,连吃饭都在办公桌上……
没日没夜的工作,这样的毕业生活其实很充实,目标在前方,再苦再累都要坚持。
3、百折不挠
成功从来不是一帆风顺的。
我的软件做了五遍,前四遍耗费了大量时间精力,乱码告终或是完全打不开,只能重新来过。
导师说论文结构不好,我八千字都写完了,一样删了从头开始。
其实遇到的这些困难一定会有办法解决,只要能上网查、找书、找师兄、找教员、找导师,这都不是困难。
最大的困难,是在困难面前放弃努力。
三、软件设计
1、思路
在思路方面,一定要多和导师交流,避免出现软件开发工作过半了才意识到路走不通。
还是以我的课题为例。
软件的目的是实用,所以一定要想方设法让软件贴近用户需要。
【日程管理的核心在于对特定日期特定事情的安排,机器可提供的仅仅是代替曾经难于携带和记录的随身日历。
因此日程管理的应用需要与用户有良好的交互性,符合用户使用习惯,方便用户操作。
手机作为移动终端是日程管理的重要平台,目前Android平台中的日程管理大致分为两类:
一类是基于日历的日程管理,近似于模仿原始的随身日历式的日程管理模式,操作和功能都比较机械化。
另一类将事件分类列出,不方便查看日历,但是灵活度较强,可随时修改。
学生课程繁多、难于记忆,需要经常查询,在课程调整后也需要及时修改。
纸质课程表不仅不易携带,也不易于修改。
而Android手机中自带的日历形式日程管理软件,需要每天提前录入日程安排,不便于每周课程相同的学生使用。
针对当代学生的日程管理需求,本设计选用第二类日程管理方法,将课程和地点按星期列表显示。
学生的课程每周相同,所以列出一周每天的日程,不同时段的课程及地点可随时修改,并可计算开学天数,方便查询。
因为Android软件的美观度要求较高,在设置中还添加了背景更换功能。
本设计为学生查询课程带来了便利,为学生高效的生活提供了帮助。
】
2、知识储备
Java语言需要大概了解,不能一窍不通,也不需要七窍全通,没那个时间。
Eclipse是Android开发最关键的软件,其他诸如ADT、SDK等插件都需要安装在Eclipse上进行Android开发。
这个软件的参考书也有不少,但是Android开发用不上。
关于Android的各类书籍非常多,刚开始时需要一本入门书籍,介绍Android的家世背景、身高体重,觉得一本不全面可以多借两本穿插着看。
然后需要一本有典型事例的开发书,自己对着书用Eclipse软件跟着一步步做出简单的Android软件,不要吝啬这些时间,这个过程既可以掌握基本开发过程,又可以提高软件开发信心和兴趣。
软件开发的知识储备还来自于大量论文。
许多关于Android开发的学术论文都对自己的开发很有用,注意收集和研读,了解别人的开发思路,在论文撰写中也有用。
3、开发环境搭建
Eclipse开发环境的搭建在网上有大量教程,大多是博客主自己的经验,有截图,非常方便初学者。
我就是从一篇篇博文中学会了如何搭建环境,如何解决安装中遇到的问题。
【Android开发环境搭建步骤:
一、相关下载
首先,从互联网上下载JDK,Eclipse,SDK和ADT。
网址如下:
1.下载JDK:
2.下载Eclipse:
下载地址为http:
//www.eclipse.org/,本设计中使用的是Helios版本。
3.下载SDK:
下载地址为
4.下载ADT:
本设计中使用的ADT14.0.0,
下载地址为
二、安装
1.JDK安装:
将下载的软件打开,按照安装提示一步一步完成安装。
安装完成后,需要配置环境变量,配置环境变量的步骤如下:
(1)右键单击“我的电脑”,在菜单中选择“属性”,选择“高级”->“环境变量”->“系统变量”。
(2)复制安装JDK的目录路径,输入到“JAVA_HOME值”。
本设计中JDK安装路径为“C:
\ProgramFiles\Java\jdk1.6.0_12”。
(3)输入CLASSPATH值:
.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\bin;
(4)在Path的开始追加“%JAVA_HOME%\bin;”
2.Eclipse安装:
解压后安装即可。
本设计中,为方便编程,安装了一个中文包:
BabelLanguagePack-eclipse-zh_3.7.0.v20111128043401。
中文包解压后直接合并到Eclipse的文件夹中,重启Eclipse。
3.AndroidSDK安装:
运行SDKSetup.exe,点击AvailablePackages。
如果没有出现可安装的包,点击Settings,选中Misc中的“Forcehttps:
//...”,再点击AvailablePackages。
选择希望安装的SDK及其文档或者其它包,点击InstallationSelected、AcceptAll、InstallAccepted,开始下载安装所选包。
在用户变量中新建PATH值为AndroidSDK中的tools绝对路径,本设计为:
E:
\android-sdk_r06-windows-2.2\android-sdk-windows\tools。
之后,重新启动计算机,进入cmd命令窗口,检查SDK是否安装成功。
4.ADT安装:
打开EclipseIDE,进行ADT安装:
(1)选择菜单中的Help->InstallNewSoftware。
(2)点击Add...按钮,弹出对话框,要求输入Name和Location。
Name可以随便取,Location输入http:
//dl-
(3)确定返回后,在workwith后的下拉列表中选择刚才添加的ADT,下面显示DeveloperTools,展开后出现AndroidDDMS和AndroidDevelopmentTool,勾选。
然后按提示一步一步点击next。
(4)完成之后,选择Window->Preferences...,在左边的面板选择Android,然后在右侧点击Browse...,并选中SDK路径,本设计中为:
E:
\android-sdk_r06-windows-2.2\android-sdk-windows。
(5)点击Apply->OK。
配置完成。
5.创建AVD:
为使Android应用程序可以在模拟器上运行,必须创建AVD:
(1)在Eclipse中选择Windows->AndroidSDKandAVDManager。
(2)点击左侧面板的VirtualDevices,在右侧点击New。
(3)填入Name,选择Target的API,SDCard大小256MB,Skin随意,Hardware保持默认值。
(4)点击CreateAVD,即可完成创建AVD。
通过以上步骤完成对Android平台开发环境的搭建,之后便可使用Eclipse开发Android应用。
】
4、基础软件选择
毕业设计短时间内无法完成高水平软件,可以改编一些基础软件“为我所用”。
Android平台是开放的,方便开发者在前人的成果上更上一层楼,所以网络上部分开放了源代码的软件都可以用来当做基础软件。
针对自己的课题方向,我从下载的众多软件中选择了“游鱼课表”。
选择的过程大致可以分为两步,首先在手机上打开软件实际操作,然后在Eclipse中打开软件代码检查。
软件不美观没关系,可以自己修改,但是架构不好,就很难更改了。
“游课表”软件在Eclipse中打开后发现存在不少警告,而且很多功能只完成了部分,许多控件有.java文件却没能实现。
但我还是选择了这个软件,只因为它符合我的思路:
清晰的表格界面,方便用户进行数据修改。
你一开始的思路是什么,通过改进这个基础软件,短时间内能否达到目标,是必须要考虑的。
5、软件大换血
想要软件“为我所用”,就要大换血。
说是换血,其实就是代码的删除和添加。
以我的课题为例,原软件存在不少错误“警告”,但是存在的警告不要先改,要先改框架,从大处入手,不要舍本逐末。
改了菜单项,删掉一些没用的控件,我开始对照网上大量博客里的教程自己琢磨着添加控件。
这个过程很“纠结”,因为很容易就出现上百个错误,撤销都没用,所以一定要备份,我吃过不止一次亏,都是眼泪啊。
换血过程就是和Eclipse与Java打交道的过程。
(1)Eclipse软件与平时用的C语言开发软件很类似,并不难,下面借用我论文中的一段进行描述:
【图4-1为使用Eclipse开发学生日程管理软件时的包资源管理器截图:
图4-1包资源管理器截图
src文件夹包含了项目的所有包及源文件(.java),学生日程管理软件项目只有一个包:
net.iyouyu.schedule。
res文件夹包含了项目中的所有资源,比如:
程序图标(drawable)、布局文件(layout)、常量(values)等。
gen文件夹中的R.java是在建立项目时自动生成的,是定义该项目所有资源的索引文件。
R.java不能被手动编辑,所以当项目中加入了新的资源时,只需要刷新一下该项目,R.java文件便自动生成了所有资源的索引。
AndroidManfest.xml文件则包含了该项目中所使用的Activity、Service、Receiver。
】
(2)Java语言,有C语言的基础学起来比较快,但在短期内精通并不容易,最好是手头有相关书籍,方便查找相关指令怎么写,在反复调试后选择最佳的。
网络上有很多教程,可以大大减少编写时耗。
比如我需要新建一个菜单,就可以在网上搜索一些范例指令。
找到合适的,进行反复修改调试,得到最终的指令。
下面的代码就是网上找到后修改的,很“合身”,用时也不会太多。
【创建optionsmenu,这个函数只会在menu第一次显示时调用。
在main.java里,optionsmenu的关键代码如下:
publicbooleanonCreateOptionsMenu(Menumenu){
MenuInflaterinflater=getMenuInflater();
inflater.inflate(R.menu.option_menu,menu);
returntrue;
}
@Override
publicbooleanonOptionsItemSelected(MenuItemitem)
{
……
returnsuper.onOptionsItemSelected(item);
}】
记得要标明资料出处哦。
【[25]贺丹丹,施展.基于Android的VoIP系统的设计与实现[M].2011(3)
[26]Android应用之个人应用软件开发.
四、论文撰写
网络上有一大堆的资料介绍毕业论文怎么写,最好多查阅一些。
比如下面就介绍了什么是毕业论文。
【说它是论文,就意味着它不同于平时的读后感之类,自己有什么感性的认识记下来。
毕业论文具有学术性,所谓的学术性就是说当你提出自己的一个观点的时候即立论的时候,你必须有自己充分的理据加以证实,使得你的立论能够站住脚。
不光能够站住脚,而且我们要求你的理论要对社会或者说对你的学科要有一定的贡献。
为什么要在毕业之前要求学生一定要写一篇毕业论文呢?
主要是要让学生总结一下在校四年来的学习成果。
学校方面通过考察学生的毕业论文,检查学生在综合运用所学知识解决实际问题的能力怎么样。
一个是综合运用所学知识,一个是解决实际问题的能力,这是两个要点。
所以一定不要小看毕业论文,选个题,写一写就行了。
真正动手开始写了以后,就会感觉到自己通过这篇论文的写作梳理了一下自己所学的知识,这是一个很好的锻炼。
只要是认真去撰写论文的同学,他最后的体会就是如果我没有写这篇论文就可能不知道自己的知识掌握了多少,能力在什么水平上。
因为各门课的考试,有的时候是通过背诵参加闭卷考试的。
但是这篇论文是开放的,它不用你去背诵。
主要看你的选题能力怎么样,是不是能够结合社会实践,能够选一个社会需要的论题。
这就看你的社会敏锐性怎么样了。
这也是一种考察,从选题上来讲,这就是一种能力的考察,这篇论文写出来有没有价值,有什么样的价值,价值的深刻性、新颖性怎么样等等。
】
我只从我的角度简单介绍一下我的论文撰写经验和教训。
1、思路
论文也是文章,也和写作一样有清晰的思路和框架,不然很容易不知所云。
要写的有条理,就一定要先想清楚。
这之前从没写过论文的我,一开始没有一个明晰的思路,东拼西凑到处找材料,堆积起来怎么看都不像一篇文章。
导师给我讲了一下章节可以怎么安排,我就大体明白了(遇到困难一定要请教导师,他们丰富的经验会对你大有帮助)。
毕业设计论文其实就是介绍你在毕业设计工作中做了什么,把你的工作记录下来,让别人看到你的工作。
别人可能不懂的知识点,在论文中要介绍。
别人可能质疑的问题,在论文中要写明白。
材料只是血肉,没有一个骨架,怎么都不可能写出鲜活的文章。
有了大体的想法,就开始定骨架吧。
写作过程中随时都可能会有新的思路,大体思路定了就好。
2、骨架
论文撰写过程中我查看了众多的毕业设计、学术论文,包括各院校各专业的。
只要设计软件开发,其实都这么回事:
课题背景和意义,开发平台,设计,实现,总结展望。
各种各样的框架,有的是把设计实现写到一起了,有的是分开写了,有的不着重平台而是着重语言,有的是着重需求分析,本质还是一样的。
这么多框架没有最好,只有最合适,找一个合适自己毕设的,仔细分析别人的思路和章节划分,然后照葫芦画瓢就好了。
但是专业人士也告诉过我,专业的Android开发要从Activit角度立骨架。
没关系,这是学士论文,这个框架是大部分论文通用的,Android一样可以用。
我的水平如此,没必要好高骛远。
从这个框架入手,清晰明了,短时间内写出来绝对没问题。
我的论文章节划分如下图。
3、血肉
骨架定好了,就开始添加血肉。
写论文一定要写明白,所以肌肉纹理很重要。
我的论文中每一句话,只要不是标定出处的,都是坐在电脑前自己边思考边一个字一个字敲进去的。
一个人的思路,总比东拼西凑很多人的思路更好梳理。
我们要学会怎么用别人文章。
先自己写,不会的不懂的不明白的地方,再借鉴。
这个借鉴绝不是简单的复制粘贴,哪怕是标明出处的,确实是别人思想的东西,也要用自己的话写出来。
比如写详细设计,各论文的详细设计格式都不同,综合起来非常麻烦,那么看看就好了,自己写。
详细设计怎么写呢,那就要往前看了。
之前先进行了需求分析,通过需求分析进行概要设计,定了系统框架,系统框架把软件划分成很多模块,详细设计中对每个模块进行设计就可以了。
想明白了,就开始写吧。
比如课表显示模块,可以先用Visio画个流程图。
流程图清晰明了,再用文字介绍一下,就是详细设计。
注意不管用什么软件画图,导出像素一定要最高,不然不清晰,打印出来的效果也非常差。
4、外表
主要内容写完了,就要修饰外表了。
每一章节后面都需要导入词,每个图都要标注顺序,每个段落的格式都要符合要求……这个工作量不小,而且很麻烦,有时候为了调节界面布局,还要改变图片的大小(我的论文中图片太多了,导师建议我加了个图索引)。
Word使用技巧其实翻来覆去就那些,不论是现在写毕业论文,还是以后写工作报告,都要大量用到Word,所以认真学一下吧。
怎样做目录,加页眉页脚,用格式刷,等等,都很常用。
介绍Word使用的文章超级多,网上找一篇,跟着边学边把自己的论文改好。
论文格式要贴合学校要求,按要求来就行了,别自作主张。
每句话每个字都要反复检查,不要范低级错误。
5、打印
计算机系各教研室的打印机可以提供给学员进行论文打印,然后统一送去装订。
但大多数系都是让学员自己花钱打印。
提供了打印机就一定要会用,会处理各种突发状况。
哪些是单面打印,哪些是双面打印,一定要搞清楚,记不住就在论文中加白页。
注意不要印歪了,打印完一张张检查。
五、答辩
1、思路
毕设答辩就十分钟,很多人很怵最后这个阶段。
我当时是软件教研室最后一个答辩的,十三号,数字不吉利,没关系,我又不是西方人,比起迷信我更相信自己。
软件是自己一点点做的,论文是自己一个字一个字写的,熬了这么久,最后这个答辩没什么好怕的。
要的就是精心准备,充分展现,厚积薄发而已。
答辩要理清思路,要讲清楚,一定要做个清楚明白的PPT,然后用自己的话介绍给评委听。
介绍什么呢,还是论文那些东西。
拿我的答辩做例子。
绪论:
介绍下开发背景和意义;
相关技术:
介绍开发平台;
作品设计:
跟论文类似,还是从系统框架角度来介绍各模块;
功能展示:
我拍了个视频放上去。
因为我的是Android手机软件,用电脑模拟的话效果不好,而且也必须用自己已经安装Eclipse和虚拟机插件的电脑才能模拟,非常麻烦。
导师说那你录个像,把手机软件怎么使用拍下来,绝对是答辩亮点。
于是我找了个美女帮忙举着录像机录,自己一步步操作展示。
没有时间配音,但事实证明放个没声音的录像,现场介绍的效果更好。
收获:
这个其实没人看,语言漂亮点,不用写太多。
2、PPT制作
我以前从来没这么用心做一个PPT。
这是个灰常严肃的答辩PPT,一定要符合评委的要求,所以我熬了一天,绞尽脑汁,想方设法。
事实证明结果非常好,导师非常满意,把我给美坏了。
那么PPT怎么做呢,四个字,图多字少。
这个原则很多人都懂,但是实际做的时候,生怕评委看不懂那些图,一个劲往上写字。
其实大可不必,评委在答辩过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 经验 小结