系統(tǒng)變量與用戶變量 為什么程序開發(fā)時(shí)一定要使用封裝而不能讓用戶直接訪問變量?
為什么程序開發(fā)時(shí)一定要使用封裝而不能讓用戶直接訪問變量?編程語言有兩個(gè)極端:一是把用戶當(dāng)成小偷,以“用戶一定會(huì)犯錯(cuò)”為原則。此時(shí),它將盡可能地封裝和限制用戶的行為。以Java為代表。其優(yōu)點(diǎn)是用戶門檻較
為什么程序開發(fā)時(shí)一定要使用封裝而不能讓用戶直接訪問變量?
編程語言有兩個(gè)極端:一是把用戶當(dāng)成小偷,以“用戶一定會(huì)犯錯(cuò)”為原則。此時(shí),它將盡可能地封裝和限制用戶的行為。以Java為代表。其優(yōu)點(diǎn)是用戶門檻較低,因此開發(fā)人員可以快速啟動(dòng)現(xiàn)成的代碼。缺點(diǎn)是開發(fā)效率低。
一是將用戶視為上帝,為所欲為。以C/Python為例,甚至可以在Python運(yùn)行時(shí)修改代碼本身。其優(yōu)點(diǎn)是開發(fā)效率高,缺點(diǎn)是使用門檻高,容易入坑。當(dāng)然,因?yàn)槟凶銐虻淖杂?,所以您可以人為地設(shè)置“約束”,即自封裝,這樣所有處理您的代碼的開發(fā)人員都將遵守您的“條約”。
在這兩個(gè)極端之間也有大量的語言,例如rust。
封裝并不意味著“好”或“壞”,它取決于您使用的語言的“最佳實(shí)踐”。一個(gè)好的程序是遵循“最佳實(shí)踐”并根據(jù)實(shí)際情況編寫的程序。