現代對像中的開源客戶服務器服務器/SOA/MVC框架Pascal

(c)2008-2024 Synopse Informatique -Arnaud Bouchez
https://synopse.info- http://mormot.net
感謝所有貢獻者!
注意:此版本2替換了現在處於僅維護模式的Mormot 1.18 。考慮將Mormot 2用於任何新的或可維護的項目。
您可以找到有關Mormot 2的更多信息:
src子文件夾;為了討論Mormot ,除了我們的官方論壇外,您還可以加入:
這些討論小組不是由Synopse管理的,而是由一些Mormot 2用戶管理的:非常感謝他們!
如果您覺得值得使用,請考慮贊助Mormot 2 Dev,如果可以的話 - 甚至通過分享自己的提交也更好。 :-)
Synopse Mormot 2是Delphi 7到Delphi 12雅典和FPC 3.2/TRUNK的開源客戶端服務器ORM SOA MVC框架,針對服務器的Windows/Linux/BSD/MACOS,用於服務器,以及任何用於客戶端的平台(包括移動或AJAX)。

因此,摩爾特的主要特徵是:
interface的REST服務中;強調速度和多功能性, Mormot利用了現代物體Pascal本地代碼和易於動力的解決方案的優勢,降低了部署成本並增加了投資回報率。它可以使用:
Mormot 2存儲庫含量被組織到以下子文件夾中:
src是主要的源代碼文件夾,您應該在其中找到實際的框架;packages包含IDE軟件包和工具來設置開發環境;static包含FPC和Delphi靜態鏈接所需的原始庫.o / .obj文件;test定義了所有框架功能的回歸測試;res編譯src中使用的一些資源 - 例如static第三方二進製文件;doc保留了該框架的文檔;ex包含各種樣本。請隨時探索源頭和嵌套的文檔。
該框架是根據析取的三個許可許可的,使您可以選擇以下三組免費軟件/開源許可條款之一:
這允許在盡可能寬的軟件項目中使用我們的代碼,同時仍在我們編寫的代碼上維護副本。請參閱完整的許可條款。
框架源代碼:
請注意,FPC 3.2.2具有帶有變化的後期綁定的回歸 - 使用FPC 3.2.2修復分支。
在Delphi上,只有Windows目標可用於Mormot通用單元,但是您可以在所有Delphi目標上使用跨平台客戶端單元。 FPC是一個更好,一致的跨平台編譯器,我們很樂意支持。
請提交非驗證版本的拉請請求。
git clone https://github.com/synopse/mORMot2.git to eg c:githubmORMot2 ,c:githubmORMot2static 。d:mormot2 ,mormot2static.tgz或mormot2static.7z文件內容到d:mormot2static中。/packages/lazarus/mormot2.lpk軟件包;mormot2ui.lpk 。mormot2 ,並具有通往Mormot 2 src折路的完整路徑(工具 - 選項 - IDE-環境變量),例如c:githubmORMot2src或d:mormot2src取決於步驟1;$(mormot2);$(mormot2)core;$(mormot2)lib;$(mormot2)crypt;$(mormot2)net;$(mormot2)db;$(mormot2)rest;$(mormot2)orm;$(mormot2)soa;$(mormot2)app;$(mormot2)script;$(mormot2)ui;$(mormot2)tools;$(mormot2)misctest/mormot2tests.dpr ,並在計算機上運行回歸測試。為了安全起見,如我們的https://synopse.info/files服務器中發布的當前版本的SHA-256校驗和,在此存儲庫static/dev.sha256文件中可用。
Mormot框架在修訂1.18中保留了多年,是時候進行全面重構了。
主要的重構點試圖更好地遵循堅實的原則:
SynCommons.pas , mORMot.pas )分為較小的示波器裝置;TSQLRecord ,為TOrm , TSQLRest變成TRest ...;TRest類分為適當的REST/ORM/SOA類 - 和文件夾;asm內核的優化,使用AVX2(如果有);因此,我們創建了一個全新的項目和存儲庫,因為切換到版本2引起了一些向後的不相容更改。使用了新的單位名稱,以避免在遷移過程中出現意外的碰撞問題,或者是否要保持1.18的安裝以進行兼容項目。
從以前的1.18修訂升級時的快速步驟:
請注意所有分裂和重命名的單元,以及為增強功能引入的一些破壞更改,因此不可能進行直接更新 - 也不想要
切換到新文件夾,例如# lib2,而不是# lib
下載最新2.#如上所述的修訂文件
更改您對Mormot單位的引用:
PUREMORMOT2模式重命名;