解密|一文帶你看懂外掛技術

yangwenhan發表於2023-01-11

近年來,得益於技術的迅猛發展,具體體現之一就是外掛技術、分層技術等現代技術的快速進步。

在我們團隊開發小程式的過程中,我們得出了一些結論,淺淺揭示了“小程式+自定義外掛”的重要性。


什麼是外掛技術?

外掛技術指的是一種應用程式,遵循程式介面完成相應的編寫,再規範介面外掛,達到擴充程式功能的目的。現在許多軟體開發的過程中均包含了外掛結構。

當前軟體開發中運用到的外掛技術主要有以下兩種型別:

1、元件物件的模型外掛。該技術又被簡稱為COM,利用該模型可以直接定義程式介面,而不需瞭解外掛功能的整個實現過程,同時也能達到不同外掛間通訊的目的---此類外掛也是市面上使用最廣泛的外掛型別。

2、指令碼外掛。將外掛邏輯運用程式語言轉換為指令碼程式碼(這裡的程式語言可以是通用語言,也可以是自行開發)當前指令碼外掛的主要語言形式為XML,在利用過程中具有簡便、易於操作等優勢,同時也使得指令碼外掛具備一定的風險漏洞。

使用外掛技術在軟體設計中有什麼好處?

使用外掛技術能夠在分析、設計、開發、專案計劃、協作生產和產品擴充套件等很多方面帶來好處:

1、結構清晰、易於理解。由於借鑑了硬體匯流排的結構,而且各個外掛之間是相互獨立的,所以結構非常清晰也更容易理解。

2、易修改、可維護性強。由於外掛與宿主程式之間透過介面聯絡,就像硬體插卡一樣,可以被隨時刪除,插入和修改,所以結構很靈活,容易修改,方便軟體的升級和維護。

3、可移植性強、複用力度大。因為外掛本身就是由一系列小的功能結構組成,而且透過介面向外部提供自己的服務,所以複用力度更大,移植也更加方便。

4、結構容易調整。系統功能的增加或減少,只需相應的增刪外掛,而不影響整個體系結構,因此能方便的實現結構調整。

5、外掛之間的耦合度較低。由於外掛透過與宿主程式通訊來實現外掛與外掛,外掛與宿主程式間的通訊,所以外掛之間的耦合度更低。

6、可以在軟體開發的過程中修改應用程式。由於採用了外掛的結構,可以在軟體的開發過程中隨時修改外掛,也可以在應用程式發行之後,透過補丁包的形式增刪外掛,透過這種形式達到修改應用程式的目的。

7、靈活多變的軟體開發方式。可以根據資源的實際情況來調整開發的方式,資源充足可以開發所有的外掛,資源不充足可以選擇開發部分外掛,也可以請第三方的廠商開發,使用者也可以根據自己的需要進行開發。

App快速開發離不開「Hybird」混合開發模式

自從小程式容器技術被應用到微信中,整個微信的小程式生態便被帶火了。於是乎,就有企業開始研究,能不能將小程式容器技術開發出來,應用到別的App中呢?還真有,例如FinClip。

「Native+H5」和「Native+小程式」兩種混合式APP開發模式相比之下,「Native+小程式」的開發模式更優。 技術優勢包括:

  • 具備跨平臺的能力,一套程式碼可以在 iOS 與 Android 兩個平臺中執行;
  • 遠超過 H5 的體驗(支援本地快取,Webview,有豐富的元件與支援庫);
  • 能獲取更多系統許可權,完成更加豐富的產品設計;
  • 可以避免 DOM 洩露(不使用常用的 window 物件與 document 物件);
  • 包尺寸有效減少,節省流量和儲存
  • 服務不再受發版所限制,支援熱更新

小程式+外掛+App,高體驗的組裝式App誕生

如果從體驗上說,採用原生開發的App體驗上肯定是最好的。但市場上的使用者需求日新月異,業務發展也需要跟得上使用者的需求迭代速度,於是乎,「跨端」理念就開始映入了程式設計師的眼簾。從做程式設計師的第一天開始,就要接受跨端的“洗禮”,換句話說就是要快!而且質量好!

小程式這種介乎於H5和原生之間的語法便誕生了。

與此同時,軟體的快速開發,其本質是將重複的底層功能提取出來,已元件的形式嵌入到框架之中,力求最大程度的減少開發人員的開發難度,節省開發時間。一個企業要做到面面俱到,幾乎是不可能的,因為使用者的需求千差萬別,要想盡可能的做到盡善盡美,必須要在 開發技術選型上下足功夫,選擇一些具有一定開放性的開發平臺,對於這種“開放性”的理解,自定義外掛必不可少。

稍微調研了下 FinClip,他們有自己的小程式外掛市場, Finclip小程式應用市場可以瞭解一下。一些第三方原生外掛也有相當程度的自定義支援,例如

自定義外掛在快速開發平臺中的重要作用,以傳統開發方式為基礎,以敏捷思想作指導,這樣開發出來的產品可擴充性強,使用者滿意度也會很高。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024933/viewspace-2931775/,如需轉載,請註明出處,否則將追究法律責任。

相關文章