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