Delphi 10.3 Web應用開發B/S框架介紹(二):IntraWeb 17 - 新聞資(zī)訊 - 雲南小程序開發|雲南軟件開發|雲南網站(zhàn)建設-西山區知普網絡科技工作室

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不管是網站(zhàn),軟件還是小程序,都要直接或間接能為您産生價值,我們在追求其視覺表現的同時,更側重于功能的便捷,營銷的便利,運營的高效,讓網站(zhàn)成為營銷工具,讓軟件能切實提升企業(yè)内部管理水平和(hé)效率。優秀的程序為後期升級提供便捷的支持!

您當前位置>首頁 » 新聞資(zī)訊 » 網站(zhàn)建設 >

Delphi 10.3 Web應用開發B/S框架介紹(二):IntraWeb 17

發表時間:2019-1-19

發布人:葵宇科技

浏覽次數:85

導言:很多人想當然的認為Delphi不能開發B/S WEB應用,其實Delphi發展到現在10.3,一直在不斷的進步,Delphi不但鞏固了Windows本機軟件開發領域的王者地位,更擴展到了安卓、IOS、Linux跨平台開發領域,成為APP快速開發的利器(qì),同時很多Delphi第三方開發廠商(shāng)也不遺餘力的開發了很多Delphi WEB應用解決方案。

作為最早的Delphi B/S WEB應用解決方案,IntraWeb已經推進到了17版,當前的發布版為15版,已經相當成熟,并被廣泛應用與生産環境中(zhōng)。

漂亮(liàng)的Delphi IntraWeb應用

像桌面應用程序一樣開發,但作為标準HTML和(hé)JavaScript部署到Web。無需插件。

以下(xià)是IntraWeb 17的路(lù)線圖,非常令人興奮!

支持

IDE: 待定

IntraWeb 14和(hé)16支持Delphi / C ++ 2009.目前這意味着13個(gè) Delphi編譯器(qì)。添加C ++并且它加倍到26.這确實使構建過程複雜化并使支持問(wèn)題變得複雜,因為一些是特定于編譯器(qì)的。

較新版本的IntraWeb包含自願遙測,它将通(tōng)過HTTP調用報告有關(guān)IntraWeb安裝的基本匿名信息和(hé)其他相關(guān)數據。所有數據都将匿名報告,不包含任何私人或個(gè)人身份信息。報告的一些數據的示例将是IntraWeb版本,IDE版本和(hé)用于防止我們的日志中(zhōng)的重複條目顯示為多個(gè)安裝的匿名ID。這是作為IntraWeb IDE包中(zhōng)已存在的版本更新檢查的一部分實現的。

使用這些數據将使我們能夠更好地處理使用各種Delphi / C ++版本的用戶數量,并确定IntraWeb 17将支持哪些IDE版本。

浏覽器(qì): 在Flux中(zhōng)

IntraWeb 17正在向前邁進,需要依靠現代浏覽器(qì)中(zhōng)的最新功能。最終的浏覽器(qì)支持将被确定,并且還将取決于最終版本的時間範圍以及每個(gè)浏覽器(qì)如(rú)何執行所需的高級功能。

IntraWeb 17将具有雙模式頁面(有關(guān)詳細信息,請參見下(xià)文(wén))。對于IntraWeb 16及之前當前存在的舊類型表單/頁面,浏覽器(qì)要求将更加靈活。

模式可(kě)能會支持包括Internet Explorer在内的舊版浏覽器(qì),但IWML可(kě)能隻支持:

  • Chrome:43或更高。
  • Firefox:45或更高。
  • Internet Explorer:不支持 - IE是一個(gè)死産品,正在被Edge取代。
  • 邊緣:13,但更可(kě)能是因為Edge本身仍然處于不穩定狀态。
  • Mac浏覽器(qì):待定
  • 移動(dòng):待定,但可(kě)能需要移動(dòng)Chrome,移動(dòng)Firefox或其他。

目标

大爆炸

非常簡單地将IntraWeb方法再次放在Web開發的前面,并提供任何開發語言或平台中(zhōng)任何其他框架中(zhōng)都不可(kě)用的Web生産力和(hé)功能。

在AJAX和(hé)其他功能出現在主流之前許多年,IntraWeb具有諸如(rú)umPartial等功能。相比之下(xià),IntraWeb 17将更進一步。

高度兼容

IntraWeb 17将需要進行重大更改,但我們理解允許現有代碼以最小的更改工作的重要性。在核心區域,将評估重大變更的移植現有項目所需的時間。

IntraWeb 17包含一個(gè)新的頁面類型(現在稱為Page17)。仍将支持舊頁面類型(頁面16),允許現有表單按原樣使用。

并行開發

IntraWeb 16和(hé)IntraWeb 17正在并行開發。

特征

IntraWeb 17目前包含許多新功能。随着開發的進展,某些功能可(kě)能會分階段發布(即17.1,17.2等)或推送到未來的IntraWeb版本,如(rú)IntraWeb 18。

IWML(IntraWeb标記語言)

IWML是 IntraWeb 17 的核心功能,它将帶來以前Web應用程序通(tōng)常無法使用的功能。學到更多

Server Manager

服務器(qì)管理器(qì)是一個(gè)新的可(kě)選組件,可(kě)以使用所有部署模式(ISAPI,Apache等),它們将允許:

應用管理

  • 動(dòng)态加載和(hé)卸載應用程序
  • 收集和(hé)查看有關(guān)用戶和(hé)應用程序的統計信息,例如(rú)會話列表,使用的内存等。
  • 實時更新 - 讓新用戶保持舊實例,而新用戶在更新版本的應用程序上運行。當舊實例中(zhōng)的所有用戶都注銷時,舊實例将被禁用。
  • 能夠禁用應用程序并為用戶提供消息。

