我們擅長(zhǎng)商業(yè)策略與用戶體驗(yàn)的完美結(jié)合。
歡迎瀏覽我們的案例。

很多人都有過復(fù)制粘貼代碼的經(jīng)歷,但如果你經(jīng)常盲目地復(fù)制粘貼代碼,甚至是復(fù)制粘貼自己不理解的代碼,很可能會(huì)帶來災(zāi)難性的后果。
當(dāng)你復(fù)制粘貼自己不理解的代碼時(shí)會(huì)發(fā)生什么
產(chǎn)生垃圾
這是復(fù)制粘貼代碼的最大問題。復(fù)制粘貼的代碼往往包含很多你的程序不需要的額外代碼行。如果開發(fā)者在沒有理解代碼的情況下就進(jìn)行復(fù)制,那么代碼就會(huì)變得很復(fù)雜,很難理解。
重用性差
開發(fā)軟件的真正資產(chǎn)并非代碼,而是可重用的代碼。因此,從長(zhǎng)遠(yuǎn)來看,簡(jiǎn)單地復(fù)制代碼并不能提高生產(chǎn)力。
如果你找到一段代碼,卻沒有理解,僅僅是復(fù)制、粘貼,那么你就無法正確地重用這段代碼,因?yàn)槟悴恢浪目捎眯?。另外,你也失去了收集可重用代碼的機(jī)會(huì)。
復(fù)制 Bug
復(fù)制代碼的同時(shí),也在復(fù)制 Bug。你所復(fù)制的代碼片段可以在特定的環(huán)境下使用,但是你的問題會(huì)有所不同。所以,如果你沒有理解代碼就去復(fù)制代碼,那么你就會(huì)制造出某些 Bug,這些 Bug 會(huì)暫時(shí)被掩蓋。
安全漏洞
我知道有個(gè)學(xué)弟把 GitHub 的一些代碼片段復(fù)制和粘貼到了他的項(xiàng)目中,因?yàn)樗仨毑榭此景l(fā)送給用戶的最后一條信息。
他確實(shí)是把那些代碼片段復(fù)制和粘貼了,但是卻沒有理解那些代碼。他運(yùn)行了這段代碼,并且工作得很好。但問題在于,這段代碼可以讀取智能手機(jī)的所有信息。這個(gè)問題影響很大,會(huì)讓你的應(yīng)用變得緩慢。
引入新的錯(cuò)誤
當(dāng)你在你的項(xiàng)目中粘貼代碼時(shí),重復(fù)的代碼還可能會(huì)產(chǎn)生額外的錯(cuò)誤。有時(shí)候,可能是你沒有把代碼粘貼在正確的地方,也可能是你粘貼的代碼覆蓋了以前的一些代碼。如果你不明白這些代碼,那么會(huì)有很多復(fù)制粘貼的方式帶來災(zāi)難。
許可證問題
開發(fā)者經(jīng)常從一個(gè)開源項(xiàng)目中復(fù)制粘貼代碼。如何不了解復(fù)制的源碼許可影響,那么就會(huì)有很大的問題,對(duì)于嵌入式設(shè)備來說更是如此,因?yàn)樵谇度胧皆O(shè)備中,板載軟件被認(rèn)為是一個(gè)新的和唯一的副本。這不是 GrammaTech 專攻的領(lǐng)域,但其他公司提供這些類型的分析工具。
一些建議
如果你經(jīng)常習(xí)慣復(fù)制粘貼代碼,那么以下六點(diǎn)建議希望能對(duì)你有所幫助。
花時(shí)間去解決一個(gè)問題。你今天花的時(shí)間越多,明天要花的時(shí)間就越少。
對(duì)復(fù)制粘貼的代碼進(jìn)行調(diào)試,以便更好地理解。
在復(fù)制的代碼中添加一些有用的注釋,以便 QA 團(tuán)隊(duì)能夠更好地查看。
嘗試將代碼分解成可重復(fù)使用的函數(shù)。這將有助于你更好地理解。
在從開源項(xiàng)目中復(fù)制之前,請(qǐng)看清許可證。
請(qǐng)不要在項(xiàng)目中留下任何復(fù)制粘貼的代碼的垃圾代碼。
額外提示:
一些資深的開發(fā)者建議,與其從網(wǎng)站上復(fù)制粘貼代碼,不如通過重新敲入代碼來重寫。通過這樣做,你可能會(huì)發(fā)現(xiàn)一些垃圾或無用的東西,并把它從你的代碼中刪除。這將使代碼變得干凈,并幫助你更好地理解它。再一個(gè)就是,它將幫助你一步一步地理解執(zhí)行程序。
如果我們僅僅是簡(jiǎn)單地復(fù)制和粘貼,就會(huì)失去這些寶貴的經(jīng)驗(yàn)。請(qǐng)相信我,一點(diǎn)小小的努力,就能使你從好的開發(fā)者變成偉大的開發(fā)者。
最后幾句話
復(fù)制代碼使我們的生活變得更輕松。但如果不去理解代碼的話,就不會(huì)讓我們成為更好的開發(fā)者。一個(gè)偉大的程序員,就是在大多數(shù)人不能解決困難問題的時(shí)候,能夠解決困難的程序員。
而一個(gè)偉大的開發(fā)者并非在一日之內(nèi)造就的。通過理解代碼來解決問題,是提高自己的最好方法之一。
因此,盡管復(fù)制粘貼代碼的做法很誘人,但在不理解的情況下就復(fù)制代碼,是不值得開發(fā)者花費(fèi)寶貴的時(shí)間。在我看來,這是在自欺欺人。
?。?a href="http://www.hbtcsp.com/wechat/">邯鄲小程序開發(fā))


小米應(yīng)用商店發(fā)布消息稱 持續(xù)開展“APP 侵害用戶權(quán)益治理”系列行動(dòng) 11:37:04
騰訊云與CSIG成立政企業(yè)務(wù)線 加速數(shù)字技術(shù)在實(shí)體經(jīng)濟(jì)中的落地和應(yīng)用 11:34:49
樂視回應(yīng)還有400多人 期待新的朋友加入 11:29:25
亞馬遜表示 公司正在將其智能購(gòu)物車擴(kuò)展到馬薩諸塞州的一家全食店 10:18:04
三星在元宇宙平臺(tái)推出游戲 玩家可收集原材料制作三星產(chǎn)品 09:57:29
特斯拉加州San Mateo裁減229名員工 永久關(guān)閉該地區(qū)分公司 09:53:13