項目Alpha衝刺——代碼規範、衝刺任務與計劃

做業要求

這個做業屬於哪一個課程 軟件工程1916-W(福州大學)
這個做業要求在哪裏 項目Alpha衝刺
團隊名稱 基於雲的勝利衝鋒隊
項目名稱 雲評:高校學生成績綜合評估及可視化分析平臺
這個做業的目標 團隊的代碼規範、本次衝刺任務與計劃
其餘參考文獻 1.鄒欣.構建之法[M].3版:人民郵電出版社,2014.

團隊陣容

隊員學號 隊員姓名 我的博客地址 備註
221500201 孫文慈 https://www.cnblogs.com/swc221500201/
131601207 陳序展 https://www.cnblogs.com/chenxuzhan/
221600414 馮凱 https://www.cnblogs.com/codingkai/ 隊長
221600415 傅德泉 https://www.cnblogs.com/dqblog/
221600416 黃海山 https://www.cnblogs.com/hhs-blog/
221600417 黃樂興 https://www.cnblogs.com/hlxing/
221600439 <script> https://www.cnblogs.com/aaaaaaaaaaaaaa/

任務與計劃安排

天數 任務安排
第一天 代碼規範制定,項目先後端各自基礎構建,選定框架、UI庫
次日 熟悉框架、UI庫,編寫大致架構,數據庫建庫建表
第三天 熟悉框架和庫,統一開發流程,後端 PO 模型
第四天 編寫API文檔,完成註冊頁面,編寫登陸,註冊接口
第五天 完成登陸頁面,編寫教師評分維度管理接口
第六天 完成新建評分維度頁面,編寫教師新建班級接口
第七天 完成教師新建班級頁面,編寫教師編輯班級接口
第八天 完成教師編輯班級頁面,編寫學生及助教加入班級功能接口
第九天 完成學生及助教加入班級頁面,測試接口安全性,校驗接口是否完成需求
第十天 Alpha版本程序的測試與交付

代碼規範

後端

代碼格式

  • 縮進以4個空格爲單位,禁止使用 tab 字符
  • 大括號的使用約定。若是是大括號內爲空,則簡潔地寫成{}便可,不須要換行;若是是非空代碼塊則:
    • 左大括號前不換行
    • 左大括號後換行
    • 右大括號前換行
    • 右大括號後還有 else 等代碼則不換行;表示終止的右大括號後必須換行
  • 儘可能避免一行的長度超過80個字符
  • 當一個表達式沒法容納在一行內時,可在一個逗號後面斷開或在一個操做符前面斷開
  • 新的一行應該與上一行同一級別表達式的開頭處對齊
  • 將相似操做,或一組操做放在一塊兒不用空行隔開,而用空行隔開不一樣組的代碼
  • 方法參數在定義和傳入時,多個參數逗號後邊必須加空格
  • if/for/while/switch/do 等保留字與括號之間都必須加空格

命名風格

  • 代碼中的命名嚴禁使用拼音與英文混合的方式,更不容許直接使用中文的方式。命名均不能如下劃線或美圓符號開始,也不能如下劃線或美圓符號結束
  • 法名、參數名、成員變量、局部變量都統一使用 lowerCamelCase 風格,必須聽從駝峯形式
  • 常量命名所有大寫,單詞間用下劃線隔開
  • 包名統一使用小寫,點分隔符之間有且僅有一個天然語義的英語單詞。包名統一使用單數形式,可是類名若是有複數含義,類名可使用複數形式
  • 類名每一個單詞必須由大寫字母開頭而其餘字母都小寫的單詞組成
  • 任何自定義編程元素在命名時,使用盡可能完整的單詞組合來表達其意
  • 數組應該用下面的方式來命名
byte[] buffer;
  • 不用數字定義名字
  • 枚舉類名建議帶上 Enum 後綴,枚舉成員名稱須要全大寫,單詞間用下劃線隔開
  • POJO 類中布爾類型的變量,都不要加 is 前綴

常量定義

  • 不容許任何魔法值(即未經預先定義的常量)直接出如今代碼中
  • 若是變量值僅在一個固定範圍內變化用 enum 類型來定義

