在軟件開發(fā)的過程中执虹,經(jīng)常聽到一個詞叫“代碼復(fù)用”,就是根據(jù)具體業(yè)務(wù)場景唠梨,把一些比較公用的東西寫出來袋励,封裝固定方法或者類文件,然后多處調(diào)用,這么做的好處就是大大提高了開發(fā)效率茬故,節(jié)省了勞動成本盖灸,減少了工作量,“代碼復(fù)用”是軟件思想中最普遍的一個思想了磺芭,但是在現(xiàn)實中并不是所有人能夠?qū)Α按a復(fù)用”思想良好運(yùn)用赁炎,最后是“代碼復(fù)用”變成了“代碼復(fù)制”!近期一名碼農(nóng)網(wǎng)友分享了他身邊的一個故事钾腺。
據(jù)這名碼農(nóng)網(wǎng)友說徙垫,他算是一名應(yīng)屆生,不過現(xiàn)在也算是對公司的各項業(yè)務(wù)都熟悉了放棒,近期他發(fā)現(xiàn)姻报,他寫的代碼總被同事抄!leader分配給任務(wù)后间螟,他先提交了吴旋,同事就是連注釋都不改,直接把他的拿來就套他的代碼厢破。周報也是這樣荣瑟,他不提交她(他同事)也不提交,他提交了她(他同事)復(fù)制過去只改幾個字就提交溉奕。他對此非常生氣褂傀,于是就遲遲不提交,leader問他他就說還有點(diǎn)bug沒改好加勤。另外這名碼農(nóng)進(jìn)一步解釋他負(fù)責(zé)移動端,她(他同事)負(fù)責(zé)pc端同波,框架是leader搭的鳄梅,代碼結(jié)構(gòu)都一樣,往里面填代碼就行了未檩,特別簡單的戴尸,他填好了推上去,同事立刻把他的拉下來改成她自己的冤狡。這令這名碼農(nóng)網(wǎng)友非常生氣孙蒙,針對這樣的情況,讓我們看看其他網(wǎng)友們都是怎么看待的吧悲雳!
網(wǎng)友一:告訴你leader說pc移動你都能搞定挎峦,全讓你來干
上世是朵花:這么說倒是不合適,可以讓leader考慮一下合瓢,規(guī)劃一下中間層代碼坦胶,可以供pc端與移動端復(fù)用,而不是“復(fù)制”,這么說就顯得格局更高一點(diǎn)了顿苇。
阿里巴巴員工:其實很簡單峭咒,用幾種設(shè)計模式寫出來,搞得越復(fù)雜越好纪岁,埋個很深的按端區(qū)分的邏輯凑队。還能鍛煉自己
上世是朵花:但是要把握好度,別讓leader認(rèn)為代碼不友好幔翰,可讀性不高等情況顽决。
網(wǎng)友三:我們組有2個人抄一個老同事的代碼,老同事寫了一個拆分集合导匣,多線程調(diào)用的方法才菠。然后周會的時候,經(jīng)理問那2個人為什么拆分4個集合呀贡定,2個人懵逼了赋访,就說覺得4組好,把我們樂的
上世是朵花:看來這種“代碼復(fù)制”的情況還存在的真不少缓待,不只是個例蚓耽,作為技術(shù)管理者,要讓代碼復(fù)用 去替代代碼復(fù)制才能讓團(tuán)隊工作更高效旋炒。
網(wǎng)友四:正常的軟件公司不會讓一套代碼在多個不同的項目里面重復(fù)使用步悠。
上世是朵花:沒錯,這種方法工作效率低些瘫镇,大家都在重復(fù)勞動鼎兽,顯然不劃算。
網(wǎng)友五:你下次和她協(xié)商唄铣除,一人做一部分谚咬,然后互相抄
上世是朵花:原來是一個人干兩個人的活,現(xiàn)在變成兩個人干一個人的活尚粘,這出發(fā)點(diǎn)沒什么不好择卦,但是不一定能行的通,他同事愿意么郎嫁?另外這么做也不是什么好辦法秉继,本來可以復(fù)用,卻選擇復(fù)制泽铛,后期還需要投入兩個人來維護(hù)兩份代碼尚辑,顯然是比較愚昧的做法。
網(wǎng)友六:“她”是重點(diǎn)
上世是朵花:這名網(wǎng)友把焦點(diǎn)放在這兒厚宰,呵呵腌巾,我想樓主并沒有想這樣表達(dá)吧遂填!
網(wǎng)友七:抄代碼怎么了,代碼不就是用來copy的嘛
上世是朵花:對澈蝙,抄代碼沒什么吓坚,抄代碼是允許的,比如工作中的事情灯荧,從網(wǎng)上搬過來一段代碼礁击,修改一下能用也是允許的,但是逗载,同一個公司存在大量的冗余代碼顯然是不科學(xué)的哆窿,無形中增加了勞動力和代碼的維護(hù)量。
網(wǎng)友八:移動pc代碼又不能完全復(fù)用厉斟,這種要搞死他分分鐘的事情
上世是朵花:如果只是簡單復(fù)制別人代碼挚躯,不去做深入了解,后期維護(hù)的話擦秽,顯然也是成本很高的码荔,就會覺得當(dāng)初還不如自己寫呢。
從這名網(wǎng)友分享的情況感挥,可以看出他們公司在代碼管理上存在這一定的問題缩搅,而這名程序員只是站在自己的角度看出自己代碼被抄,很不高興触幼,而他卻沒看出這是一個技術(shù)管理方面的一個問題硼瓣,這種重復(fù)勞動在軟件開發(fā)領(lǐng)域是最不應(yīng)該出現(xiàn)的,作為技術(shù)管理者置谦,有時也不要老想著人不夠用堂鲤,應(yīng)該多想想現(xiàn)在的開發(fā)流程是否正確,是否將每個人的價值充分發(fā)揮出來了霉祸,如果老是讓一些人重復(fù)的搬運(yùn)代碼筑累,他們就不是程序員,而是搬運(yùn)工丝蹭,這樣的話,他們會遲早厭煩現(xiàn)有的工作坪蚁,會感覺很枯燥奔穿,他們不能發(fā)揮出自己的價值,對整個的技術(shù)團(tuán)隊成長也是非常不利的敏晤,更談不上團(tuán)隊的高效了贱田,因此建議技術(shù)管理者,要多與一線程序員們溝通溝通嘴脾,深入了解一下當(dāng)前的開發(fā)狀況男摧,并作出顛覆性的規(guī)劃蔬墩,這樣不但能提高團(tuán)隊的開發(fā)效率,讓團(tuán)隊成員的價值充分得到利用耗拓,同時也大大增加了公司的整體技術(shù)實力拇颅。
以上所有圖片均來之互聯(lián)網(wǎng)? ?
大家好,我是“上世是朵花”乔询。如果你有什么好的看法或者觀點(diǎn)可以在評論區(qū)展現(xiàn)你的才華樟插,互動交流,如果想進(jìn)一步了解我竿刁,那就關(guān)注我吧黄锤!? ? ? ? ? (微信公眾號:sssdhua )? ? ? ? ? ? ? ? ? ? ? ? ?