成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你可能不知道的程序員弱爆特征

開(kāi)發(fā) 前端
本文主要列舉弱爆程序員的特征,如果你出現(xiàn)過(guò)以下癥狀之一,并不代表你就是弱爆了,但是如果你一直出現(xiàn),乃至一說(shuō)到這個(gè)大家就能聯(lián)想到你,那么你就得小心了!

首先說(shuō)明:

1、以下特征是真實(shí)遇到過(guò)的,同事犯過(guò)的,乃至我自己也犯過(guò)的;

2、為了劇情需要,某些例子進(jìn)行了一些夸張修飾等演繹創(chuàng)作,如無(wú)雷同,請(qǐng)勿生氣;

3、如果你出現(xiàn)過(guò)以下癥狀之一,并不代表你就是弱爆了,但是如果你一直出現(xiàn),乃至一說(shuō)到這個(gè)大家就能聯(lián)想到你,那么你就得小心了;

4、如果你是集這幾個(gè)的大成者,恭喜你,你已經(jīng)找到了離開(kāi)這個(gè)行業(yè)的充足理由了。

好了,搞定!

“那個(gè)Bug解決了嗎?”

“好了,搞定!”

“這么快?”

正當(dāng)你非常欣喜的時(shí)候,就傳來(lái)了噩耗:剛才還能編譯成功的,就失敗了。(好吧,我們的集成編譯尚未成功配置上,理論上這種事情應(yīng)該會(huì)被退回。)又或者能編譯成功,但是呢,原來(lái)明明能起作用的一個(gè)下拉框,突然發(fā)神經(jīng)的不起作用了。最隱蔽的莫過(guò)于,一切正常,但是當(dāng)你看到代碼的時(shí)候,你就暈厥過(guò)去了。比如我們?cè)?jīng)發(fā)現(xiàn)了一個(gè)Bug,簡(jiǎn)單說(shuō)就是每次用戶(hù)點(diǎn)擊某個(gè)東西,就會(huì)執(zhí)行下面的這段C#代碼:

  1.  controlPropertyPanel.PropertyChanged += this.UpdatePropertyOnChanged; 

這個(gè)Bug很明顯會(huì)導(dǎo)致速度越來(lái)越慢,因?yàn)橥粋€(gè)更新操作會(huì)被更新N次,并且這個(gè)N會(huì)越來(lái)越大。其實(shí)這個(gè)Bug已經(jīng)夠弱了,但是后來(lái)居然被修改為:

  1. controlPropertyPanel.PropertyChanged -this.UpdatePropertyOnChanged;  
  2. controlPropertyPanel.PropertyChanged += this.UpdatePropertyOnChanged; 

這段代碼能編譯,能執(zhí)行,但是就是弱爆了。因?yàn)檫@不僅僅沒(méi)有從根本上去掉造成問(wèn)題的邏輯,還會(huì)帶來(lái)更多的困惑:為什么要先減后加呢?

我覺(jué)這吧,這類(lèi)問(wèn)題都是因?yàn)橹幌虢鉀Q一些表面的東西為目的,完全不管底下的其它任何問(wèn)題而造成的。

那估計(jì)是他的Bug

 

“這個(gè)問(wèn)題為啥還沒(méi)解決呢?”

“我覺(jué)得應(yīng)該是他那里邊的Bug,我調(diào)不了。”

“哦……”

這個(gè)“他”可以是某一位同事,或者前同事,或者微軟,或者別的什么公司,再或者某個(gè)開(kāi)源代碼的作者。這些個(gè)我都遇到過(guò),比如說(shuō)是另一位現(xiàn)在在職的同事吧。當(dāng)你告訴這位同事這個(gè)Bug似乎在他那兒,并且問(wèn)問(wèn)什么時(shí)候解決,他也許會(huì)很愧疚的立刻調(diào)試,可***結(jié)果卻仍然是開(kāi)頭對(duì)話(huà)主人翁的所寫(xiě)代碼的問(wèn)題。

