有志成為網(wǎng)頁(yè)設(shè)計(jì)師、程序員、計(jì)算機(jī)科學(xué)家和軟件開(kāi)發(fā)人員的學(xué)生應(yīng)該攻讀計(jì)算機(jī)科學(xué)領(lǐng)域的學(xué)位。該領(lǐng)域的需求量很大,許多學(xué)生都被這個(gè)學(xué)科所吸引。幾乎所有想要獲得計(jì)算機(jī)科學(xué)學(xué)位的學(xué)生們都需要撰寫(xiě)編碼作業(yè)。如果你在尋找一些有價(jià)值的寫(xiě)作技巧,那么不妨看看這篇文章。

1.仔細(xì)閱讀作業(yè)要求
請(qǐng)仔細(xì)閱讀作業(yè)要求,如果你收到的是PDF格式,請(qǐng)將其打印出來(lái),然后再閱讀。你可以突出說(shuō)明規(guī)格書(shū)的重要部分,對(duì)我來(lái)說(shuō),實(shí)物紙張通常更容易閱讀。這些規(guī)格是你的指示,你應(yīng)該在開(kāi)始之前確保你完全理解它們。
2.先設(shè)計(jì),后編碼
讀完規(guī)范后,你就知道對(duì)你的期望是什么了。對(duì)于許多學(xué)生來(lái)說(shuō),直接跳入IDE或文字處理器并開(kāi)始編碼是非常誘人的。我想強(qiáng)調(diào)一件事——不要這樣做。
如果你能從這篇文章中得到什么,那就是這一點(diǎn)。你不應(yīng)該馬上就開(kāi)始編碼。你應(yīng)該找一張紙,畫(huà)出你的程序。如果你有一個(gè)iPad或數(shù)字記事設(shè)備,先創(chuàng)建一個(gè)新的筆記,寫(xiě)下你的計(jì)劃。因?yàn)榫幊滩⒉皇钦嬲饬x上的代碼。相反,它是一種設(shè)計(jì)系統(tǒng)的藝術(shù)。一個(gè)編程項(xiàng)目就像一個(gè)建筑項(xiàng)目。你不希望在沒(méi)有計(jì)劃的情況下建造一棟建筑吧。
以下是我在設(shè)計(jì)代碼時(shí)考慮到的幾件事:
(a)我將使用哪些數(shù)據(jù)結(jié)構(gòu)?哪種結(jié)構(gòu)能最好地完成工作?
(b)函數(shù)A將如何工作?B、C?它將使用什么算法?
(c)我應(yīng)該把變量和函數(shù)包在一個(gè)類(lèi)里嗎?還是沒(méi)有必要?
(d)我如何處理內(nèi)存分配?我在堆上哪里創(chuàng)建一個(gè)新對(duì)象?
3.編寫(xiě)模塊化代碼
模塊化代碼意味著要盡可能多地抽象出代碼。這也與DRY原則有關(guān)(不要重復(fù))。如果你發(fā)現(xiàn)自己寫(xiě)了很多重復(fù)的代碼,你可以考慮把它抽象成一個(gè)函數(shù),以后可以重復(fù)使用。這使得代碼更容易閱讀和調(diào)試。
4.清晰地列出可能的錯(cuò)誤向量
另一個(gè)調(diào)試技巧。在編寫(xiě)代碼時(shí),最好停下來(lái)思考一下潛在的錯(cuò)誤。例如,如果你的代碼向一個(gè)數(shù)組添加元素,記住一個(gè)非??赡艿腻e(cuò)誤可能是一個(gè)與索引有關(guān)的錯(cuò)誤。如果你正在使用指針,你總是要確保指針被清除,并確保你不會(huì)試圖在堆棧中釋放兩次內(nèi)存。
以上就是關(guān)于加拿大多倫多大學(xué)留學(xué)生撰寫(xiě)編碼作業(yè)實(shí)用tips的內(nèi)容。海馬課堂專(zhuān)業(yè)課程輔導(dǎo),3500+嚴(yán)選碩博學(xué)霸師資,針對(duì)學(xué)生的薄弱科目和學(xué)校教學(xué)進(jìn)度,匹配背景相符的導(dǎo)師,根據(jù)學(xué)生情況進(jìn)行1V1專(zhuān)屬備課,上課時(shí)間靈活安排,中英雙語(yǔ)詳細(xì)講解課程中的考點(diǎn)、難點(diǎn)問(wèn)題,并提供多方位的課后輔導(dǎo),輔助學(xué)生掌握全部課程知識(shí),補(bǔ)足短板。