易語言
外觀
編程範型 | 面向對象編程, 過程式編程 |
---|---|
設計者 | 吳濤 |
面市時間 | 2000年 |
型態系統 | 靜態類型、強類型、不安全 |
操作系統 | Windows、Linux |
許可證 | 共享軟體 |
網站 | http://www.eyuyan.com/ |
主要實作產品 | |
易語言集成開發環境, 易語言.飛揚 | |
啟發語言 | |
Visual Basic, Java(僅飛揚) |
易語言是一門計算機程序設計語言,早期稱為E語言,也通常代指與之對應的集成開發環境,其最大特點是以漢字為程序代碼編程,具有易用性。語法風格類似於Visual Basic。易語言的創始人是吳濤,他曾表示,創造易語言的初衷是進行用中文來編寫程序的實踐。[1]易語言最早的版本的發布可追溯至2000年9月16日。[2]目前已有易語言、易語言.飛揚和易樂谷三種版本,都有專用的集成開發環境。後兩個版本已長期未更新。
易語言集成開發環境目前僅提供 Windows 版,可分別創建 Windows 及 Linux 下的應用程序,但無法支持 Linux 圖形用戶界面 。易語言.飛揚雖然對 Linux 下的圖形用戶界面開發提供了部分支持,但仍然不能很好地運行。易語言代碼只能在官方的集成開發環境中編寫,所以下述的易語言特徵包括有易語言集成開發環境的特徵。
優點
[編輯]- 全中文,包括官方庫、說明手冊、社區環境、社區模塊。內置首拼和全拼輸入法,直接輸入拼音後可通過自動補全匹配中文命令。
- 門檻低,命令統一規則起名,有即時補全,命令可直接模糊猜測。所有程序定義、變量常量的聲明、系統 API 調用等,均採用表格填表的方式,無需記憶語法。流程控制命令線會顯示流程輔助線提示執行跳到何處,明確提示程序執行順序。官方庫全面封裝 API 並簡化,命令參數都有解釋,命令都有演示的可運行源碼。
- 開發十分迅速,社區有豐富的以面向功能編程精神的模塊。
- 提供本土化函數,如農曆、漢語發音處理、漢字簡繁處理、全半角字符處理,方便相關程序的編寫。
- 編寫時會自動轉換成一固定的格式,任何程序源代碼格式均統一。
- 可以二開插件,支持庫。編譯可以靜態也可以普通編譯。
缺點
[編輯]- 寫出的軟件非常容易被誤識別為惡意軟件,最新版本作出了改進,但仍然常被識別為惡意軟件。
- 代碼不可由第三方編輯器進行編輯,只能通過官方開發環境進行編輯。
- 不原生支持 COM 組件的 IUnknown 接口,需經由其他方法調用。
- 程序外部數據結構無法識別。不支持將 dll 返回值、參數、取地址的子程序參數,視為一個自定義結構。只能是文本、整數、字節數組,解決方法是 api 操作內存解析。
- 不支持 x86_64 程序的編譯。
- 沒有異常處理功能。
- ide 調試僅擁有單步,watch 窗口,調試語句,斷點。
- 官方庫更新緩慢[3],社區已知的一些崩潰等問題[4]。
- 易語言程序的執行方式類似於 VB6 的本機代碼。除了邏輯、比較、算術等一系列基本操作外,其他操作,包括外部函數調用、內存操作等,都由系統支持庫充當中介完成。因而執行效率比 C/C++ 等語言低。
- 正版調試免費,編譯需收費,費用為 618 元/套。
- 非自由軟件,與其他語言不同,編譯器為私有。
功能支持性
[編輯]- 支持類的繼承和多態(繼承不能同時繼承,可以多層繼承);
- 支持取子程序指針和直接調用指針;
- 支持將多個指定的源碼文件合併為一個文件載入,不支持保存為多文件;
- 不支持函數重載與運算符重載;
- 不支持類公開成員;
- 不支持指針操作;
- 使用插件後支持變量根據被賦值類型自動聲明;
- 使用插件後支持預設的 api、常量、子程序被調用時自動插入到源碼。