再比如說(shuō)是微軟吧,那么對(duì)話(huà)可能就會(huì)包括:“啊,SilverLight真是爛,老是內(nèi)存泄漏、崩潰等……”“是啊是啊!爛死了!早知道用Flash了。”又或者會(huì)說(shuō):“微軟就是爛,Java就是好。”其實(shí),我不想比較什么SilverLight還是Flash,.NET還是Java。因?yàn)樵谟懻撨@些問(wèn)題之前,先***想想,這真的是別人的錯(cuò)么?相信是其他人的錯(cuò)是一件很簡(jiǎn)單的事情,因?yàn)檫@樣推脫之后你就可以啥都不做了,反正不是我的錯(cuò)。

如果真的發(fā)現(xiàn)了這是別人的Bug并證明了,那倒好說(shuō)。但這種特征是一種純粹的懷疑,并沒(méi)有絲毫的證明。在仔細(xì)找了自己所有可能犯的錯(cuò)之后,如果你懷疑是別人的問(wèn)題,那請(qǐng)求證一下。

無(wú)圖無(wú)真相!

“樓主,無(wú)圖無(wú)真相啊!”

“樓主,無(wú)代碼無(wú)真相啊!”

“樓主,給翻譯一下啊!”

據(jù)說(shuō)Linus在別人詢(xún)問(wèn)Linux內(nèi)存管理的一個(gè)什么問(wèn)題時(shí),回答道“Read the fxxxing source code”,很多時(shí)候我也有類(lèi)似的沖動(dòng)。我發(fā)現(xiàn)在信息發(fā)達(dá)的時(shí)代,不少人的閱讀能力、動(dòng)手能力都嚴(yán)重退化了。這些人***就是你親自來(lái)幫他把問(wèn)題解決了,他才不想了解里面到底發(fā)生了什么。這種問(wèn)題體現(xiàn)在博客里面,就是寄希望于你寫(xiě)得圖文并茂,圖嘛***花里胡哨同時(shí)言簡(jiǎn)而意概,文字嘛***大段大段的代碼。其實(shí)圖不是重要的,只是為了好看,重點(diǎn)是代碼,這樣他一Copy就可以直接解決他們的問(wèn)題了。

比方說(shuō),Silverlight里面沒(méi)有各種圖像格式的編碼器,于是當(dāng)你希望保存Jpg的時(shí)候怎么辦呢?Google一下,發(fā)現(xiàn)原來(lái)有人寫(xiě)過(guò)一個(gè)FluxJpeg的編碼器。下載下來(lái)一跑,唉還真能用哎。之后就直接簽入,也不捎帶看一下有沒(méi)有什么問(wèn)題,或者設(shè)計(jì)不合理的地方。(其實(shí)真的有,會(huì)很慢,因?yàn)橛写罅亢翢o(wú)必要的數(shù)組拷貝。)

又或者說(shuō),遇到了某個(gè)Bug,搜索一下發(fā)現(xiàn),哎,還真有人遇到過(guò),而且還有代碼哎!把代碼扒下來(lái)一跑,發(fā)現(xiàn)好像解決了,至于為什么就不管了。甚至還遇到過(guò)根本就不管解決不解決問(wèn)題,反正代碼扒下來(lái)了就簽入了的。

再比如,寫(xiě)一篇博客講解如何縮減.NET編譯出來(lái)的文體大小,其中提到許多概念需要先閱讀微軟官方的一個(gè)文檔。結(jié)果,還是會(huì)有人回復(fù)說(shuō),你那個(gè)文章里面提到那么多的Blob,也不說(shuō)說(shuō)Blob里面都有什么,大概是很不滿(mǎn)意吧。可是這個(gè)文檔里面都有啊,難道就不能自己閱讀一下?其實(shí)即便我連這個(gè)文檔都沒(méi)有給出,自己也應(yīng)該有這個(gè)能力去進(jìn)行思考,去動(dòng)手尋找。

千萬(wàn)不要退化成一個(gè)啥都要?jiǎng)e人給你嚼爛了才能夠吞下去,吞下去也不會(huì)消化吸收的人。這樣的人大概別人給的是大便,只要有代碼無(wú)真相,也會(huì)照樣吃下去的。若真如此,那你打算如何提高呢?

那是個(gè)對(duì)象!

“這個(gè)ExpressionVisitor,它是用來(lái)干什么的?”

“……”

