跳轉到內容

Eiffel 程式設計/未實現特性

來自 Wikibooks,開放的書籍,開放的世界

Eiffel 未實現特性 — 你在語言中不會看到的

[編輯 | 編輯原始碼]

Goto,break 或等價語句

[編輯 | 編輯原始碼]

自從結構化程式設計出現以來,goto 就被認為是邪惡的,但許多程式語言都支援它。 Eiffel 則不支援。該語言旨在維護單入口/單出口原則。

有些人認為這是一種嚴重的低效率,並會不懈地努力證明一些用 goto 可以更快實現的神秘演算法,或者它需要更少的變數或更少的程式碼行。其他人則認為這嚴重限制了他們的編寫風格。

然而,單入口/單出口原則有兩個明顯的優勢。首先,它鼓勵程式設計師清晰地思考實現過程。在其他語言中,如果你發現自己陷入多重巢狀迴圈的深處,你會用 goto 退出。在 Eiffel 中,你必須重新思考程式碼的結構,這通常會讓最終的程式受益。

其次,原始碼的閱讀頻率遠高於編寫頻率。沒有 goto 語句可以更容易地理解實現過程。在內部迴圈中沒有隱藏的巧妙技巧可以跳到任意位置。

全域性變數

[編輯 | 編輯原始碼]
    State shared via the once statement
       Allows precise control over sharing data

駝峰命名法

[編輯 | 編輯原始碼]


下劃線_符號_表示法_更易於閱讀
對比
駝峰命名法可能看起來很聰明

大小寫敏感

[編輯 | 編輯原始碼]
    True = true = TRUE

過載名稱

[編輯 | 編輯原始碼]

過載名稱,也稱為運算子過載,會給人類程式設計師和原始碼閱讀者帶來歧義,在某些情況下,也會給編譯器帶來歧義。 Eiffel 透過不實現它來避免這種錯誤來源。

華夏公益教科書