官术网_书友最值得收藏!

前言

為什么要寫這本書

3年前我在就職的公司開發了一個低代碼平臺,并將其投入生產,該平臺投產后在公司內部獲得了大量好評。近些年,國內的大廠如騰訊和阿里巴巴等都推出了自己的低代碼產品,規模小一些的互聯網企業也在開發低代碼平臺以求提高App的開發效率。Web技術發展到目前這個階段,程序員開發一個能用的低代碼平臺已經不是難事,但開發一個好用的低代碼平臺卻相當困難。在這里,我希望把自己關于低代碼平臺的思考和經驗分享出來,給想要了解低代碼平臺或者正在設計低代碼平臺的讀者提供一些思路和參考。

3年前我開發的低代碼平臺雖然能創建出App,但存在如下5個問題:

1)創建的App不能獨立于低代碼平臺運行。

2)低代碼App的JSON Schema不能獨立于低代碼平臺存在。

3)低代碼App沒有區分編輯態和運行態,只引入了一個只讀狀態去判斷頁面上的組件能否拖曳、刪除或編輯屬性。

4)當處于編輯態時,低代碼App沒有純凈的運行環境。

5)不存在組件市場,低代碼設計器能使用的組件全部寫在項目內。

本書介紹的低代碼平臺解決了上述5個問題。讀者通過本書將了解到下面4個方面的內容:

1)JSON Schema保存到Git倉庫中,它不影響線上運行的低代碼App,只用于低代碼App各版本的預覽和重新編輯。

2)線上運行的低代碼App與JSON Schema脫鉤,即便低代碼平臺停止服務,線上的低代碼App也能正常運行。

3)低代碼App在編輯態時,設計器和渲染器位于不同的Frame,此時低代碼App有純凈的運行環境,這涉及跨Frame拖曳組件。

4)開發腳手架,并將其用于開發、調試和上傳低代碼組件,這使得設計器能使用豐富的組件去開發低代碼App,同時讓低代碼組件和低代碼平臺解耦。

讀者對象

? 有React、Node.js和數據庫基礎,想開發低代碼平臺的讀者;

? 想全面了解低代碼平臺組成及原理的讀者;

? 對開發低代碼平臺感興趣的讀者。

如何閱讀本書

本書分為4篇。

? 基礎篇(第1章)介紹學習本書必備的理論知識,涉及的知識點有React Ref API、React Hooks、React Context API、MobX和MongoDB等。要想在本地運行本書介紹的低代碼平臺,需要在自己的計算機上安裝MongoDB。

? 需求分析篇(第2章和第3章)介紹業務場景的需求和開發低代碼平臺的需求。

? 實戰篇(第4~8章)是本書的重點部分,介紹如何開發低代碼平臺,提供了大量的代碼示例,涉及的內容有低代碼架構策略、低代碼組件、設計器、渲染器和代碼生成器等。

? 基礎設施篇(第9章)重點介紹如何使用GitLab CI/CD構建持續部署的Pipeline、如何搭建npm私有庫、如何搭建LDAP賬號管理系統等。

如果你是一名經驗豐富的軟件工程師并且對低代碼已有較多了解,建議從第4章開始閱讀;如果你對低代碼了解得不多,那么請從第1章開始學習。

本書提供的開源項目的源碼位于https://github.com/react-low-code,建議讀者將涉及的開源項目復制到自己的計算機上,這樣可以邊學習本書邊調試,從而更好地理解本書的內容。

勘誤和支持

由于我的水平有限,書中難免會出現一些錯誤或者不準確的地方,懇請讀者批評指正。你可以將書中的錯誤發布到本書開源項目的issue頁面中。如果你遇到其他問題,也可以訪問issue頁面并留言,我將盡量在線上為讀者提供滿意的解答。書中的全部源文件可以從https://github.com/react-low-code下載。如果你有更多的寶貴意見,歡迎發送郵件至1395294694@qq.com,也可以我運營的公眾號“前端知識小站”(賬號:heyu-web)與我聯系或加入讀者群。

致謝

感謝我的愛人在過去一年多的時間里始終支持我寫作,他的鼓勵和幫助使我順利完成全部書稿。

主站蜘蛛池模板: 永福县| 靖边县| 咸宁市| 井陉县| 广昌县| 龙南县| 福泉市| 马边| 定远县| 东方市| 文山县| 定边县| 邹平县| 西林县| 青州市| 肇东市| 东丰县| 洪洞县| 永胜县| 井冈山市| 普兰县| 哈尔滨市| 巍山| 且末县| 固始县| 休宁县| 黄龙县| 上蔡县| 图木舒克市| 阿坝| 郯城县| 久治县| 阳新县| 焉耆| 米泉市| 安福县| 仪征市| 罗定市| 阿克苏市| 淅川县| 黔西县|