用戶管理

  • 能夠發送管理員消息
  • 查看用戶和(hé)會話時間
  • 能夠強制關(guān)閉個(gè)人或所有用戶會話

ACORN

通(tōng)則 ? ompact ? bject ? eadable ?浮選

IWML使用ACORN。ACORN是一種可(kě)擴展的規範,旨在實現靈活性,緊湊性,易讀性,易于解析和(hé)易于流式傳輸。ACORN是在對XML的極度幹擾和(hé)偏移(經常使用移位擊鍵)感到失望之後設計的,并且嚴重限制以及較小(與XML相比)但仍然存在JSON的幹擾和(hé)偏移。

ACORN是一種EOL分隔規範,使解析變得更加容易。

我們打算記錄并打開任何人免費使用的ACORN。

IWCL

IWCL指的是IntraWeb組件庫。IWCL不是Delphi IntraWeb組件,而是在浏覽器(qì)中(zhōng)運行的IntraWeb JavaScript庫。在IntraWeb 17中(zhōng),現有的JavaScript IWCL仍然是為了确保兼容性,但IWML使用基于TypeScript的更新的IWCL。

對話框

JavaScript對話框非常有限,并阻止其他選項卡。現有的基于DOM的對話框更好,但仍然有局限性和(hé)副作用。IntraWeb 17将有一個(gè)自定義的統一對話框架來解決這些限制和(hé)問(wèn)題。

統一圖書館

目前,每種部署類型都具有唯一的項目類型。ISAPI是一種項目類型,另一種是SA,依此類推。源文(wén)件可(kě)以共享,但這會産生額外的維護問(wèn)題。作為服務器(qì)管理器(qì)所需更改的一部分,将存在一個(gè)新的通(tōng)用項目類型,然後由ISAPI,Apache,ASP.NET的填充程序動(dòng)态加載(事實上,IntraWeb的ASP.NET已經是一個(gè)加載IntraWeb庫的填充程序)可(kě)以加載通(tōng)用庫。StandAlone不需要填充程序,但也會加載此通(tōng)用庫類型。

這将在部署期間添加一個(gè)所需的文(wén)件,但這是一個(gè)小缺點值得它帶來的好處。

響應 - 手機,平闆電腦,桌面

IWML的新布局提供了響應式布局作為其性質的一部分,并允許頁面輕松地從小型手機屏幕調整到大型桌面顯示器(qì)。

語氣

通(tōng)過纖維或停滞的線程。

TypeScript推理

有限的自動(dòng)Delphi到TypeScript的翻譯。

WordPress集成

此功能仍在調查中(zhōng),但可(kě)能的功能包括:

  • 能夠為WordPress頁面提供短(duǎn)代碼
  • 能夠将整個(gè)頁面提供給WordPress
  • 登錄和(hé)用戶集成
  • 能夠檢索WordPress内容并在IntraWeb頁面中(zhōng)顯示它

Facebook整合

能夠發布到Facebook,使用Facebook登錄等。

的WebSockets

IWML可(kě)以更輕松地修改DOM(浏覽器(qì)中(zhōng)的網頁),這使得更容易執行實時更新,遠(yuǎn)遠(yuǎn)超出AJAX的功能。問(wèn)題的第二部分是延遲,被最終用戶視為延遲或遲緩。

AJAX和(hé)其他通(tōng)信方法都需要通(tōng)過HTTP。HTTP使用短(duǎn)期連接,因此将其用作實時通(tōng)信通(tōng)道是不可(kě)行的。AJAX提交請求并等待響應,但如(rú)果服務器(qì)想要推送它必須等待客戶端檢入。這些請求中(zhōng)的每一個(gè)都建立一個(gè)新的連接,即使在快速連接上也可(kě)能需要幾分之一秒 - 足夠讓用戶注意到響應滞後。由于處理無法緩存的如(rú)此多的連接請求的簡單開銷,服務器(qì)上的大量負載也會減慢連接響應時間。

WebSockets 是一種允許通(tōng)過HTTP進行持久TCP連接的協議。WebSockets已經出現了一段時間,但是在浏覽器(qì)中(zhōng)不同程度的支持阻礙了使用,但更重要的是,在Internet服務提供商(shāng)或企業(yè)級别上使用舊的或配置錯誤的代理,有效地禁用了許多用戶的WebSockets。

截至2017年,WebSockets的情況已大大改善,并期待繼續增加支持。WebSockets支持可(kě)能是IWML的可(kě)選功能,但在使用時,它将允許從浏覽器(qì)到服務器(qì)的消息響應時間非常快,并且還允許服務器(qì)與浏覽器(qì)通(tōng)信,而無需等待浏覽器(qì)啟動(dòng)通(tōng)信。

這種類型的低延遲通(tōng)信通(tōng)道可(kě)實現更高速的事件,例如(rú)可(kě)用于直接在服務器(qì)上處理來自浏覽器(qì)的實時鍵盤輸入的按鍵事件。它還可(kě)以實現鼠标移動(dòng)跟蹤。這隻是兩個(gè)簡單的例子(zǐ)。

這使得IntraWeb可(kě)以生成幾乎像桌面應用程序一樣的應用程序,但沒有安全風險,沒有安裝,也沒有遠(yuǎn)程桌面會話的延遲。使用的帶寬非常小,因為與遠(yuǎn)程桌面會話不同,原始元數據正在被發送而不是一點一點地被删除,并且像遠(yuǎn)程桌面解決方案必須一樣發送圖像。

官方網站(zhàn):https://www.atozed.com/intraweb

歡迎加入Delphi知識局QQ群:32422310

相關(guān)案例查看更多