註釋規約

  • 類、類屬性、類方法的註釋必須使用 Javadoc 規範,使用/**內容*/格式,不得使用// xxx 方式
  • 全部的類都必須添加建立者和建立日期
  • 方法內部單行註釋,在被註釋語句上方另起一行,使用//註釋。方法內部多行註釋使用/* */註釋,注意與代碼對齊
  • 代碼修改的同時,註釋也要進行相應的修改,尤爲是參數、返回值、異常、核心邏輯等的修改

控制語句

  • 在 if/else/for/while/do 語句中必須使用大括號。即便只有一行代碼,避免採用單行的編碼方式:if (condition) statements;
  • 避免採用取反邏輯運算符

領域設計規範

  • 服務類基於業務領域模塊劃分,劃分原則能夠與業務表對應
  • 儘可能減小錶鏈接,杜絕兩個業務領域的錶鏈接
  • 禁止大表鏈接(超過100w數據)
  • 禁止在SQL語句中使用1=1
  • 禁止批量數據用in關鍵詞分組排序,即在In條件複雜查詢語句
  • 更新操做條件必須有索引,經過explain確認執行計劃走索引,儘可能使用pk主鍵
  • 查詢條件必須走索引
  • 原則上不容許應用使用delete語句,若有須要,必須記log,通過團隊評審
  • 實體類與數據庫表對應,api接口下的實體與dao層不一致,dao層實體命名爲XxxEntity,防止修改內部實體類影響接口穩定性。

數據庫設計規範

  • 禁止刪除字段
  • 禁止更新字段名稱,類型,減小長度;能夠修改增長字段長度或備註
  • 數據庫腳本支持提早上線,不然會影響熱發佈或者灰度發佈
  • 每一個領域實體表必須有一個領域主鍵驅動,便於信息查詢
  • 查詢結果按需讀取,防止因字段過大形成數據傳輸開銷
  • SQL命名準確,功能要單一,不能包含多種含義功能,維護會更復雜
  • 命名使用下劃線命名,統一小寫

前端

文件組織結構

  • 全部前端代碼、插件、配置文件和資源都放在項目的根目錄下
  • 全部外部模塊和插件都放在/node_modules目錄下
  • 主頁icon和index.html放在/public目錄下
  • 全部編寫的組件、資源文件以及main.js都放在/src目錄下
  • 全部靜態資源文件放在/src/assets目錄下
  • 全部Vue組件放在/src/components目錄下
  • README.md放在項目的根目錄下,提供項目的配置安裝指南

HTML代碼規範

  • 文件名所有使用小寫字母,相鄰單詞之間使用「_"鏈接
  • 全部標籤名必須小寫,而且要有正確的關閉標籤
  • 相鄰標籤之間用4個空格縮進
  • 標籤名中相鄰單詞之間用「-」分隔
  • 標籤屬性名所有小寫,value用「」括起來
  • HTML的語言屬性統一設置爲zh-cn

CSS代碼規範

  • 文件名所有使用小寫字母,相鄰單詞之間使用「_"鏈接
  • 類選擇器和id選擇器要合理使用
  • 類名和id名所有使用小寫字符,相鄰單詞之間用「-」分隔
  • 爲避免css樣式的冗餘,儘可能將共同的樣式提取到同一個選擇器中
  • 僅當前組件的style樣式使用「scoped」加以範圍說明

JavaScript代碼規範

  • 文件名所有使用小寫字母,相鄰單詞之間使用「_"鏈接javascript

  • 代碼段之間使用4個空格縮進,代碼段使用{}括起來css

  • 變量使用小寫字母表示,相鄰單詞之間使用「-」分隔html

  • 變量,表達式之間使用空格分開,常量使用大寫字母表示前端

  • 段註釋使用/**/表示java

  • 行註釋使用//表示node

系統設計和數據庫設計問題解答

團隊成員的貢獻度如何存儲?

貢獻度字段在用戶得分表裏面存儲,每次做業的得分當作一條記錄。

做業發佈後是否可編輯?

能夠實時編輯並存儲。

如何防止學生修改爲績?

只有擁有班級權限的老師角色才擁有修改爲績的權限。

系統設計書內容欠缺?

相關內容已增長。

二次評分,好比手誤操做如何驗證?

老師能夠對學生成績進行屢次修改。
相關文章
相關標籤/搜索