团队做业第二周

团队做业第二周

1、修改《需求规格说明书》

对于上周所写的《需求规格说明书》,咱们将其作了不少的修改:
1.初版《需求规格说明书》有着不少的漏洞,那时的咱们对于咱们的项目还有点迷糊,由于是首次作这类项目,因此咱们的构思,还有对项目所要实现的东西还有点犹豫,因此总体来看,写的很混乱。
2.在《需求规格说明书中》中,我以为对于用户需求这方面的分析并很差写,由于咱们这个项目并非一个要推广到外界去供大众使用的项目,而是一个咱们为了熟悉项目实现而写一个案例。
3.在《需求和规格说明书》中,产品功能介绍我以为第一次写的太过于敷衍,可是由于咱们的成品尚未完成,因此我以为提早写出来,后期又实现不了就太尴尬了,因此我会在每实现一部分功能后,将其更新一遍。
4.团队分工,初版《需求规格说明书》咱们的团队分工并不明确,因此我在第二版中从新进行了说明。html

需求规格说明书java

2、制定团队的编码规范

命名规范要望文知义,简单明了。
命名规范定制太多,就会让人心烦,反而没人遵照了。
---《APP研发录》git

先介绍两种命名规则:github

  • 驼峰命名法:又称小驼峰命名法。除了首个单词首字母小写除外,其他全部单词全部首字母都要大写。
  • 帕斯卡命名法:又称大驼峰命名法。全部单词首字母大写。

对于咱们团队,咱们将严格执行以上两个规则,下面是详细解释:数据库

包的命名规范

包名一概小写后端


建议采用以下规则:【com】.【公司名/组织名】.【项目名称】.【模块名】

好比:com.jacksen.mvp.demo。而后在这个目录下根据业务逻辑进行分层。

常见的包分层结构以下:
com.xxx.xxx.view –> 自定义view 或者是View接口api

  • com.xxx.xxx.activities –> activity类
  • com.xxx.xxx.fragments –> fragment类
  • com.xxx.xxx.adapter –> 适配器相关
  • com.xxx.xxx.utils –> 公共工具类
  • com.xxx.xxx.bean –> 实体类
  • com.xxx.xxx.service –> service服务
  • com.xxx.xxx.broadcast –> 广播接收器
  • com.xxx.xxx.db –> 数据库操做类
  • com.xxx.xxx.persenter –> 中间对象
  • com.xxx.xxx.model –> 数据处理类

类的命名规范

Android中类的命名与JAVA开发采用一致的规范便可。markdown

大驼峰命名法,即全部单词首字母大写。架构

  • Activity –> xxxActivity.java
  • Application –> xxxApplication.java
  • Fragment –> xxxFragment.java
  • Service –> xxxService.java
  • BroadcastReceiver –> xxxBroReceiver.java
  • ContentProvider –> xxxProvider.java
  • Adapter –> xxxAdapter.java
  • Handler –> xxxHandler.java
  • 接口 –> xxxInter.java
  • 接口实现类 –> xxxImpl.java
  • Persenter –> xxxPersenter.java
  • 公共父类 –> BaseActivity.java、BaseFragment.java、- BaseAdapter.java等
  • util类 –> LogUtil.java
  • 数据库类 –> BaseSQLiteDBHelper.java

变量的命名规范

采用驼峰命名规则。asp.net


Java普通变量:

  • resultString
  • userBean
  • loginPresenter


Android控件变量:

  • loginBtn
  • inputPwdEt
  • showNameTv

有些人建议采用【控件缩写】+【控件逻辑名称】的方式,好比btnLogin。不过我我的比较习惯反过来写,好比loginBtn。与类的命名相似,把逻辑名称写在前面。

经常使用控件的缩写:

控件 布局文件中缩写 代码中缩写
LinearLayout xxx_layout xxxLLayout
RelativeLayout xxx_layout xxxRLayout
FrameLayout xxx_layout xxxFLayout
TextView xxx_tv xxxTv
EditText xxx_et xxxEt
Button xxx_btn xxxBtn
ImageView xxx_iv xxxIv
CheckBox xxx_chk xxxChk
RadioButton xxx_rbtn xxxRbtn
ProgressBar xxx_pbar xxxPbar
ListView xxx_lv xxxLv
WebView xxx_wv xxxWv
GridView xxx_gv xxxGv

常见单词缩写:

单词 缩写
icon ic
background bg
foreground fg
initial init
information info
success succ
failure fail
error err
image img
library lib
message msg
password pwd
length len
buffer buf
position pos

常量命名:

所有单词采用大写,每一个单词之间用“_”分割。

public static final String API_URL = "http://apis.baidu.com/heweather/weather/free";

方法的命名规范

与java开发相似,采用驼峰命名规则。首单词首字母小写,其他单词首字母大写。尽可能不要使用下划线。

举例:

  • setxxx()
  • getxxx()
  • loginxxx()
  • onCreate()
  • onDestory()
  • isxxx() –> 返回值是boolean类型
  • checkxxx()