“好吧,或者這么說(shuō),他是一個(gè)什么東西?”

“他是一個(gè)對(duì)象!”

“啊?”

“哦,是一個(gè)對(duì)象的實(shí)例。”

大概這樣的回答,和那個(gè)微軟工程師說(shuō)“你在直升飛機(jī)上”差不多——反正你也不能說(shuō)是錯(cuò)的,但是就是沒(méi)什么意義。其實(shí)不知道沒(méi)啥問(wèn)題,人又不是神,怎么可能都知道呢?不去仔細(xì)了解和學(xué)習(xí)問(wèn)題也不嚴(yán)重,因?yàn)槟憧梢愿摹5钱?dāng)你習(xí)慣性的隨便找一個(gè)絕對(duì)沒(méi)錯(cuò)但又不說(shuō)明任何問(wèn)題的答案,甚至似是而非的東西來(lái)對(duì)付的時(shí)候,你就離弱爆的邊緣很近了。

當(dāng)然,上面的對(duì)話(huà)也許是比較極端的。一個(gè)稍弱一點(diǎn)的對(duì)話(huà)版本是:

“這個(gè)內(nèi)存泄漏是怎么造成的呢?”

“嗯,會(huì)不會(huì)是圖片放的位置不對(duì)呢?”

哈,還是很夸張對(duì)吧?沒(méi)辦法,寫(xiě)博客有時(shí)候需要夸張的文字,否則你無(wú)法理解我的意思是:有時(shí)候,大家會(huì)傾向于從自己的記憶中尋找一些相似的物品,然后選擇相似度自認(rèn)為比較高的東西出來(lái)當(dāng)作答案,而全然不管兩者之間的邏輯是否有哪怕那么一絲的關(guān)聯(lián)。也許很多時(shí)候,我們確實(shí)需要從相似的東西開(kāi)始,但請(qǐng)別把他當(dāng)作終點(diǎn)。程序是需要嚴(yán)謹(jǐn)?shù)倪壿嫷模阅阋脖仨毞浅?yán)謹(jǐn)?shù)娜ネ蒲荨?/P>

關(guān)于這類(lèi)的問(wèn)題真的太多太多了,比如我指著下面這段代碼當(dāng)中的紅字:

  1. var dictionary = new Dictionary<string, string>();  
  2. dictionary["someKey"] = “someValue”; 

“這句話(huà)說(shuō)明了什么?”

“說(shuō)明dictionary是一個(gè)數(shù)組。”

集大成者

***我舉一個(gè)集大成者的例子,說(shuō),有個(gè)任務(wù)是要在SilverLight應(yīng)用上面添加一個(gè)“收藏本站點(diǎn)”。好,怎么解決呢?網(wǎng)上一搜,發(fā)現(xiàn)有很多這樣的代碼:

  1. function AddBookmark(Url, LabeName){  
  2.     if (document.all)  
  3.     {  
  4.       window.external.addFavorite(Url, LabeName);  
  5.     }  
  6.     else if (window.sidebar)  
  7.    {  
  8.       window.sidebar.addPanel(LabeName, Url, '');  
  9.     }  
  10.   } 

然后直接扒下來(lái)就放上去了,通過(guò)某種方式在SilverLight中調(diào)用這段JavaScript,簽入,搞定了!結(jié)果到了測(cè)試那邊發(fā)現(xiàn)完全不能用,無(wú)論在IE6/7/8/9/10,還是在FireFox/Safari/Chrome上面,都不能使用。我問(wèn):

“這是什么原因呢?”

“不知道,反正瀏覽器報(bào)告沒(méi)有權(quán)限,可能是瀏覽器的安全設(shè)置原因吧,或者操作系統(tǒng)的Bug,也可能是瀏覽器的某種Bug?”

“不可能啊?這些代碼存在很多年了,要有問(wèn)題早就能在網(wǎng)上搜索到了。”

“那也許是SilverLight調(diào)用的時(shí)候有什么安全問(wèn)題。哎!SilverLight好煩啊!”

“那怎么還沒(méi)有解決呢?”

“好,我馬上解決它!”

