2013-08-26 20 views
1

我正在開發一個地址系統,它提供了一種機制來隱藏應用程序的固定地址(例如IP綁定)。例如,應用程序可以被稱爲APP1。如果此應用程序失敗,則此機制以靜默方式將備份實例的IP地址鏈接到抽象地址APP1。與APP1交談的程序將永遠不會注意到這個隱藏的地址更改。網絡中的透明結構 - 正確的術語?

通常情況下,人們稱之爲transparent這樣的行爲,即使隱藏和使事物不可見也正是使事物變得透明的反面。

transparent正確的術語?如果是,爲什麼?論證是否來自不同的觀察角度?

爲了防止關於這個問題的評論和標記成爲主題:我正在編寫一個技術規範,這是系統開發過程中非常重要的一步,因此需要與編程系統一樣的精確度,因此只能看到這個作爲一個更廣泛意義上的編程問題。

回答

2

這是一個經典的討論。正確的術語實際上取決於你如何描述你的系統 - 你使用的是明顯的可見性隱喻還是數學/ CS概念?由於mechanims沒有顯示其執行的所有細節,因此您可以說該機制提供了一個「不透明」的行爲視圖,因爲用戶沒有看到它的工作原理。這實際上與透明度相反 - 正如你在你的問題中指出的那樣。然而,並不那麼簡單。這個表達式來自一個數學概念,referential transparency。維基百科:「如果一個表達式可以被替換爲其值而不改變程序的行爲(換句話說,產生一個具有相同效果和相同輸入的輸出的程序),則該表達式被認爲是透明的。」還有衍生概念transparency in HCI:「如果更改後的系統在改變其內部行爲的同時儘可能地遵守先前的外部接口,則計算系統中的任何更改(如新功能或新組件)都是透明的。」

所以,是的,您可以使用透明度概念來描述您的系統的行爲抽象。

The properties of transparent vs translucent vs opaque regarding light visibility