工程師們你們寫完程式碼後還做些什麼No.115
我知道你們寫程式碼都喜歡一把梭,if else for ,業務流程寫完,然後就開始三部曲。git commit -> git push -> publish
停停停,憋這麼自信好莫,你還有很多事情可以做。
?step1: 拜託你,再次檢查一下所寫的程式碼是不是符合業務需求。
有的工程師寫完的一堆透過編譯器檢查的程式碼,壓根就沒符合業務需求,或者說業務真正的需求。
比如:
請幫我去街上買兩個包子,如果看到西瓜,買一個。
然後某程式設計師的實現就是
if( see watermelon){
buy a watermelon;
return;
}
buy two baozi;
WTF????
你是瓜娃子麼?
?step2: 拜託你,再檢查檢查系統邊界吧。
totolNumberOfBaozi = totolNumberOfBaozi - numberOfBaoZi;
好了,突然有人喊了一句,給我來 -1 個包子,總包子數蹭蹭蹭增長,棒棒噠。給你100婚?。
?setp3: 拜託你,再檢查檢查索引。
select * from baozi where size > 100g and size <10000g;
嗯,baozi1 這個有5g,不符合
嗯,baozi2 這個有5g,不符合
嗯,baozi3 這個有6g,不符合
嗯,baozi4 這個有300g,不符合
...100萬baozi後
嗯,baozi1000000 這個有20g,不符合
嗯,baozi1 這個有45g,不符合
好了,基礎表資料有1000萬,每次都全表掃描,一上線,bingo,系統爆炸了。
?setp4: 拜託你,再寫寫註釋吧,比如上邊的買包子程式寫成這樣。
if( catch 1129idj){
buy a 1#ewlj3-0;
return;
}
buy two @#MK@L;
好嘞,不寫註釋明天你自己就忘了兄dei。
?setp5: 拜託你,打點有用的日誌吧。
if( see watermelon){
buy a watermelon;
return;
}else if( see beautiful){
if(beautiful > 18){
buy naicha;
}
else{
boommmmm!!!!
}
}
buy two baozi;
好了,系統爆炸了,一點日誌都沒有,只能看到爆炸了。。。
?setp6: 拜託你,試著把所有的能想到的監控全加上。
介面成功率啊,響應時間啊,錯誤告警啊,上下游告警啊,主機告警啊,資料庫成功率告警啊,資料庫響應時間告警啊。
?setp7: 拜託你,針對告警想一下你的解決方案。
告警出來了,總得處理吧?提前想一想沒什麼壞處。
?setp8: 拜託你,想一下怎麼樣讓你的系統不會崩。
異地容災?介面限流?介面防刷?服務降級?很多事情可以做,好好思考一下,好好思考一下。
?setp9:拜託你,準備一下答疑吧。
作為一個工程師有好多時間都在答疑,無論這些問題是來自合作方,業務方還是客戶,總會有很多人因為不瞭解你所寫的系統邏輯而諮詢你一些細節點,做好答疑文件、答疑工具 可能會節省你很多很多的時間。
就醬,請敬畏你的程式碼,它們很強大,破壞力也很大。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4560/viewspace-2823371/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 幽默:編寫Python程式碼你們使用什麼偵錯程式?Python
- DevOps工程師到底做些什麼?dev工程師
- 1024:寫給還活著的研發工程師們工程師
- Vue 3.0 來了,我們該做些什麼?Vue
- 周朝陽:規則本就存在,我們能做些什麼
- 誰說Python找工作難?人生苦短,Python工程師你們還好嗎?Python工程師
- 119的節日的安排,我們應該做些什麼
- 35歲以上的程式設計師們,後來都幹什麼去了?程式設計師
- 從前端工程師到前端架構師, 我們經歷了什麼?前端工程師架構
- 現如今的技術浪潮中,我們到底該做些什麼?
- 為什麼遊戲還沒賣出去,你們偏偏要作死?遊戲
- 程式碼管理流程你們是怎麼做的
- 我們一直談論“寫程式碼”,但你會“讀程式碼”嗎?
- 程式設計師們,你們再這樣下去會沒朋友的程式設計師
- 我們為什麼要用英文寫文件?
- 你們寫程式碼兩年的時候工資多少阿
- 《後來的我們》,為什麼我們會錯過彼此?
- 為什麼他們還在用 iPod 聽歌?
- 2019 我們除了Android還可以學什麼?Android
- 你們以為的女程式設計師程式設計師
- 你們不能這樣招聘程式設計師程式設計師
- 為什麼你們都這麼厲害。。。。
- 搞定 CompletableFuture,併發非同步程式設計和編寫序列程式還有什麼區別?你們要的多圖長文非同步程式設計
- 程式設計師朋友們,請答應我?別再去東南亞寫程式碼了好麼?程式設計師
- 有贊996刷屏:男程式設計師們,別再低頭寫程式碼了996程式設計師
- 其實,我們們程式設計師過了30歲,還可以更牛逼!程式設計師
- 幽默:當程式設計師不想解釋他們做了什麼程式設計師
- 我們為什麼要技術寫作
- [譯]我們為什麼要寫 super(props)?
- 國外機器學習工程師正面臨失業,為什麼他們還在堅持學習ML?機器學習工程師
- 現在的你,是開發工程師、程式設計師還是碼農?工程師程式設計師
- 好程式設計師告訴你HTML好在哪裡,為什麼值得我們學習程式設計師HTML
- 你們用的是什麼電腦,都什麼配置
- PHP架構師成長必須做些什麼?你要準備些什麼?PHP架構
- 月薪30-50K的大資料工程師們,他們背後是如何學習的大資料工程師
- 後疫情時代,CIO們都在想什麼
- Typescript 中的泛型是什麼 - 為什麼使用它們,它們如何與程式碼示例一起使用TypeScript泛型
- 當我們談 Java 併發的時候,你們在談什麼?Java