北京理工大学计算机学院《Java语言程序设计》

课程设计要求(2013~2014学年上学期)

一、课程设计选题及要求

本课程设计采用开放式选题方式,同学们可以从分散于教师课件所列之开发项目中选一个,或者是依据自己兴趣和想法自行选择课程设计课题,使用Java领域的技术完成一个功能相对完整且具有一定复杂度的Java应用,可以是Java桌面应用,Web应用或是Android应用。

具体要求如下:

(1)你所完成的Java应用应该是“有用的”,能解决某个实际问题,或者是“好玩的”,比如你写了一个游戏,最好是“有创新的”。如果其中有能让别人眼前一亮的东西,则必然高分。

(2)你所完成的Java应用应该是一个“完整的”并“经过测试”的程序,可编译,可运行,可部署。

(3)程序应该使用(但不限于)Java编程语言开发,可以集成其它的编程语言,但要以Java写的为主体。

(4)你写的Java应用应该具有一定的规模和复杂度,最直观的衡量指标就是代码行数,比如手写代码仅两三百行的程序就太简单了,另一衡量指标是你写程序的架构,比如把所有代码都塞到窗体中就是个糟糕的设计方案。

(5)你应该编写完整详细的文档(参看后面提供的代码模板),尽量展示出你的程序的优点和特点。由于作业较多,教师没办法浏览所有学生的程序,因此文档写得如何,以及是否可以很方便地运行和部署就很重要,它是教师判分的主要依据。

(6)你可以参考互联网上找到的或己出版技术书籍中的相关实例及源码,但不能原封不动的“拿来”,你至少应该先“看懂”,接着“修改”/“组合”,在基础上构建出你自己的应用。这是必须完成的工作,另外,应该在文档中注明你自己完成的工作,以及你所使用的他人成果的列表。如果确认抄袭,则课程设计成绩为0分,这很丢人的。

(7)为确保每个同学能得到比较充分的训练,本门课程的课程设计任务强制要求必须由单人两人结对开发完成,不允许出现三人及以上合作开发。团队开发的训练放到下学期的《面向对象方法与技术》课程再进行。

二、成绩判定方式:

本文档所描述之程序设计课题,是评定《Java语言程序设计》这门课学生平时成绩的依据。

《Java程序设计》课程成绩评定规则:

(1) 课程设计:40%

(2) 期末开卷考试:60%

三、程序与文档的提交:

1 提交内容

(1) 可以编译通过的Java源码(以Eclipse项目的方式提交)

(2) 可以执行的.class文件、Jar文件或.apk安装包。

(3) 一个详细的开发文件,按照提供的文档模板编写。

2 提交方法

将所有文件压缩打包,格式为:

姓名_学号_班级.rar(或.zip)

然后发送到邮箱:jinxuliang@bit.edu.cn,如压缩包大于20M,请使用移动硬盘直接到办公室交给教师。

因学生人数较多,为避免邮件丢失或教师忙中出错,给成绩评定带来麻烦,请大家尽可能地将多位同学的作业打包到同一个文件中集中交给教师。

开发文档需要一份纸质打印版,可直接送到教师办公室。

文档中务必写清楚姓名、学号、班别及联系方式!

不要重复提交新版本。教师收到的即视为最终版本,不理会版本更新请求。

课程设计提交时间:

       第16教学周周日(2013年12月23日截止),逾期不再接收作业。


附:课程设计文档模板

注:

此模板为参考模板,同学们可以在此基础上定制自己的文档。

北京理工大学计算机学院

《Java程序设计》课程设计模板

班级___________学号_____________姓名______________

1 程序的运行环境、安装步骤

(1)运行环境:例如JDK  1.7,MySQL 5.6

(2)程序的组成部份:指可以运行的程序包容哪几个文件,比如有几个jar文件,是否需要其他的支持文件(比如第3方的组件库)等

(3)程序部署与安装步骤:如何在一台“干净”的计算机上运行你的程序?

示例:

1) 安装JRE 1.7和MySQL

2)将程序jar文件复制到计算机上

3)在Windows资源管理器中双击XXX

4)运行脚本文件XXXX

5)……

2 程序开发平台

(1)代码行数:XXXX

(2)开发环境:Eclipsefor Java Developer 4.2+ADT 20.0.3

3 程序功能说明:

给出屏幕截图或UML用例图,底下给出文字说明。

4 程序算法说明及面向对象实现技术方案

(1)对用到的算法的说明,简要介绍其算法步骤、时间空间复杂度等

(2)数据结构和算法的面向对象实现

  • 程序中设计了哪几个类,类之间有何关系:继承、组合、实现某接口……
  • 你将这些类划分成了多少个包?
  • 你的程序包容几个jar包(或其他组件)?
  • ……

推荐使用UML类图、包图和组件图描述你的程序架构。

5 技术亮点、关键点及其解决方案

展示出你开发的程序中最精彩得意的亮点,列出在开发中你遇到了的技术难点,说明你最后是如何解决的……

举例如下:

本程序的亮点:

  • 我写的Android应用程序支持语音输入!
  • 我写的程序比流行的XXXX更好用,强在……

本程序的技术关键点

  • 我采用了多线程技术以提升程序的性能
  • 我自己写了个文件数据库来保存数据
  • 我应用了MVC模式来设计整个程序的架构
  • 我在开发过程中大规模地使用了单元测试
  • ……

遇到的技术难点及对应的解决方案:

问题描述:处理非法数学表达式的问题

重现步骤或详细说明:当用户输入“()”时,这个表达式合法,但算法陷入了死循环

最终的解决方案:……

6 简要开发过程

