前言
當前技術社群中出現了各種下一代技術或框架,卻很少有當代可以用的,於是electron-egg就出現了。?
它願景很大:希望所有開發者都能學會桌面軟體開發
當前桌面軟體技術有哪些?
語言 | 技術 | 優點 | 缺點 |
---|---|---|---|
C# | wpf | 專業的桌面軟體技術,功能強大 | 學習成本高 |
Java | swing/javaFx | 跨平臺和語言流行 | GUI庫少,介面不美觀 |
C++ | Qt | 跨平臺,功能和類庫豐富 | 學習成本高 |
Swift | 無 | 非跨平臺,文件不友好,UI庫少 | |
JS | electron | 跨平臺,入門簡單,UI強大,擴充套件性強 | 記憶體開銷大,包體大。 |
為什麼使用electron?
某某說:我們的應用要相容多個平臺,原生開發效率低,各平臺研發人員不足,我們沒有資源。
也許你覺得只是小公司沒有資源,no!大公司更沒有資源。
因為軟體體量越大,所需研發人員越多。再加上需要多平臺支援的話,研發人員更是指數級增長的。
我們來看看QQ團隊負責人最近的回應吧:
“感謝大家對新版桌面QQ NT的使用和關注,今年QQ團隊啟動了QQ的架構升級計劃,第一站就是解決目前桌面端迭代慢的問題,我們使用新架構從前到後對QQ程式碼進行了重構,而其中選擇使用Electron作為新版QQ桌面端UI跨平臺解決方案,是基於提升研發效率、框架成熟度、團隊技術及人才積累等幾個方面綜合考慮的結果。”
也許electron的缺點很明顯,但它的投入產出比確實最高的。
所以,對企業而言,效率永遠是第一位的。不要用程式設計師的思維去思考產品。
哪些企業或軟體在使用electron?
國內:抖音客戶端、百度翻譯、阿里雲盤、B站客戶端、迅雷、網易有道雲、QQ(doing) 等
國外:vscode、Slack、Atom、Discord、Skype、WhatsApp、等
你的軟體使用者體量應該沒有上面這些公司多吧?所以你還有什麼可擔心的呢?
開發者 / 決策者不要去關心效能、包體大小這些東西,當你的產品使用者少時,它沒意義;當你的產品使用者多時,找nb的人把它最佳化。
聊聊electron-egg框架
EE是一個業務框架;就好比 Spring之於java,thinkphp之於php,nuxt.js之於vue;electron只提供了基礎的函式和api,但你寫專案的時候,業務和程式碼工程化是需要自己實現的,ee就提供了這個工程化能力。
特性
- ? 跨平臺:一套程式碼,可以打包成windows版、Mac版、Linux版、國產UOS、Deepin、麒麟等
- ? 簡單高效:只需學習 js 語言
- ? 前端獨立:理論上支援任何前端技術,如:vue、react、html等等
- ? 工程化:可以用前端、服務端的開發思維,來編寫桌面軟體
- ? 高效能:事件驅動、非阻塞式IO
- ? 功能豐富:配置、通訊、外掛、資料庫、升級、打包、工具... 應有盡有
- ? 安全:支援位元組碼加密、壓縮混淆加密
- ? 功能demo:桌面軟體常見功能,框架整合或提供demo
誰可以使用electron-egg?
前端、服務端、運維、遊戲等技術人員皆可使用。我相信在你的工作生涯中,或多或少都接觸過js,恭喜你,可以入門了。
為什麼各種技術棧的開發者都能使用electron-egg?
這與它的架構有關。
第一:前端獨立
你可以用vue、react、angular等開發框架;也可用antdesign、layui、bootstrap等元件庫;或者你用cococreater開發遊戲也行; 框架只需要最終構建的資源(html/css/js)。
第二:工程化-MVC程式設計模式
如果你是java、php、python等後端開發者,不懂js那一套程式設計模式怎麼辦?
沒關係,框架已經為你提供了MVC(controller/service/model/view),是不是很熟悉?官方提供了大量業務場景demo,直接開始擼程式碼吧。
開箱即用
程式設計方法、外掛、通訊、日誌、資料庫、除錯、指令碼工具、打包工具等開發需要的東西,框架都已經提供好了,你只需要專注於業務的實現。
十分鐘體驗
安裝
# 下載
git clone https://gitee.com/dromara/electron-egg.git
# 安裝依賴
npm install
# 啟動
npm run start
效果
介面中的功能是demo,方便初學者入門。
專案案例
EE框架已經應用於醫療、學校、政務、股票交易、ERP、娛樂、影片、企業等領域客戶端
以下是部分開發者使用electron-egg開發的客戶端軟體,請看效果
後語
我是 哆啦好夢 ,一個碼農。喜歡唱、跳、rap、籃球、music ......
倉庫地址,歡迎給專案點贊!
gitee:https://gitee.com/dromara/electron-egg 2400+
github:https://github.com/dromara/electron-egg 600+
關於 Dromara
Dromara 是由國內頂尖的開源專案作者共同組成的開源社群。提供包括分散式事務,流行工具,企業級認證,微服務RPC,運維監控,Agent監控,分散式日誌,排程編排等一系列開源產品、解決方案與諮詢、技術支援與培訓認證服務。技術棧全面開源共建、 保持社群中立,致力於為全球使用者提供微服務雲原生解決方案。讓參與的每一位開源愛好者,體會到開源的快樂。
Dromara 開源社群目前擁有10+GVP專案,總star數量超過十萬,構建了上萬人的開源社群,有成千上萬的個人及團隊在使用Dromara社群的開源專案。