方法的命名规范

所有采用小写,单词之间使用下划线分割。

布局文件:

  • activity_login.xml
  • fragment_first_tab.xml
  • item_choose_city.xml
  • dialog_choose_city.xml
  • common_footer.xml
  • popup_xxx.xml

控件ID:

上面【经常使用控件的缩写】表格中基本列出了经常使用控件的ID写法。

  • login_btn
  • input_phone_et
  • input_pwd_et
  • login_pbar

drawable目录下的命名规范

所有单词小写,单词之间采用下划线分割。

  • 图标 – > ic_xxx.png –> ic_logo.png
  • 背景图 –> bg_xxx.jpg –> bg_splash.jpg
  • selector –> selector_login_btn.xml
  • shape –> shape_login_btn.xml
  • 图片状态 –> bg_login_btn_pressed.jpg & - bg_login_btn_unpressed.jpg

anim目录下的命名规范

单词所有小写,单词之间采用下划线分割。

  • fade_in.xml
  • fade_out.xml
  • slide_in_from_left.xml
  • slide_in_from_top.xml
  • slide_out_to_right.xml
  • slide_out_to_bottom.xml

编码规范

  • 代码中尽可能不要出现中文。注释和除外。代码中经过strings.xml引用来显示中文。
  • 控件声明放在activity级别,这样在activity其余地方可使用。
  • 在一个View.OnClickListener中处理全部的点击事件逻辑,这样看起来很集中和直观。
  • strings.xml中使用%1ssd等实现字符串的通配。
  • 布局文件中的字体大小,都定义在dimens.xml中。
  • 有关margin和padding的值也都放在dimens.xml中。
  • 界面之间传值尽可能使用intent方式。少用全局变量。
  • 不建议在布局文件中添加点击事件。
  • 数据类型转换必定要校验。
  • 使用常量代替枚举。
  • 实体不要在不一样模块间共享,可是能够在统一模块下的不一样页面共享。
  • 建议采用左括号与方法名称在同一行的代码格式来进行代码的编写和格式化。
  • 业务稍微复杂一些,都有可能提炼一个BaseActivity或BaseFragment出来作为公共父类。
  • 类注释必定要写,管家的方法也要写方法注释。常量尽可能写注释。

3、使用Powerdesigner绘制ER图

因为咱们的团队项目没有设计数据库的内容,因此只针对其余方面制定了ER图:

4、项目的后端架构设计

功能介绍

序号 基础功能 功能介绍
1 背景音乐 在玩游戏过程当中有音乐伴随,与大多数游戏的BGM相相似
2 音量设定 控制游戏BGM的音量
3 菜单界面 选择开始游戏(选择难度-待后续开发),并有关于,音量,退出游戏
4 游戏界面 设有战斗界面(血条)和消消乐矩阵,暂停,设置,退出

5、团队分工

学号 姓名 负责工做
20172327 马瑞蕃 项目总结博客,平常管理,代码质量测试
20172316 赵乾宸 组长,项目 主要 代码 
20172320 李闻洲 项目部分代码,代码质量测试 
20172317 蒋子行 平常统计
  • 需求功能优先级象限图:

6、TODOList及燃尽图

  • TODOList:

  • 码云上的Issue:

  • github上的Issue:

  • 燃尽图:(仅本周任务)

小组会议及交互总结

  • 本周小组会议为站立式会议,在育才407寝室举行,在会议上,咱们主要讨论了上周需求规格说明书的问题,并在会后进行了修改,内容较少。
  • 本周会议记录为蒋子行同窗整理
  • 组员对本周的感悟:

李闻洲:用工较少,有点遗憾,将会在以后补上

赵乾宸:BUG有点麻烦,还解决中!

马瑞蕃:团队建设和博客有点麻烦,但我仍是完成了,加油!

蒋子行:共同努力,作好项目!

  • 总体总结:
    对于第一周的工做,咱们以为并不满意,首先在游戏代码方面, 遇到了一个难以解决的问题,耗了许多时间,因此,项目的进度有些迟滞,咱们会在以后抓紧时间,将进度补上。
  • 下周计划:
    对于较难问题,咱们将创建联合突破小组,多人协商共同完成,将在本周完成大部代码的实现工做。

本次分工及工做量比例

成员 我的贡献及完成度 用时 比例
马瑞蕃 肯定任务、分配任务、检查汇总整理(markdown 及 pdf)、编辑博客、项目github燃尽图 使用Powerdesigner绘制ER图、界面设计 列出TODOList、项目燃尽图【100%】 16h 70%
李闻洲 使用象限法设计优先级图、功能介绍图(WBS)【100%】 2h 10%
赵乾宸  制定开发开发过程当中代码规范、项目的后端架构设计【100%】 4h 10%
蒋子行 交互、对接其余小组,会议记录 【100%】 1h 10%

参考资料汇总

PowerDesigner16.5中文版(附汉化补丁) 免费版
流程图
todolist使用教程
powerdesigner画ER图
分而治之

相关文章
相关标签/搜索