第5章 什麼叫防禦,性程式設計啊? (第1/2頁)
挨踢的老臣提示您:看後求收藏(奇妙書庫www.qmshu.tw),接著再看更方便。
第5章
什麼叫防禦,性程式設計啊?
然後看著控制面板沒有異常報錯。
開啟網頁,輸入地址,用滑鼠點選功能,一切正常。
如此這般,幾個功能全部搞定。
陳默活動了一下手指,“其實正常流程應該先寫單元測試,再實現功能,不過一是時間有限,二是這點程度還不需要我寫單測。
這樣你這個專案的工作就完成了,這幾天應該可以不用加班了。”
齊萌萌親眼看到程式碼一點點豐滿起來,聚沙成塔,充滿了玄奧的規則,臉上充滿了敬畏。
這些程式碼在師父的手裡彷彿一個個聽話的小朋友,令行禁止,異常聽話。
原計劃她一週工作量的功能實現,在師父的手裡沒堅持過一刻鐘。
看了看時間,13分14秒,這就是她與師父之間的鴻溝,
“剛才這些,其實有一個統一的名稱,叫防禦性程式設計!”
不知道是否錯覺,齊萌萌感覺師父說到最後莫名頓了一下。
“什麼叫防禦性程式設計啊?”
陳默坐回自己座位,衝對方勾了勾手,示意過來,“防禦性程式設計是一種細緻、謹慎的程式設計方法。
它要求程式設計師在編寫程式碼時預見可能出現的問題,並提前採取措施來避免這些問題。
這種程式設計習慣更加註重錯誤的預防和控制,以減少可能出現的災難性後果。
剛才的程式碼示範是名門正派的用法,正所謂道高一尺魔高一丈。
接下來我所教你的乃是防禦性程式設計的邪道用法。
其實原來是沒有這些的,隨著公司與員工之間的博弈加劇,往往後者處於絕對的劣勢。
一些前輩就想到了此招,那就透過編寫晦澀難懂的程式碼,令自己手裡握有一些籌碼,即便自己最後被裁,也要讓自己負責的那些程式碼是不可維護的!
從而在一定程度上提升自己的‘不可取代性’,達到讓公司投鼠忌器的目的!
要不看你是我徒弟,這招我一般不輕易示人,因為一旦施展,必將引發嚴重的後果,如同七傷拳,傷人更傷己。
不過為師目前功力深厚,已經可以無視這種副作用了。”
說著陳默把自己之前負責的主要功能模組程式碼找出來,陷入了沉默。
此時的他再看自己之前所寫的這些程式碼,簡直沒眼看,只是為了完成功能而完成功能,毫無優雅可言,比齊萌萌那坨程式碼能強上一些,但也有限。
過了一會,陳默方才把螢幕稍微向齊萌萌那邊偏了偏。
這一次陳默全功率開動,雙手噼裡啪啦快速敲擊著鍵盤,速度快的都能看到殘影,這是豐富的經驗和年輕的肉體融合才具備的功力。
這讓他很是滿意現在的狀態,年輕真好,隨後就聽到齊萌萌的壓抑不住的驚歎,“哇,師父,伱好快.”這可不興說.陳默眼角抽了一下,手中原本行雲流水的敲擊聲瞬間頓了一下,速度稍微降檔原本的程式碼被改的面目全非,當然陳默不是跟拼積木一樣在上面不斷累加,而是怎麼複雜怎麼來。
迴圈巢狀,高階語法,在程式碼中封裝了一層又一層“防盜門”,涉及範圍包括不限於程式碼、配置檔案、資料庫原本二十行就能實現功能的程式碼,短短几分鐘就極速膨脹了近千行,別看多,乍一看充滿了程式碼的美感,如果仔細一讀會讓人頭皮發麻,技術越高的選手越容易陷進去,不可自拔。
相當於把原本一兩句話能說清的事情,水上幾十章,比如山坡上突然冒出了一夥山賊,定睛一看竟是梁山一百單八將,他們分別是“宋江、吳用、盧俊義、林沖.”名字唸完再念綽號,然後背景羈絆全部整上讓人看上一眼就忍不住罵娘,簡直不當人子。
在寫程式碼的過程中,陳默每寫下一小段,都會跟齊萌萌解釋其含義,深入淺出。
而齊萌萌看著面前的這堆程式碼,在師父的鬼斧神工下,不斷拆解、崩散、融合、重組,變成了一點都看不懂的樣子,臉上滿是震撼。
這時一個員工從旁邊經過。
原本已經路過陳默工位的他耳朵微微一動,咦了一聲又折返了回來,隨後在後面津津有味地看了起來。
【陳默敲程式碼的速度見漲啊,都快趕上我了,難道扇老闆還有這好處?】
【哎,這些已經測試完畢的程式碼為什麼要動?】
【這是在最佳化?不,這改動程度已經是重構了,現在重構?都快驗收了這不是沒事找事麼?】