今天給大家帶來開發過程的一些問題,理解了這些問題,產品經理才能理解程式設計師說的一些專業術語(免得被欺負qaq)。
####程式設計師「命名困難症」
網路流傳,因命名問題,某程式設計師對同事出手,不規範的命名方式的確會對開發帶來極**煩,尤其對於新手,命名方式更加五花八門。不規範的命名方式往往因為一下原因:
①英語差②讀**少。
為了提高開發效率,團隊應該有統一的命名方式。
如:作用域+型別+名字。
在開始學習程式設計就因該有良好的命名習慣,比如給「年齡」這個變數命名就命名為「age」。
####不能改的bug
檢查出來了bug,程式設計師卻說不能改,嗯!程式設計師或許不是在騙你。不能改bug可能有以下幾種情況。
①產品發布在即,改正可能會產生不可預知的後果。
②這個bug的存在可能是為了避免另乙個更大的bug。
③開發人員各種秀,最終導致**只能看,不能改,但能保證程式正常執行。
####編不過
「編」指編譯器在進行翻譯,「編不過」即是編譯器在翻譯過程中可能存在單詞拼寫,語法等錯誤,這時就需要程式設計師認真檢查自己的**。
####程式掛了
有的程式用著用著就掛了,即即程式奔潰,也叫「掛了」。
①程式設計師在開發時欠考慮,不能對所有可能異常狀態做出處理,如空指標,陣列訪問越界。
②作業系統不靠譜(情況較少見)。
####**混淆
源**也存在洩漏風險,這時**混淆就發揮作用。
**混淆:將條理清晰的**寫得晦澀難懂,但功能不變。
比如將for迴圈變為while,將函式名簡化等。
####異常捕獲
應用一旦發布,可能面臨沒用兩下就「掛了」的情況。異常捕獲就是開發者知道程式在這裡可能會奔潰,於是讓程式繞過去從而避免奔潰,以保證程式正常執行。
####簡單理解:
面向過程:程式設計師接到需求,把它拆成乙個個的指令,然後穿起來交給計算機去執行。
物件導向的兩個特性:
①自己的事情自己做——建立的物件應該剛好能做完它能做的事情,不多做也不少做。
②面向介面——資料和行為都封裝到了物件裡,為了讓外界知道自己有哪些功能,即自己成為介面的實現者。
####**重構
軟體開發過程中,每款軟體都是精心設計的,具有良好的結構,但隨著需求不斷變更,原結構開始不適應,為了加速完成需求,開發者可能會使用一些違背當前軟體架構的方式實現功能。久而久之,這種「另類」的**越來越多,原結構開始雜亂無章,,**可讀性和可維護性降低,要繼續開發可能帶來崩潰。
重構即保留現有功能基礎上重新梳理**結構,讓雜亂無章的**重新具有可讀性、結構性、可擴充套件性,增加軟體開發效率,優化程式功能,小到乙個函式,大到整個產品的模組。
第三次作業
2 12有600 mb 兆位元組 的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車這 些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kb s,其結果又如何?解 當傳送速率為2.4k...
第三次作業
1 有600mb 兆位元組 的資料,需要從南京傳送到北京 一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料,試比較這兩種方法的優劣。若資訊傳送的速率為33.6kb s,其結果又如何?解 假定連續傳送且不出錯。若...
第三次作業
p67 2 12 有600mb的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率是2.4kbps 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kbps,其結果又如何?解 1 t 600 1024...