很多編程課都有學(xué)生必須完成的任務(wù),對于沒有編寫長程序經(jīng)驗的學(xué)生來說,這些任務(wù)可能相當(dāng)困難。此外,在完成作業(yè)時學(xué)生還必須考慮測試用例。為了幫助同學(xué)們在編程作業(yè)和項目中獲得較高的成績,所以我決定撰寫澳洲留學(xué)生完成CS編碼作業(yè)的5個實用型技巧,請盡情閱讀!

1.仔細閱讀作業(yè)規(guī)則
您的項目會有一些規(guī)格說明,描述您要創(chuàng)建的內(nèi)容。請務(wù)必仔細閱讀。如果您收到的是 PDF 格式,請盡量先打印出來,然后再閱讀。您可以突出規(guī)格說明中的重要內(nèi)容,而且實體紙張通常更容易閱讀。規(guī)范是您的指南,您需要確保在開始之前完全理解它們。
2.先設(shè)計,后編碼
通過閱讀規(guī)范,您將對自己的期望有一定的了解。對于許多學(xué)生來說,進入集成開發(fā)環(huán)境或文字處理器開始編碼是非常誘人的。我想強調(diào)一點。
如果你能從本文中得到什么啟發(fā),那就是這個想法。不要馬上開始編碼。拿一張紙來設(shè)計你的應(yīng)用程序。如果您有 iPad 或數(shù)字筆記設(shè)備,請先創(chuàng)建一個新筆記并寫下您的計劃。之所以需要這樣做,是因為編程并不是真正的編程。它更像是設(shè)計系統(tǒng)的藝術(shù)。編碼項目就像一個建筑項目。你不會想在沒有計劃的情況下建房子。
我經(jīng)常看到有人在不知情的情況下編寫代碼,然后因為出錯而被卡在中間。這就好比試圖建造一座木制摩天大樓,卻發(fā)現(xiàn)高度有限。
以下是我在開發(fā)代碼時要考慮的幾件事:
我將使用哪些數(shù)據(jù)結(jié)構(gòu)?哪種數(shù)據(jù)結(jié)構(gòu)最適合我的任務(wù)?
函數(shù) A 如何工作?B? 它將使用什么算法?
所需的數(shù)據(jù)流是什么?
我將接收哪些輸入數(shù)據(jù),返回哪些輸出數(shù)據(jù)?
我需要用類來封裝變量和函數(shù)嗎?還是沒有必要?
如何處理內(nèi)存分配?在堆上的哪個位置創(chuàng)建新對象?
是按值傳遞還是按引用傳遞?
相信我,你會想先計劃后行動。你會發(fā)現(xiàn)你的開發(fā)體驗會有很大的改善。
3.編寫模塊化代碼
我在上文提到,編碼主要是系統(tǒng)設(shè)計的藝術(shù)。我仍然這么認(rèn)為,但這并不意味著你可以不寫糟糕的代碼。如果你寫的代碼丑陋、不可讀、不支持,你只會傷害自己。風(fēng)格是個人的選擇,我不贊成批評別人的品味。不過,你應(yīng)該遵循某些做法來幫助自己。其中之一就是編寫模塊化代碼。這意味著你要刪除盡可能多的代碼。如果你發(fā)現(xiàn)自己正在編寫大量重復(fù)的代碼,你可以將其隱藏在一個函數(shù)中,以便日后使用。這樣,代碼的可讀性就會大大提高,調(diào)試也會更加容易。
4.知道如何使用調(diào)試器
可以節(jié)省很多時間。 我知道很多人默認(rèn)使用打印調(diào)試,我也是 對于不了解的人來說,打印調(diào)試是一種在代碼中可能出現(xiàn)錯誤的地方插入打印命令,或在代碼的特定點打印變量的技術(shù)。 當(dāng)你想快速檢查代碼的正確性時,打印調(diào)試很有用,但并不是很有效。 不過,強烈建議能夠使用調(diào)試器。原因如下:
你的代碼會變得非常、非常、非常快,而且非常、非常、非常亂。
如果你的代碼會向命令行或文件發(fā)送輸出,那么調(diào)試這些輸出就會很麻煩,而且需要時間來讀取和測試。 在終端上滾動并不能很好地利用寶貴的時間。
如果你想通過打印調(diào)試檢查容器中的項目,就必須在容器中循環(huán)顯示每個項目。 這樣做很難看。
如果您使用 Visual Studio Code,我們建議您熟悉內(nèi)置的可視化調(diào)試器。 這是一個非常方便用戶使用的調(diào)試器,可以節(jié)省大量時間。 學(xué)會使用調(diào)試器后,我的調(diào)試技能明顯提高了。
5.明確定義可能的錯誤向量
另一個調(diào)試技巧。 在編寫代碼時,停下來想想可能會發(fā)生哪些錯誤。 例如,如果你的代碼正在填充一個表,那么要注意可能出現(xiàn)的錯誤很可能與索引有關(guān)。 在處理指針時,一定要刪除它們,并確保沒有重復(fù)堆疊內(nèi)存或使用懸掛指針。 我們很快就會開設(shè)指針教程,所以如果你還不了解指針,也不用擔(dān)心。
如果等到最后才檢查錯誤,你將不得不翻閱數(shù)百行來查找錯誤發(fā)生的位置。 如果你有一份可能的錯誤原因列表,那么找出錯誤原因就會容易得多。
因此,另一個最佳做法是逐個檢查每個功能。要確保每個功能都能按預(yù)期獨立運行。 我們經(jīng)常會看到一些作業(yè)要求我們編寫測試用例來檢查代碼。 但大多數(shù)情況下,我們要測試的是整個程序,而不是單個函數(shù)或方法。 如果可能,請編寫單元測試! 我知道編寫測試需要時間,但根據(jù)我的經(jīng)驗,調(diào)試需要更多時間。
海馬課堂留學(xué)生作業(yè)輔導(dǎo),根據(jù)學(xué)生的輔導(dǎo)需求匹配背景相符的專業(yè)老師,承諾導(dǎo)師真實教育背景。1V1個性化備課,雙語教學(xué),實時輔導(dǎo),講解相關(guān)知識點和解題思路,提供大型作業(yè)任務(wù)的解決方案,輔導(dǎo)計算機編程語言操作,教授學(xué)生高效完成PPT和演講稿,針對性解決留學(xué)生各類作業(yè)中遇到的困擾,提高作業(yè)成績!輔導(dǎo)不滿意隨心退!如果你對此還有疑問,或者有更多關(guān)于學(xué)業(yè)輔導(dǎo)方面需求的話,可以添加微信號:hmkt131聯(lián)系海馬課堂的Joye老師哦。