團隊做業第二週

團隊做業第二週

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圖
分而治之

相關文章
相關標籤/搜索