天貓登陸(天貓登陸**)
前沿拓展:
天貓登陸
?百度搜天貓
對于程序員來說,bug很討厭。每天重復(fù)著寫代碼、找bug、修改bug的動作。按理說互聯(lián)網(wǎng)巨頭的產(chǎn)品,bug應(yīng)該比較少。但是實際上,無論是用百度、天貓、谷歌等產(chǎn)品,經(jīng)常都會出現(xiàn)這些低級的bug,讓人很火大。這不,有個網(wǎng)友就在網(wǎng)上吐槽:
這個網(wǎng)友稱,騰訊QQ空間好友的動態(tài)里,經(jīng)常沒辦法顯示好友的備注名稱。安卓客戶端的同個頁面,可以打卡很多次,這樣導(dǎo)致的后果就是,返回的時候要按很多次的返回鍵。不僅如此,天貓登錄界面在firefox下的兼容性很差。例如說,明明沒有顯示出來驗證碼,卻要求登錄用戶輸入驗證碼。
還有在google云端硬盤上傳文件夾,結(jié)果是亂碼。
關(guān)于網(wǎng)友提出的這個問題,大家深有感觸。但是很多網(wǎng)友還是覺得,程序員混口飯吃不容易,莫要再截圖打兄弟們的臉了。
網(wǎng)友一:
巨頭的系統(tǒng)都很龐大,產(chǎn)品組的同事每提一個bug,程序員要先去重現(xiàn)bug重現(xiàn),然后看它跑的哪幾行代碼,再去改代碼。這時本地開發(fā)算是完成,也通過測試,可以提交到團(tuán)隊的測試環(huán)境了。但是有時候,好幾個bug背后的代碼相互依賴,可能你的同事 merge 的時候把你的代碼沖掉了,或者在中間插入了其他的代碼,然后又要想辦法重新改,或者說產(chǎn)生了新bug。
網(wǎng)友二:畢竟互聯(lián)網(wǎng)才發(fā)展了這么些年,還很不完善。
網(wǎng)友三:沒有百分百的測試覆蓋率,只要是人寫出來的程序,做出來的產(chǎn)品,就會有bug。無須大驚小怪。
網(wǎng)友四:無論什么公司的產(chǎn)品都不可避免有一些bug,互聯(lián)網(wǎng)巨頭也無法例外而且還有可能更多。
網(wǎng)友五:有人的地方,就有江湖,和BUG。
看來大家對待bug,態(tài)度還是很寬容的。其實也是,再好的程序,可能也會出現(xiàn)代碼,更何況互聯(lián)網(wǎng)巨頭這些擁有龐大系統(tǒng)的代碼庫。下面,有個網(wǎng)友分享了一個,據(jù)說是最大的bug。
Azure底層fabric有過這么一段code,目的是在做創(chuàng)建一張新的證書并設(shè)置有效期為一年后這件事。
那么要先獲得一年后的日期,本來用DateTime.Today().Add(new TimeSpan(365,0,0,0))就可以了(編輯:經(jīng)提醒,AddYear(1)是最簡單而且更精確的)。寫代碼的哥們腦洞了下寫成new DateTime(today.Year+1,today.Month,today.Day)。經(jīng)過各種測試運行一直都沒問題。直到2012年2月29日,ArgumentOutOfRangeException。后果是整個Azure掛了十多個小時吧。
雖然說bug不可避免,但是寫代碼時,最好還是盡量減少bug,下面分享幾個方法。
1.寫代碼時不要分心,缺陷代碼頭號敵人就是分心。有些時候,一個Twitter或GTalk都會將你的思路打斷,這時候你需要集中注意力。
2.集成測試或者單元測試模塊,寫代碼一定要遵循測試、代碼、測試的原理。
3.如果代碼庫已經(jīng)測試好,是很多開發(fā)者都使用過的,經(jīng)過很多次測試的,而且你又打算實現(xiàn)這個代碼庫同樣功能,這時候,你可以盡情的使用這些代碼。
4.編譯器的警告,千萬不能忽視。通常情況下,編譯器很容易將代碼中存在的bug識別出來。對代碼進(jìn)行調(diào)試之前,最好是使用最高級別的警告,來編譯代碼,看看有沒有明顯的錯誤存在。
5.日志:日志工具安裝很方便,它可以把日志分為info、warning、error三大類型。而通過這些日志,你很快就可以**到到底發(fā)生什么。
6.代碼審查:提交代碼時,最好讓別人審查一下你的代碼,以此看看有沒有錯誤出現(xiàn)。
其實出現(xiàn)bug,算是很正常的一件事,程序員相信都不敢很絕對的說自己寫的代碼不會出錯,當(dāng)然,谷歌技術(shù)大牛Jeff Dean除外,因為他號稱自己的代碼從來不會出錯。但是作為程序員,還是盡量避免出現(xiàn)bug。
學(xué)編程技術(shù),就到W3Cschool,如果你喜歡我們的文章,可以點擊右上角關(guān)注我們;如果你想看到更多IT界的資訊,可以加我們的公眾號。
公眾號:w3cschoolcn
拓展知識:
原創(chuàng)文章,作者:九賢互聯(lián)網(wǎng)實用分享網(wǎng)編輯,如若轉(zhuǎn)載,請注明出處:http://www.uuuxu.com/20220813464353.html