代码夹带是洪水猛兽吗?
生活随笔
收集整理的這篇文章主要介紹了
代码夹带是洪水猛兽吗?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
什么是代碼夾帶
代碼夾帶是一個并不陌生的詞組。一般的理解是在正常的代碼中夾帶入別有用心的其它代碼。
通過網(wǎng)上搜索,得到如下:
其通常在計算機正常的程序傳播當(dāng)中將額外的一段代碼夾帶著,對計算機的網(wǎng)絡(luò)安全造成破壞。從表面上看來,其不會對計算機進行主動攻擊,但是只要安裝了正常程序,而該程序...
知道任何保密條款也無法阻止員工夾帶代碼出去。您必須保證您是誠實的,穩(wěn)定的;由于我們的程序非常復(fù)雜(僅PHP文本就3G),資深的程序員需要半年,才能了解代碼的結(jié)構(gòu)及..
但某些組織里還有另外一種情況也被稱為代碼夾帶,這種情況是當(dāng)前版本里多了當(dāng)前版本不需要的代碼,這些代碼對當(dāng)前版本沒有任何用處,可能影響當(dāng)前版本的功能和性能等,這種情況也被稱為代碼夾帶。 發(fā)生這種代碼夾帶的典型場景是某些功能開發(fā)了一半,但是要發(fā)布了,這樣未完成部分功能對應(yīng)的代碼就是夾帶的代碼。
為了避免這部分未完成代碼的干擾,需要采取屏蔽手段,以讓它們不干擾已經(jīng)完成的部分。
顯然這兩種代碼夾帶是截然不同的。 前一種是惡意的,違反法律的;后一種幾乎是軟件開發(fā)中常見的現(xiàn)象。
所以,將后一種稱之為“代碼夾帶”是過于危言聳聽了。
如何稱呼后一種代碼夾帶
首先,是不是修改掉這危言聳聽的說法,比如冗余代碼? ?貌似也不合適,冗余代碼往往是指留下來的包袱。 ?? 待完成代碼是不是更加合適? ?這個說法更加正能量啊!如何處理后一種代碼夾帶-待完成代碼? ?
當(dāng)前常見的有如下幾種方法:1,多分支 , 給每塊待做特性(新功能,優(yōu)化等)單獨拉出分支,當(dāng)分支完成開發(fā),再合并到主干。2,特性開關(guān),仍然在主干或者單分支上進行開發(fā),利用特性開關(guān)來調(diào)試和發(fā)布,當(dāng)需要發(fā)布,但某特性還沒有完成時,把開關(guān)關(guān)閉;完成后打開。? ? ?特性開關(guān)大而化之有2大類:1,編譯前調(diào)節(jié)(加開關(guān),或者注釋掉調(diào)用入口) ? 2,編譯后調(diào)節(jié)。 ? ?? ? ?一般的采用編譯后調(diào)節(jié),典型的開源軟件是Toggle,不少組織自行開發(fā)了自己的特性開關(guān)。?3,結(jié)合灰度發(fā)布的特性開關(guān), 這個就復(fù)雜了。各個不同beta版本給到特定范圍的用戶來用,灰度加特性開關(guān)一起用,一般組織玩不轉(zhuǎn)。先玩好上面的再說吧!但移動互聯(lián)網(wǎng)或者互聯(lián)網(wǎng)2.0時代,這幾乎已經(jīng)是明朗的趨勢。對一些組織而言,市場會逼著玩的,否則就玩完了。小結(jié)
1,后一種代碼夾帶不是洪水猛獸,也許不必使用“代碼夾帶”這樣嚇人的說法。2,后一種代碼夾帶不妨改稱為含有待完成代碼,值得積極的應(yīng)對,而不是一桿子打死。3,對待完成代碼,已經(jīng)有不少可供參考的方法,值得探索。總結(jié)
以上是生活随笔為你收集整理的代码夹带是洪水猛兽吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 敏捷毒药-敏捷中有损组织整体的负面实践
- 下一篇: 说说#条目化需求#