Eiffel 程式設計/未實現特性
外觀
自從結構化程式設計出現以來,goto 就被認為是邪惡的,但許多程式語言都支援它。 Eiffel 則不支援。該語言旨在維護單入口/單出口原則。
有些人認為這是一種嚴重的低效率,並會不懈地努力證明一些用 goto 可以更快實現的神秘演算法,或者它需要更少的變數或更少的程式碼行。其他人則認為這嚴重限制了他們的編寫風格。
然而,單入口/單出口原則有兩個明顯的優勢。首先,它鼓勵程式設計師清晰地思考實現過程。在其他語言中,如果你發現自己陷入多重巢狀迴圈的深處,你會用 goto 退出。在 Eiffel 中,你必須重新思考程式碼的結構,這通常會讓最終的程式受益。
其次,原始碼的閱讀頻率遠高於編寫頻率。沒有 goto 語句可以更容易地理解實現過程。在內部迴圈中沒有隱藏的巧妙技巧可以跳到任意位置。
State shared via the once statement
Allows precise control over sharing data
下劃線_符號_表示法_更易於閱讀
對比
駝峰命名法可能看起來很聰明
True = true = TRUE
過載名稱,也稱為運算子過載,會給人類程式設計師和原始碼閱讀者帶來歧義,在某些情況下,也會給編譯器帶來歧義。 Eiffel 透過不實現它來避免這種錯誤來源。