Каковы текущие решения для разработки веб- и веб-сервисов Delphi? - PullRequest
14 голосов
/ 05 декабря 2010

Я играю с Дельфи.Большая часть моей разработки для настольных компьютеров выполняется на .Net, а встраиваемые системы - на C. Я занимался веб-разработкой на RoR & Python (Django, CherryPy). Я заинтересован в том, чтобы взломать проект, который будет веб-службой (REST или SOAP) с собственным клиентом и веб-клиентом.

Поскольку меня недавно вдохновили изучать Delphi, мне любопытно, какие есть варианты для создания веб-службы и веб-клиента с Delphi.Большая часть документации по Delphi немного устарела, но пока я нашел следующие варианты:

  • DataSnap
  • WebSnap
  • WebBroker
  • IntraWeb
  • Data Abstract и RemObjects SDK от RemObjects

У меня сложилось впечатление, что WebSnap мертв, но другие технологии все еще разрабатываются.Есть ли какие-либо рекомендации по поводу того, какую технологию исследовать?

ps Я понимаю, что Delphi не очень популярный выбор для веб-разработки, но мне любопытно попробовать, так как я получаю удовольствие от изучения VCL.

Ответы [ 9 ]

6 голосов
/ 06 декабря 2010

Возможно, вы добавите нашу Synopse SQLite3 Framework в свой список.

Есть несколько интересных функций:

  • ORM подход к управлению вашими данными (т.е. определение и доступ к ним как к обычным классам Delphi) как на стороне сервера, так и на стороне клиента - аналогично ActiveRecord в RoR;);
  • Многоуровневая архитектура ;
  • Нет базы данных или DLL для развертывания (используется встроенный SQLite, без каких-либо внешних DLL) - вы даже можете не использовать SQLite, но простую и быструю базу данных в памяти, написанную на чистом Delphi (я начал fork Zeos , чтобы быть независимым от базы данных);
  • Очень оптимизированный многопоточный сервер HTTP / 1.1 (но вы можете общаться через другие протоколы или даже локально внутри одного и того же процесса, без какого-либо клиента / сервера);
  • Передача данных использует стандартный JSON, поэтому вы можете получать те же данные либо в клиенте Delphi, либо в клиенте AJAX;
  • Клиент / Сервер является RESTful и написан в очень оптимизированном коде Delphi (некоторые части даже были написаны в asm после профилирования, для скорости и низкого использования памяти);
  • Может также использоваться для определения DataSnap-подобного Клиент-серверного JSON RESTful Services , если вам недостаточно RESTful-подхода;
  • Full Open Source, компилирует и работает от Delphi 6 до XE (с полной поддержкой Unicode для всех версий, потому что он основан на UTF-8 от ядра движка).
6 голосов
/ 05 декабря 2010

Инструментарий веб-сервиса - это пакет веб-сервисов для FPC, Lazarus и Delphi; «Web Service Toolkit» предназначен для облегчения использования и создания веб-сервисов пользователями FPC, Lazarus и Delphi. Лучше проверить из SVN, поскольку версия 0.5 на самом деле устарела.

4 голосов
/ 15 ноября 2013

DelphiMVCFramework - это мощная среда RESTful, используемая также для разработки веб-сайтов. https://github.com/danieleteti/delphimvcframework

Функции DMVCFramework

  • RESTful (RMM Level 3), совместимый
  • Необычный URL-адрес с сопоставлениями параметров
  • Страницы, созданные на стороне сервера с использованием шаблонов усов
  • Расширение обмена сообщениями с использованием STOMP и Apache ActiveMQ или Apache Apollo (бета)
  • Может использоваться всреда с балансировкой нагрузки, использующая Redis или MySQL в качестве сервера состояний
  • Integrated RESTClient
  • Работает с DelphiXE3 или лучше
  • Integrated Logging System
  • Это действительно просто в использовании,Вы можете продуктивно работать за считанные минуты!

Вот DMVCFramework Руководство для разработчиков https://danieleteti.gitbooks.io/delphimvcframework/content/

Если вам нужна поддержка, есть официальная группа на Facebook, на которой более600 пользователей https://www.facebook.com/groups/delphimvcframework/

Я главный разработчик, но активных участников более 6.

4 голосов
/ 06 декабря 2010

RESTful вызовы методов на стороне сервера, размещенные как ISAPI dll или просто использующие компонент Indy HTTP Server.Это действительно довольно простой и мощный подход, позволяющий быстро приступить к работе без большой кривой обучения.

3 голосов
/ 05 декабря 2010

Пара других вариантов, которые можно использовать для создания сервера веб-сервисов, несколько похожего на datasnap или remobjects / dataabstract, приведены ниже. Я работал несколько лет назад с kbmMW, и это солидная библиотека. Я думаю, что и kbmMW, и RealThinCLient имеют бесплатные версии и / или версии с открытым исходным кодом:

RealThinClient

kbmMW

3 голосов
/ 05 декабря 2010

WebHub - еще одна хорошо известная, но менее известная сторонняя веб-инфраструктура Delphi.

2 голосов
/ 05 декабря 2010

У нас есть веб-интерфейс для нашего серверного приложения Delphi, написанного на Delphi Prism / ASP.NET.Он отлично работает и позволяет нам использовать наши знания языка Delphi в среде .NET.

1 голос
/ 02 апреля 2018

Ну вот уже два года, как я оставил свое последнее сообщение на этих постах, Хотя uniGUI до сих пор является единственным решением, уже созданным для создания SPA в Delphi, похоже, что IW17 станет настоящим новшеством, водоразделом в истории рендеринга на стороне Delphi. единственная строка в javascript, как и другие фреймворки, веб-сокеты, волокна, наш «Delphi React».

1 голос
/ 29 июня 2016

Этот файл очень старый, но многое изменилось, я сам оставил Intraweb и перешел в UNIGUI, поскольку он основан на EXTJS и производит одностраничные приложения.

...