CSDN《某一程序员竟然吃过shi?让我们走进他的生活,揭露背后的故事》
CSDN《某一程序員竟然吃過屎?我們走進他的生活,揭露背后的故事》
——————————接下來讓我們走進他的故事 到底是什么原因讓他吃屎
這是這位程序員的自曝,我很好奇的不是他吃過屎,我在好奇是啥味的~
接下來我們開始咨詢這位平平無奇的程序員,究竟是因為什么導致他進行這種行為?
相信不少聰明的程序員已經知道是為什么了會吃屎了~
沒錯,就是?的代碼屎山!!!
說一個網友經歷過的一座「屎山」,入職一家成立10年的軟件公司,網友當時應聘的是中級程序員,但在入職幾個月后,就神奇的調整到了高級程序員,這并不是因為他在幾個月中技術水平跨越式提升,而是因為這三個月中發生了以下事情:
- 前任組員一號和我完成交接之后跑路了!
- 前任組長和新招來的組長交接之后跑路了!
- 前任組員二號和新招來的初級程序員交接之后跑路了!
- 新任組長和我交接之后跑路了!
- 新人組員(女)在工位掩面痛哭之后,換組了!(捂著臉掉眼淚不發出聲音的那種哭)
- 組內人手嚴重不足,我白天解決生產bug,晚上寫新需求!
以上只是「屎山」一角,「屎」是因為祖傳代碼里面有很多問題是真的臭,「山」是因為屎太多了。最諷刺的是,你可能為了治理「屎山」,也在里面拉了幾次「屎」…
有時候心血來潮改點東西……代碼從頭錯到尾……//動都不要動,我試過了
有時候當你只刪了一行代碼時,可能會發生下面這種情況
你永遠都不知道成年人的崩潰往往只在一瞬間!!!!
有的人會說我不過就是動了一點點,為什么會翻車,往往自己的一點點想法,都有可能成為壓死駱駝的最后一根稻草。
針對祖傳代碼,我總結一下我的人生感悟,就是四個大字:
以卵擊石
作為一個經歷過幾次祖傳代碼的過來人的建議。
第一條:千萬不要試圖重構。
相信大家都聽說過這么一句話。十年程序員血與淚,千萬別重構代碼!
別把重構的路想得太容易走了,因為,重構可以出乎你意料地簡單,也可以出乎你意料地復雜
對屎山為什么不重構?
比較年輕的程序員往往會有重構屎山的沖動,這種想把代碼寫好的意愿是極好的。但是重構并非只是把爛代碼刪掉后簡單的再寫一遍。如果在重構之前沒有深思熟慮,再寫一遍的代碼不見得會比“屎山”更好。要不要重構
第二條:代碼精簡祖傳代碼有很多沒用的代碼,全是前輩們在走成仙路的時候留下來的坑
你可以把它們全刪掉,有的時候能起到優化祖傳代碼的目地的,這是最簡單直接的優化手段,簡單干脆直接暴力,可能會提高后期代碼的編譯速度。
第三條:不斷打補丁有Bug就補Bug
作為一個程序員,你應該感謝屎山代碼,以及大公司必然屎山代碼的工程本質。
如果代碼工程跟造橋打灰一樣是可以用工具集約化規模化,
用儀器保證精確性,從而保質保量的……縫縫補補又一年。如果不想再努力內卷,這么做那么可以長長久久的在公司過下去。
第四條:修改部分SQL語句和優化SQL如果是SQL查詢慢
其實這個很好辦,開啟慢查詢,找到查詢慢的地方,做減法,如果是多聯表的查詢,進行數據冗余,減少查詢量。檢查索引(既然是祖傳屎山了,我就不相信數據庫索引就一定會建得很完美),重寫SQL語句。這種改法非常實用,從源頭解決慢的問題。比如你一個頁面祖傳代碼有100句SQL查詢,你優化了一下,變成50句,速度能不上去?可比改代碼方便多了。或是你加一個索引,原來一句SQL要查20秒的,現在就變成5秒了,真的是不要投入的買賣。
第五條:第五條是從內部改良,或者是從外部改良。
如果可以避免成為代碼屎山呢?
狗屎山都是一點點堆積的,沒有code review的公司格外容易,不說這種杜絕方案,新人無論如何不要留下這樣的代碼,自己寫自己注釋了留下還提交到協作平臺,沒那么金貴,提上去等隊友圍觀嗎
所以避無可避,總會碰到需要重構代碼的時候。只是盡量寫得好懂些,寫好測試,這樣重構代碼的時候不會特別痛苦。千萬要寫注釋之類的,一個好的習慣會拯救許許多多的可憐人。比如我,已經在跑路的邊緣了。
就算你寫代碼的時候覺得自己是神一樣不可能出問題,過了幾個月一看還是會覺得屎一樣。
以前我一直想寫一個邏輯分明,沒有多余代碼的項目。
第一天:產品經理把項目給我了,然后說一個月之后要上線,一般,呵呵,小意思
第二天:產品說要小小的改動一下,嗯嗯,沒問題,小意思
第三天:產品說,要加一個功能,嗯吶,妹兒難題,小意思
第四天:產品說,這個功能需要這么改一下,嗯?
有點難度啊,但是還是可以改的,產品沒說要延期上線。
第五天:這里,還有這里,還有這里這里都需要改一下,我一看代碼,頭疼了,但是還是上手去改了。…
第二十天:產品告訴我,甲方覺得剛開始沒有規劃好,需要改很多地方我:可以的,上線能不能延后一下?產品:這個是不可能的雖然很不愿意,但我還是按照產品的意思去辦事兒了,畢竟甲方爸爸踢的要求嘛
第三十天:產品過來做我旁邊,一句不說,我心想完了,又得改了,或者新的需求了。
過了五分鐘產品開口了:哥,需求有些變動,咱們開個小會?我:可以,約會議室了嗎?
產品:現在已經準備好電腦,投屏,文件了,現在就走?然后過了半天終于對完了各種需求。這時候想要再不寫屎一樣的代碼是不可能了,上線時間是哪個時間,項目可不是剛開始的項目了,屎一樣的代碼就是這么出來的,我喜歡寫代碼。
今天就水到這里,本人還有半個小時要下班了,不能摸魚了,要好好上班
喜歡本人文章的可以給個三連哦~~~
接下來就來講一講本人在原力計劃群里面采訪的那位程序員,emmm
還是加一下馬賽克吧~
bit哥的博客主頁:https://blog.csdn.net/A757291228(喜歡可以去關注一下哦)
總結
以上是生活随笔為你收集整理的CSDN《某一程序员竟然吃过shi?让我们走进他的生活,揭露背后的故事》的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 俞敏洪回应转型:凭什么新东方不能做农业?
- 下一篇: Java开发面试高频考点学习笔记(每日更