很快,那段Javascript就變成了:

  1. function AddBookmark(Url, LabeName){  
  2.     try 
  3.     {  
  4.       if (document.all)  
  5.       {  
  6.         window.external.addFavorite(Url, LabeName);  
  7.       }  
  8.       else if (window.sidebar)  
  9.       {  
  10.         window.sidebar.addPanel(LabeName, Url, '');  
  11.       }  
  12.     }  
  13.     catch 
  14.     {  
  15.       alert("您的瀏覽器因?yàn)榘踩O(shè)置的問(wèn)題無(wú)法收藏,請(qǐng)手動(dòng)添加收藏!");  
  16.     }  
  17.   } 

看到這樣的代碼,我徹底震驚了。親自調(diào)試了一下,發(fā)現(xiàn)確實(shí)報(bào)告了一個(gè)“沒(méi)有權(quán)限”的異常。但是,我還發(fā)現(xiàn),那個(gè)Url參數(shù)的值是“www.adomainname.com\test\page.html”。那這不廢話(huà)么!瀏覽器認(rèn)為你要收藏的是一個(gè)本地硬盤(pán)上的路徑,怎么可能在一個(gè)Internet Zone上允許收藏這種路徑呢?我于是指著代碼問(wèn):

“這個(gè)Url是什么?”

“是一個(gè)變量”

“啊?”

“哦,不對(duì),是一個(gè)參數(shù)。”

你是否也有類(lèi)似的經(jīng)歷呢?

原文:http://coolshell.cn/articles/5292.html

【編輯推薦】

  1. 硅谷“老黃忠”程序員:Google+設(shè)計(jì)者上榜
  2. 我們程序員為什么難晉升
  3. 給年輕程序員的建議
  4. 程序員應(yīng)如何更好的與非程序員一起工作
  5. 每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby
責(zé)任編輯:陳貽新 來(lái)源: 酷殼
相關(guān)推薦

2021-02-08 22:32:43

程序員 靜態(tài)網(wǎng)頁(yè)

2012-11-23 10:57:44

Shell

2015-08-13 09:03:14

調(diào)試技巧

2019-11-20 10:25:06

sudoLinux

2020-01-29 19:40:36

Python美好,一直在身邊Line

2021-01-05 11:22:58

Python字符串代碼

2023-02-27 09:20:24

絕對(duì)定位CSS

2023-01-29 09:46:47

Dialog彈窗模態(tài)

2014-12-08 10:39:15

2019-11-25 14:05:47

Python裝飾器數(shù)據(jù)

2021-07-12 07:59:06

安全 HTML 屬性

2013-06-09 13:24:00

程序員Bug

2021-12-17 00:10:00

ChromeDevtools功能

2018-05-10 11:50:13

Docker容器冷知識(shí)

2010-07-26 13:24:11

2011-02-14 16:11:44

2020-05-09 08:48:21

JavaScript原生方法代碼

2010-08-10 09:13:49

Linux用戶(hù)

2010-08-06 13:15:35

2015-05-14 15:59:33

DockerLinux容器管理工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲人成人一区二区在线观看 | 99热都是精品 | 奇米av| 7777精品伊人久久精品影视 | 欧美一级免费 | 视频一区中文字幕 | 精品二| www.男人天堂.com | 日韩播放 | 综合自拍| 欧日韩在线| 91精品国产91久久久 | 在线观看国产视频 | 欧美理论片在线观看 | 日韩国产专区 | 欧美视频免费 | 一级片视频免费 | 久久久久久久久久久爱 | 欧美日韩一区二区三区四区五区 | 欧美精品一区在线发布 | 国产欧美精品一区二区色综合朱莉 | 91精品久久久久久久久 | 日韩手机在线视频 | 欧美日韩中文在线观看 | 成人免费看黄网站在线观看 | 精品一区二区三区日本 | 日韩中文字幕 | 在线激情视频 | 日韩在线观看 | a免费视频 | 91视频国产一区 | 亚洲三区视频 | 中文字幕日韩在线观看 | 99精品一级欧美片免费播放 | 欧美一区两区 | 日韩视频一区在线观看 | 欧美aaa| 91精品一区二区三区久久久久 | 日韩成人av在线 | 国产成人综合一区二区三区 | 精品一区二区在线视频 |