为什么全局变量不好?[翻译]
生活随笔
收集整理的這篇文章主要介紹了
为什么全局变量不好?[翻译]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//來自:https://softwareengineering.stackexchange.com/questions/148108/why-is-global-state-so-evil
首先,全局變量讓程序的狀態變得不可預測。
詳細地說,比如有兩個對象都用到了同一個全局變量,但是假設我們沒有用全局變量(也就是排除了隨機性變量)它的代碼是確定的,對于特定的輸入那么就可以預測方法的輸出(這也稱為測試)。但是現在兩個對象共享一個全局變量,那么如果一個對象中改變了這個全局變量,將對另一個對象的起始狀態有影響,將不能預測它的輸出。這樣就不利于單元測試了。
如果代碼依賴于外來的全局變量,那么就破壞了代碼的可信度。還存在并發訪問沖突的問題。
任何人都可以改變全局變量,所以它是不可靠的。
轉載于:https://www.cnblogs.com/BlueBlueSea/p/9310465.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的为什么全局变量不好?[翻译]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MVC防止CSRF攻击
- 下一篇: postgresql 获取所有表名、字段