桌面開發新晉框架:electron-egg
當前技術社區中出現了各種下一代技術或框架,卻很少有當代可以用的,於是 electron-egg 就出現了。
它願景很大:希望所有開發者都能學會桌面軟件開發
當前桌面軟件技術有哪些?
爲什麼使用 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 2300+
github:https://github.com/dromara/electron-egg 500+
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/2nvdumhUfzREtvjuvz8Cag