20155307 2016-2017 《Java程序設計》第三次實驗報告

(一)敏捷開發與XP

敏捷開發是一種以人為核心、迭代、循序漸進的開發方法。“敏捷流程”是一系列價值觀和方法論的集合。從2001年開始,一些軟件界的專家開始倡導“敏捷”的價值觀和流程,他們肯定了流行做法的價值,但是強調敏捷的做法更能帶來價值。
敏捷開發包括很多模式,其中,極限編程是一種全新而快捷的軟件開發方法。XP團隊使用現場客戶、特殊計劃方法和持續測試來提供快速的反饋和全面的交流:
XP是以開發符合客戶需要的軟件為目標而產生的一種方法論
XP是一種以實踐為基礎的軟件工程過程和思想
XP認為代碼質量的重要程度超出人們一般所認為的程度
XP特別適合于小型的有責任心的、自覺自勵的團隊開發需求不確定或者迅速變化的軟件
XP準則來表達:
溝通 :XP認為項目成員之間的溝通是項目成功的關鍵,并把溝通看作項目中間協調與合作的主要推動因素。
簡單 :XP假定未來不能可靠地預測,在現在考慮它從經濟上是不明智的,所以不應該過多考慮未來的問題而是應該集中力量解決燃眉之急。
反饋 :XP認為系統本身及其代碼是報告系統開發進度和狀態的可靠依據。系統開發狀態的反饋可以作為一種確定系統開發進度和決定系統下一步開發方向的手段。
勇氣:代表了XP認為人是軟件開發中最重要的一個方面的觀點。在一個軟件產品的開發中人的參與貫穿其整個生命周期,是人的勇氣來排除困境,讓團隊把局部的最優拋之腦后,達到更重大的目標。表明了XP對“人讓項目取得成功”的基本信任態度。

(二)編碼標準

編程標準使代碼更容易閱讀和理解,甚至可以保證其中的錯誤更少。編程標準包含:具有說明性的名字、清晰的表達式、直截了當的控制流、可讀的代碼和注釋,以及在追求這些內容時一致地使用某些規則和慣用法的重要性。
代碼標準中很重要的一項是如何給包、類、變量、方法等標識符命名,能很好的命名可以讓自己的代碼立馬上升一個檔次。Java中的一般的命名規則有:
要體現各自的含義
包、類、變量用名詞
方法名用動賓
包名全部小寫,如:io,awt
類名第一個字母要大寫,如:HelloWorldApp
變量名第一個字母要小寫,如:userName
方法名第一個字母要小寫:setName

(三)結對編程

結對編程是XP中的重要實踐。在結對編程模式下,一對程序員肩并肩、平等地、互補地進行開發工作。他們并排坐在一臺電腦前,面對同一個顯示器,使用同一個鍵盤、同一個鼠標一起工作。他們一起分析,一起設計,一起寫測試用例,一起編碼,一起做單元測試,一起做集成測試,一起寫文檔等。
結對編程中有兩個角色:
駕駛員(Driver)是控制鍵盤輸入的人。
領航員(Navigator)起到領航、提醒的作用。
如何結對編程,為何要結對編程,大家參考一下結對編程和兩人合作 ,重點是:
駕駛員:寫設計文檔,進行編碼和單元測試等XP開發流程。
領航員:審閱駕駛員的文檔、駕駛員對編碼等開發流程的執行;考慮單元測試的覆蓋率;思考是否需要和如何重構;幫助駕駛員解決具體的技術問題。
駕駛員和領航員不斷輪換角色,不要連續工作超過一小時,每工作一小時休息15分鐘。領航員要控制時間。
主動參與。任何一個任務都首先是兩個人的責任,也是所有人的責任。沒有“我的代碼”、“你的代碼”或“他/她的代碼”,只有“我們的代碼”。
只有水平上的差距,沒有級別上的差異。兩人結對,盡管可能大家的級別資歷不同,但不管在分析、設計或編碼上,雙方都擁有平等的決策權利。

