雷火平台-中国知名电竞赛事平台

0471-4953016
當前位置:首頁-新聞資訊-行業(yè)資訊

程序知識:小程序和應(yīng)用程序的區(qū)別、小程序的九種類型

發(fā)布時間:2020-10-12閱讀次數(shù):2063

   小程序(Applet)和應(yīng)用程序有什么區(qū)別?

   以下是應(yīng)用程序與小程序不同的主要方式:

   Applet與應(yīng)用程序不同,旨在嵌入到HTML頁面中。

   當用戶訪問包含小程序的HTML頁面時,小程序的代碼將傳輸?shù)接脩舻腜C。應(yīng)用程序不是這種情況。

   要顯示小程序,Java虛擬機(JVM)是必需的。JVM可能是Web瀏覽器插件或獨立的運行時環(huán)境。在applet的生命周期中,用戶系統(tǒng)上的JVM會生成applet類型的副本并執(zhí)行多個功能。應(yīng)用程序不需要JVM。

   Applet受Web瀏覽器實施的嚴格安全法規(guī)的約束。小程序的隱私性通常被稱為沙箱安全,將小程序等同于一個在操場上玩耍的孩子,并有嚴格的指導(dǎo)方針。

   應(yīng)用程序是不需要Web瀏覽器的可執(zhí)行應(yīng)用程序。小程序是微型應(yīng)用程序,旨在僅嵌入到HTML網(wǎng)頁中。如果沒有瀏覽器,它們將無法運行。

   Java應(yīng)用程序包具有完整的網(wǎng)絡(luò)和文件系統(tǒng)訪問權(quán)限。小程序無法訪問本地磁盤和網(wǎng)絡(luò)。他們只被允許訪問特定于瀏覽器的服務(wù)。

小程序和應(yīng)用程序的區(qū)別

   小程序的類型

   您可以將小程序分為以下幾類:

   1.Java小程序

   如前所述,applet通常是用Java構(gòu)建的,可以將其插入HTML頁面以在Internet上使用。在這種情況下,它們通常被稱為插件。在互聯(lián)網(wǎng)的早期,它們經(jīng)常被用來在網(wǎng)站上生成交互式按鈕、清單、表格和其他小動畫。

   由于在線程序的復(fù)雜性不斷增加以及JavaScript、C++和其他腳本語言的興起,Java小程序最終變得過時了。到2015年,大多數(shù)瀏覽器開發(fā)人員要么取消了對Java插件的支持,要么宣布了這樣做的計劃。在構(gòu)建私有或自定義Web體驗(如Intranet)時,它們可能仍然相關(guān)。

   2.IFTTT小程序

   在IFTTT的上下文中,小程序指的是使用兩個服務(wù)之間的集成的自動化。IFTTT applets由提示和響應(yīng)組成——它們指示Applet開始運行,而action表示applet操作的結(jié)果。在IFTTT之初(大約2010年),小程序被稱為自動化配方。

   小程序現(xiàn)在可以包含多個操作(“如果這個,那么那個,等等”)和/或依賴檢查(“如果這個,那么那個”)。IFTTT通過使用標準編程邏輯使某些SaaS觸發(fā)的事件能夠觸發(fā)另一個云服務(wù)中的響應(yīng)來實現(xiàn)這一點。通過創(chuàng)建這些觸發(fā)器和操作,非技術(shù)最終用戶可以自動執(zhí)行普通任務(wù)。

   與Java小程序不同,IFTTT小程序的工作是完全黑盒化的,內(nèi)部類、函數(shù)、方法、對象等是不可見的。這使非技術(shù)用戶更容易訪問它們。

   3.圣杯小程序

   Grail是一種免費、跨平臺、開源的Web瀏覽器,使用Python開發(fā)。它支持所有標準的Internet協(xié)議和類似于Netscape或Internet Explorer的功能。該瀏覽器允許創(chuàng)建Python小程序。因此,Grail小程序只是駐留在服務(wù)器中并在客戶端計算機上啟動的Python代碼片段。

   如果HTML頁面提到Python類,Grail可以立即在客戶端系統(tǒng)上下載并執(zhí)行Python代碼(applet)。Grail applet的目標與Java applet的目標相同。

   4.本地小程序

   這是一種特定于Java小程序的小程序。本地小程序創(chuàng)建并保存在本地系統(tǒng)上。當HTML文件包含本地小程序時,網(wǎng)頁不需要從Internet獲取數(shù)據(jù)。代碼中的文件名或路徑名指定或定義它。

   5.遠程小程序

   不同的開發(fā)人員(而不是用戶)創(chuàng)建和開發(fā)遠程小程序。它駐留在連接到Internet的遠程計算機上或可在該計算機上訪問。主系統(tǒng)必須連接到互聯(lián)網(wǎng)才能在遠程計算機上執(zhí)行小程序。要識別和加載遠程applet,用戶需要知道applet的統(tǒng)一資源定位器(URL)。

   6.基于網(wǎng)絡(luò)和移動的小程序

   當通過Web瀏覽器使用而無需重新編譯程序時,小程序可能會發(fā)生很大變化。這是通過HTML實現(xiàn)的,包括較新的版本,如HTML5。當從瀏覽器的HTML頁面內(nèi)部調(diào)用程序時,從HTML代碼內(nèi)部發(fā)送多個參數(shù)是可行的。此方法可以跨多個網(wǎng)站對單個小程序進行簡單定制。

   移動設(shè)備以截然不同的方式使用小程序。許多設(shè)備都具有一個軟件基礎(chǔ),使小程序能夠獨立于其他應(yīng)用程序運行。該技術(shù)提供與典型解決方案相同級別的安全性和可移植性,而無需單獨的軟件容器。

   7.簽名小程序

   已簽名的小程序有一個驗證過程,瀏覽器必須使用遠程、獨立的證書頒發(fā)機構(gòu)服務(wù)器來驗證該過程。一旦簽名被驗證并且本系統(tǒng)的用戶已經(jīng)批準,簽名的applet可以獲得進一步的許可并且變得等同于傳統(tǒng)的獨立應(yīng)用程序。這樣做的理由是小程序的創(chuàng)建者已經(jīng)被識別,并將對任何故意傷害負責。簽名的小程序在設(shè)計上是安全的,但它們可能會獲得對用戶系統(tǒng)的不正當訪問權(quán)限。

   8.自簽名小程序

   自簽名小程序已由開發(fā)人員簽名。如果程序員不受信任,他們可能構(gòu)成安全風險。這就是當自簽名小程序請求授權(quán)時瀏覽器會發(fā)出警告的原因。通常,這些證書僅在發(fā)布前的開發(fā)階段使用。大多數(shù)小程序創(chuàng)建者會要求第三方簽名以確保小程序的消費者安全。

   9.未簽名的小程序

   由于沒有授權(quán)實體,未簽名的小程序有嚴重的局限性。例如,他們無法訪問本地文件系統(tǒng)、系統(tǒng)屬性、本機代碼或外部命令。applet的框架將另外包含一個標頭,用于標識applet的不可信任性。未簽名的小程序可能會嘗試下載惡意軟件。但是,他們無法執(zhí)行攻擊,只能將這些文件保存在臨時文件存儲文件夾中。