XX月XX号      查找资料确定要使用的算法与数据结构

XX月XX号      完成系统设计

XX月XX号      进行XXX功能开发

XX月XX号      XXX功能开发完成,进入测试阶段

……

XX月XX号      对程序进行集成测试

XX月XX号      程序开发工作完毕,编写及整理文档

7 个人小结及建议(可选)

经过一个学期的理论与技术课堂学习和完成课程设计,你有何感悟?对本课程有哪些建议?……

 

北理工2013《Java程序设计》课程设计要求相关推荐

  1. 北理工《Java程序设计》课程教学资源索引(2013版)——第21讲及Android第4讲发布

    北理工<Java程序设计> 课程教学资源索引(2013版,含<Android开发基础>) 说明: "Java程序设计"是北京理工大学计算机学院开设的选修课程 ...

  2. java 北理工 教材_北理工《Java技术与应用》在线作业

    北理工<Java技术与应用>在线作业 可以代做所有奥鹏平台的作业.小论文.毕业论文.离线作业.考核作业.在线作业.在线测试,有需要的请联系本人 一.单选题(共 20 道试题,共 40 分. ...

  3. 《多功能计算器》 Java程序设计 课程设计

    <多功能计算器> Java程序设计 课程设计 目 录 1. 需求分析 1.1 问题描述 1.2 设计要求 1.3 设计的目标 2. 总体设计 2.1 设计思路 2.2 算法的流程图 3. ...

  4. 苏大JAVA题库_苏州大学Java程序设计课程试卷含答案(B)

    苏州大学Java程序设计课程试卷(B)卷及参考答案共6页 一.选择题(2分*25= 50分) 1.Java语言的最大优点是:它是一种( C )的程序设计语言. A) 安全性 B) 多线性 C) 跨平台 ...

  5. java创建榨汁机_苏州大学Java程序设计课程试卷含答案(B)

    苏州大学Java程序设计课程试卷含答案(B) 文章<苏州大学Java程序设计课程试卷含答案(B)>是由[作文仓库]的会员[上山豹,下山虎i]为大家整理并分享的,仅供大家参考,欢迎阅读! 苏 ...

  6. Java程序设计课程练习题(题目+答案)

    Java程序设计课程练习题(题目+答案) 0401 1.Description 编写一个Java程序,输入一个整数n(1 <= n <= 1000),如果n是奇数, 输出 1+3+5+.. ...

  7. Java程序设计课程教学实践

    0 引 言 众所周知,Java既是一种编程语言,又是一个跨系统的运行平台,在软件工业界得到广泛的应用,成为众多程序员的首选编程语言.事实上,在软件工业历届的程序设计语言排名榜中,Java语言始终名列前 ...

  8. JAVA程序设计课程期末设计

    目录 <JAVA程序设计>期末课程设计 project代码文件夹可从Github获取 Java大作业github链接 目录 利用循环与跳转语句显示1-100中所有能被5且能被7整除的数. ...

  9. JAVA程序设计课程考试试卷专升本考研期末考试真题参考题目(二)

    一.选择题 1.编译下列源程序会得到哪些文件?( D ) class A1{ } class A2{ } public class B{ public static void main(String ...

  10. java程序设计课程培训心得体会_20165226 2017-2018-2《Java程序设计》课程总结

    目录 一.作业汇总 二.总结 三.问卷调查 一.作业汇总 二.总结 1. 自认为写得最好一篇博客是?为什么? 那时候是假期,时间充裕,对java有很强学习欲望,在进行安装的过程中遇到了很多问题,重装之 ...

最新文章

  1. python生日贺卡制作以及细节问题的解决最后把python项目发布为exe可执行程序过程
  2. Proguard 部分类不混淆的技巧
  3. 2018总结及2019计划
  4. Android开源之BaseRecyclerViewAdapterHelper(持续更新!)
  5. java颜色gui_Java gui颜色不加载
  6. python 分布图_python数据分布型图表柱形分布图系列带误差线的柱形图
  7. 等概率随机函数的实现(对立事件的产生)
  8. Java学习——对象和类
  9. 命令行添加删除tomcat服务
  10. 企业可以自己开发一套CRM系统吗?
  11. yolov7调用大华工业相机进行识别
  12. chip-seq三个生物学重复样品处理——IDR
  13. poj1061青蛙的约会
  14. ul li 自定义图标 和 图标大小
  15. SQL Server 索引(index) 和 视图(view) 的简单介绍和操作
  16. 你的PC机或者终端,是怎么上网的?怎么连接到网络的?无线网怎么接入Internet,如何访问网络资源?
  17. 500000服务器响应错误,加载资源失败:服务器响应状态为500(内部服务器错误)Django...
  18. 网口的标准POE供电
  19. iOS录音转码:amr转wav,wav转amr
  20. docker-compose搭建seafile开源版私有云盘

热门文章

  1. 基于torch学汪峰写歌词 聊天机器人 图像着色/生成 看图说话 字幕生成
  2. ubuntu20.04.4虚拟机 ping不通百度问题解决
  3. Vue消息列表已读/未读状态实时更新及数据更新set()用法
  4. linux文件fflush,Linux fflush 与 fsync的区别
  5. Ubuntu安装应用商店中没有的软件
  6. 【任务二】打卡——by 003-Vamein
  7. 《30天自制操作系统》学习笔记--番外篇之Mac环境下的工具介绍
  8. 基于MFC和c++的销售管理系统,课程设计,实训
  9. python的拼音库是什么意思_Python 中拼音库 PyPinyin 的用法!这个库有点意思哈!...
  10. 在注册表里查找classid