(四)版本控制

XP的集體所有制意味著每個人都對所有的代碼負責;這一點,反過來又意味著每個人都可以更改代碼的任意部分。結對編程對這一實踐貢獻良多:借由在不同的結對中工作,所有的程序員都能看到完全的代碼。集體所有制的一個主要優勢是提升了開發程序的速度,因為一旦代碼中出現錯誤,任何程序員都能修正它。
這意味著代碼要放到一個大家都能方便獲取的地方,我們叫代碼倉庫。這引出另外一個話題叫版本控制(Version Control)。

實驗截圖:

  1. 1074394-20170507212713320-731397973.jpg
  2. 1074394-20170507212926023-202922300.jpg
  3. 1074394-20170507213043132-1969043262.jpg
  4. 1074394-20170507213154992-1867412482.jpg

轉載于:https://www.cnblogs.com/zhuanyedajiesanshinian/p/6822408.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254673.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254673.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254673.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ElasticSearch創建、修改、獲取、刪除、索引Indice mapping和Index Template案例

為什么80%的碼農都做不了架構師?>>> The best elasticsearch highlevel java rest api-----bboss ElasticSearch客戶端框架bboss的ClientInterface 接口提供了創建/修改、獲取、刪除索引Indice和IndexTemplate的方法,本文舉例說明其使用方法…

ASCII碼與string的相互轉換

