Клиент-сервер-сервер ORM/SOA/MVC Framework в современном объекте Pascal

(C) 2008-2024 Synopse Informatique - Arnaud Bouchez
https://synopse.info - http://mormot.net
Спасибо всем участникам!
Примечание: эта версия 2 заменяет Мормот 1.18 , который сейчас находится в режиме только для обслуживания. Рассмотрите возможность использования мормота 2 для любого нового или обслуживания.
Вы можете найти больше о мормоте 2 в:
src подпадает;Чтобы обсудить о мормоте , в дополнение к нашему официальному форуму, вы можете присоединиться:
Эти дискуссионные группы не управляются Synopse, а некоторыми пользователями Mormot 2 : большое спасибо за них!
Если вы обнаружите, что это стоит использовать, пожалуйста, рассмотрите возможность спонсировать Mormot 2 Dev, если можете - и даже лучше, поделившись своими собственными коммертами. :-)
Synopse Mormot 2 -это каркас Client-Server Client-Server ORM SOA MVC для Delphi 7 до Delphi 12 Athenes и FPC 3.2/Trunk, нацеливаясь на Windows/Linux/BSD/MacOS для серверов и любую платформу для клиентов (включая мобильный или Ajax).

Поэтому основные особенности мормота :
interface ;Подчеркивая скорость и универсальность, MROMOT использует преимущества современного объектного нативного кода Pascal и простых в развертывании решений, снижая стоимость развертывания и увеличивая рентабельность инвестиций. Это можно использовать:
Содержание хранилища мормота 2 организовано в следующие подразделения:
src является основной папкой исходного кода, где вы должны найти фактическую структуру;packages содержит пакеты IDE и инструменты для настройки вашей среды разработки;static содержит файлы Raw Library .o / .obj необходимые для FPC и Delphi Static Linking;test определяет регрессионные тесты всех структурных функций;res для составления некоторых ресурсов, используемых в src - например, static сторонних двоичных файлов;doc владеет документацией рамки;ex содержит различные образцы.Не стесняйтесь исследовать источник и вставленную документацию.
Структура лицензирована в рамках дизъюнктивного трехлицентного, давая вам выбор одного из трех следующих наборов свободного программного обеспечения/Условия лицензирования с открытым исходным кодом:
Это позволяет использовать наш код в как можно более широком программном проекте, при этом сохраняя левую копию в коде. Смотрите полные условия лицензирования.
Исходный код структуры:
Обратите внимание, что FPC 3.2.2 имеет регрессию с вариантом позднего привязки - вместо этого используйте фиксацию FPC 3.2.2.
На Delphi только цель Windows доступна для общих единиц мормотов , но вы можете использовать кроссплатформенные клиенты для всех целей Delphi. FPC-это гораздо лучший и последовательный кроссплатформенный компилятор, мы с радостью поддерживаем.
Пожалуйста, отправьте запросы на развлечение для неправданных версий.
git clone https://github.com/synopse/mORMot2.git в Eg c:githubmORMot2 ,c:githubmORMot2static .d:mormot2 ,mormot2static.tgz или mormot2static.7z содержимое файла в d:mormot2static ./packages/lazarus/mormot2.lpk ;mormot2ui.lpk если это необходимо.mormot2 с полным путем к своему подразделению MORC 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 в IDE и запустите регрессионные тесты на вашей машине. Для безопасности, контрольные суммы SHA-256 текущей версии загруженных двоичных файлов, опубликованных в нашем https://synopse.info/files Server, доступны в этом файле репозитория static/dev.sha256 .
Мормот -структура оставалась в ревизии 1.18 в течение многих лет, и мне было время для полного рефакторирования.
Основные точки рефакторинга пытались лучше следовать солидным принципам:
SynCommons.pas , mORMot.pas ) в более мелкие подразделения, переоборудованные в область;TSQLRecord в TOrm , TSQLRest в TRest ...;TRest класс, разделяющий на правильные классы REST/ORM/SOA - и папки;asm Framework, используя AVX2, если таковые имеются;Поэтому мы создали совершенно новый проект и репозиторий, поскольку переход на версию 2 индуцировала некоторые обратные неустойчивые изменения. Были использованы новые названия единиц, чтобы избежать неожиданных проблем с столкновением во время миграции, или если 1.18 остается установленным для проекта совместимости.
Быстрые шаги при обновлении с предыдущего пересмотра 1.18:
Обратите внимание на все подразделения, где разделение и переименовано, и некоторые нарушающие изменения, введенные для расширенных функций, поэтому прямое обновление невозможно и не хотелось
Переключиться на новую папку, например, # lib2 вместо # lib
Загрузите последнее 2.# revision файлы, как указано прямо выше
Измените свои ссылки на единицы мормотов :
PUREMORMOT2 ;