第三次作業 Wordcount

2022-06-04 15:57:13 字數 2758 閱讀 8930

一、位址

二、結對過程

室友組隊,程式設計過程中兩人一直在一起,共同思考,我主要檔案讀入和核心功能部分的編碼,他負責檔案寫入和測試。

三、psp**

psp2.1

personal software process stages

預估耗時

實際耗時

planning

計畫20min

15min

· estimate

· 估計這個任務需要多少時間

(從開始專案到結束,不是連續)

4day

3day

development

開發3day

2day

· analysis

· 需求分析 (包括學習新技術)

20min

15min

· design review

· 設計複審 (和同事審核設計文件)

5min

5min

· coding standard

· **規範 (為目前的開發制定合適的規範)

10min

10min

· design

· 具體設計

1h2h

· coding

· 具體編碼

3day

2day

· code review

· **複審

2h1h

· test

· 測試(自我測試,修改**,提交修改)

4h3h

· postmortem & process improvement plan

· 事後總結, 並提出過程改進計畫

1h1h

合計=estimate

4day

3day

四、解題思路

先將文字檔案傳入,在實現核心功能,在寫入檔案

五、 設計實現過程

在簡單的討論之後,我和蔣鑫設計了如下的流程圖

以下是實際的一些改動

檔案操作類包含了"檔案的寫入"和呼叫"核心功能類"

核心功能類包含了計算ascii字元總數、有效行數、片語和單詞頻率和檔案寫入函式

主函式類包含了增強功能的**

六.**規範

縮排:用乙個tap 鍵。

行寬:限定100個字元。

括號:對於複雜的表示式,要用括號清楚的表示邏輯優先順序。

括號:迴圈或選擇語句即使只有一句也要用 ,且 都要單獨佔一行。

分行:除了同型別的變數的定義在一行,其他不同的語句要分行寫。

命名:首字母要大寫,關鍵變數命名要能清楚的表達變數的含義;若名稱以多個單詞為名,單詞與單詞之間要用 "_" 連線。

注釋:在每個函式前注釋清楚函式的用途和意義較複雜的變數的文字解釋。

問題:在修改**後很多首行縮排都不符合要求,需要單個的修改。

七、效能分析

八、**分析

核心**如上圖

我們的**分兩大部分,一是檔案操作二是核心功能

我們把核心功能各類了出來放在了另乙個類中,再在另乙個類中呼叫,在主函式中還有一部分判斷是對cmd,對i o m n 命令語句做了判斷的功能

九、總結

本次結對程式設計我覺得是1+1>2的,我們完全是在一起編寫完成這個專案,乙個人的思考有限,在遇到問題時,兩個人有更多的方法解決,但是也需要兩個人相互配合。

結對程式設計的缺點:兩人一起程式設計久了,兩個人的思路有時不清晰,思路有時會混亂,特別是測試檢驗修改的時候。

遇到的問題:由於我們的輸出前n 個單詞和輸出m 個單詞組成的陣列為乙個函式,呼叫時發現兩個輸出的都是m個單詞組成的片語

解決:從新命令了乙個物件,做同樣的操作,得到兩種輸出。

我們一開始建立github庫的時候,沒有fork給出的連線,後來在3次上傳完成後意識到問題,詢問助教,把我們這個庫的內容又clone了過去但就只有一次commit

python實現WordCount 第三次作業

在完成本次作業的期間,同一位同學進行了合作,大概就是相互之間測試對方的程式,已達到軟體測試的目的。1.在進行檔案操作的時候報錯,經分析報錯後發現是在開啟某一檔案時未統一編碼規範。檔案是gbk編碼,在開啟檔案的時候要轉化為utf 8。2.對 的縮排,一些變數定義和空間進行了修改。pychecker是p...

python實現WordCount 第三次作業

在完成本次作業的期間,同一位同學進行了合作,大概就是相互之間測試對方的程式,已達到軟體測試的目的。1.在進行檔案操作的時候報錯,經分析報錯後發現是在開啟某一檔案時未統一編碼規範。檔案是gbk編碼,在開啟檔案的時候要轉化為utf 8。2.對 的縮排,一些變數定義和空間進行了修改。pychecker是p...

第三次作業

2 12有600 mb 兆位元組 的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車這 些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kb s,其結果又如何?解 當傳送速率為2.4k...