ASCII碼與string的相互轉換 思路: 1)ASCII碼轉string:把字符(串)直接轉換為int類型,即可得到ASCII碼; 2)string轉ASCII碼:將數字轉換為字符串轉出; {//將字…

X264代碼中一些參數的意義

Main(int argc,char *argv[]); 為了方便起見,不妨改寫為: Main(void){ ...... intargc5; char*argv[]{ "main","-o","test.264","foreman.yuv","352x288" }; …

spring mvc注解@RequestMapping

1、url路徑映射 基本功能 2、窄化請求映射 根路徑子路徑 注意setViewName的路徑。 3、限制http請求方法 get和 post 如果是get 轉載于:https://www.cnblogs.com/jway1101/p/5773923.html

Start application automatically during controller boot-up

 Tip English ?German Start application automatically during controller boot-up Description It is possible to start any program automatically during the boot-up procedure of the KR C4 controller. Precondition ?User group “Exper…

C#using static

平常用法: using 命名空間; using System; Console.WriteLine("Hello,World!");using static用法: C#6中支持這種寫法,這樣定義后可以可以訪問類的靜態成員 WriteLine是Console類的靜態函數&am…

redis數據遷移

一:AOF方式 需求: 一個沒有數據的redis。 清空redis數據方法 bash> echo "keys *" | redis-cli --raw -p 6378 |sed -r s/(.*)/redis-cli --raw -p 6378 del \1 /g |bash 1.備份 bash> redis-cli --raw -p 6378 redis> config get di…

阿里云OSS 上傳文件SDK

Aliyun OSS SDK for C# 上傳文件 另外:查找的其他實現C#上傳文件功能例子: 1、WPF用流的方式上傳/顯示/下載圖片文件(保存在數據庫) (文末有案例下載鏈接) 2、WPF中利用WebClient向服務器上傳文件 3、C#文件上傳的簡單實現 4、C#實…

關于level_idc和Profile_IDC的解釋

2010-01-21 15:51:40| 分類: windows mobile開 |字號 訂閱 Description: Set bitstream Profile IDC. Default is 88. Note: Some profiles cannot support certain features. See MPEG-4 AVC for supported features for each profile. Reference software may…

老婆的駕照要下來了,形容下我此刻的心情

 老婆的駕照要下來了,形容下我此刻的心情: 路上遇到的女人,大部分是不用眼睛和腦子開車的,完全是憑自己的感覺開車。凡是看到前車奇慢、路口猶豫不決、不打燈緩慢變線、不該…

ADO.NET改進防注入

static void Main1(string[] args) { //用戶輸入一個需要查詢的條件 car表 Console.WriteLine("請輸入"); string code Console.ReadLine(); SqlConnection conn new SqlConnection("server.;databasemydb;usersa;pwd100867"); SqlCommand cmd conn.Crea…

poj 2139

Floyd-Warshall模板題&#xff0c;我才剛學最短路。。。。 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> using namespace std; const int maxn30050; int d[maxn][maxn]; int v,m,n; int a[maxn]; const int inf0…

C#使用了未賦值的局部變量

錯誤原因&#xff1a; 我們先看下例子&#xff1a; int A; Console.WriteLine("數字&#xff1a;{0:d}", A);//在控制臺輸出文本這時提示錯誤&#xff1a;錯誤 1 使用了未賦值的局部變量“A” 原因是C#在使用變量前必須要進行初始化。 解決 解決方案有兩個 1、在…

EtherCAT伺服驅動器-如何選擇硬件開發方案

&#xfeff;&#xfeff;EtherCAT伺服驅動器-如何選擇硬件開發方案

Codevs 1689 建造高塔

1689 建造高塔時間限制: 1 s空間限制: 128000 KB題目等級 : **鉆石 Diamond** 題目描述 Description n有n種石塊&#xff0c;石塊能無限供應。每種石塊都是長方體&#xff0c;其中第i種石塊的長、寬、高分別為li、wi、hi。石塊可以旋轉&#xff0c;使得其中兩維成為長度和寬度&…

windows環境下OpenLDAP安裝與客戶端連接配置

2019獨角獸企業重金招聘Python工程師標準>>> 1.下載安裝OpenLDAP版本 C:\Users\Administrator>slapd -V OpenLDAP 2.4.42 Standalone LDAP Server (slapd) 2.安裝過程中&#xff0c;全部用默認的操作執行即可。 3.修改OpenLDAP文件如下&#xff1a; # MDB Backen…

主流開源編解碼器Xvid,x264,ffmpeg 性能對比

如有轉載請注明出處&#xff1a;孔祥文博客http://kswapd.cublog.cn Xvid是基于MPEG4協議的編解碼器&#xff0c;x264是基于H.264協議的編碼器&#xff0c;ffmpeg集合了各種音頻&#xff0c;視頻編解碼協議&#xff0c;通過設置參數可以完成基于MPEG4,H.264等協議的編解碼&…

halcon標定后改變世界坐標系參考點方法

halcon相機標定完成后&#xff0c;世界坐標系原點在標定板的中間&#xff0c;如果要自定義坐標系原點該如何操作 如圖&#xff1a; 方法1 使用仿射變換 *pose_to_hom_mat3d (FinalPose, HomMat3D) *hom_mat3d_translate_local (HomMat3D, dx, dy, 0, HomMat3DTranslate) *hom_…

Oracle 【IT實驗室】數據庫備份與恢復之:如何對Oracle數據庫文件進行恢復與備份...

任何數據庫在長期使用過程中&#xff0c;都會存在一定的安全隱患。對于數據庫管理員來說不能僅寄希望于計算機操作系統的安全運行&#xff0c;而是要建立一整套的數據庫備份與恢復機制。當數據庫發生故障后&#xff0c;希望能重新建立一個完整的數據庫&#xff0c;該處理稱為數…

vue刷新當前路由:router-view 復用組件時不刷新的3種解決方案總結

vue-router是Vue.js官方的路由插件&#xff0c;它和vue.js是深度集成的&#xff0c;適合用于構建單頁面應用。vue的單頁面應用是基于路由和組件的&#xff0c;路由用于設定訪問路徑&#xff0c;并將路徑和組件映射起來。傳統的頁面應用&#xff0c;是用一些超鏈接來實現頁面切換…