Автор Тема: Diesel Pascal  (Прочитано 4531 раз)

Оффлайн Rik

  • Давно тут
  • **
  • Сообщений: 186
    • Визуальные технологии
Diesel Pascal
« : 08.03.2014 12:24:44 »
Diesel Pascal (в прошлом DBI-Builder-Surgy) - кроссплатформенная среда разработки с открытым кодом на языке FreePascal. Цель создания - возможность разработки максимально гибких бизнес приложений, для внесения изменений в которые не требуется перекомпиляция, запуск приложения без перекомпиляции на различных платформах.
Интерфейс и функционал среды аналогичен интерфейсу Lazarus, имеет встроенные интерпретаторы FreePascal и DieselPascal. Оба языка поддерживают ООП. Можно объявлять классы, поддерживается наследование и полиморфизм. Встроенный интерпретатор FreePascal довольно тесно совместим с оригиналом за исключением некоторых нюансов, касающихся перегрузки процедур и функций и инициализации массивов. Приложения дизель-паскаль представляют из себя XML файл содержащий ресурсы (формы, фреймы, модули данных) и код для интерпретатора Free/Diesel Pascal. Приложения выполняются виртуальной машиной, компиляция кода во внутренний формат происходит при запуске приложения (компиляция на лету), поэтому приложения Дизель паскаль будут работать без перекомпиляции и переделок на любой платформе, под которую удастся собрать сам Дизель-паскаль. Сама система задумана как дополнение к Lazarus, предназначена для разработки бизнес программ либо других программ автоматизации какой либо деятельности, но подразумевающей немного иной подход в построении и выполнении приложения. Дизайнер и машина Дизель-паскаль могут загружать приложения как локально, так и по протоколу http, что дает дополнительное преимущество при многопользовательской работе.

В процессе работы над системой появились побочные продукты, благодаря которым мне удалось избавиться от коммерческой зависимости в виде покупных компонент и в конечном итоге от Delphi.
1. Компоненты IBX (InterBase Express). Доработал функционал, до нужного мне уровня. Добавил возможность работы в компонентах TIBDataSet в рамках 2х транзакций по принципу FIBPlus. Добавил поддержку выражений RETURNING (и возвращаемых значений из EXECUTE PROCEDURE), поддержка выражений EXECUTE BLOCK,  добавлена поддержка эмуляции Boolean полей, автотримирование строковых значений (свойство AutoTrim), добавлены свойства AutoStartTransaction и AutoCommit. Убран старый баг в TIBStoredProc (http://www.ibase.ru/devinfo/ibstp.htm). Тут могу сказать только спасибо разработчикам компании Devrice, которые отказались портировать компоненты FIBPlus на Lazarus, а IBDac оказались слишком дорогие. Привести функционал IBExpress до нужного уровня оказалось вполне посильной задачей, иначе я бы не задумываясь продолжал отсегивать деньги за использование FIBPlus...

2. TxDBF - клон TDBF, заточенный на работу с таблицами DBF в кодировках Win1251 и cp866 (В лазарусе вообще существует проблема, когда нужны кодировки кроме UTF-8 ).

3. Перенес свою библиотеку компонентов на Lazarus, добавил компонент TFormsBar с помощью которого можно эмулировать работу MDI интерфейса (в Lazarus MDI нет).

4. Сделал библиотеки для TXMLDoc, которые расширяют возможность чтения XML с кодировками Win1251 и cp866 (Оригинал читает только UTF-8 ), допилил OLE для использования в интерпретаторе (CreateOLEObject, в Lazarus OLE до сих пор толком не работает).

Lazarus оказался отличной штуковиной, приложения сделанные в нем будут работать на любом Linux, без всяких зависимостей и не взирая на версию glibc.

приложение запущено под Linux
Спойлер

Среда разработки:
Спойлер
Windows

Alt Linux Simply

В среде разработки имеется отладчик, можно ставить точки останова и выполнять программу по шагам.
Редактор поддерживает автозавершение кода, а т.ж. MouseLink - удерживая Ctrl и нажимая на ссылки можно переходить к объявлениям переменных и методов и т.д. в общем-то всё как в Delphi/Lazarus.
подсветка синтаксиса работает для обеих языков: Pascal и Diesel Pascal.

В систему встроены классы для работы с XML, Zip, FTP, HTTP, SMTP, POP3, IMAP (сетевые протоколы поддерживают SSL/TLS), LazReport, доступ к другим SQL серверам (кроме FireBird) возможен через ZEOS. Всё бесплатно и кроссплатформенно:

http://www.visual-t.ru
В разделе Загрузка - исходный код Diesel Pascal и компоненты кроме ZEOS, Synapse и LazReport, а т.ж. в папке exe откомпилированные версии под Win32 и Lin32.

Простенькие примеры:
Фрактальная графика: http://visual-t.ru/files/Fractals.lm9
Пример с Excel: http://visual-t.ru/files/Excel.lm9    (использует OLE, поэтому работать будет только под Windows)
Пример с OpenOffice: http://visual-t.ru/files/OpenOffice.lm9     (использует OLE, поэтому работать будет только под Windows)
Игра тетрис: http://visual-t.ru/files/Tetris.lm9

Система может загружать приложения по протоколу HTTP, поэтому адреса ссылок можете добавить в DManager или в дизайнере выполните Файл->Открыть URL и скопируйте ссылку туда (В дизайнере приложения загруженные по HTTP будут только для чтения, чтобы их можно было править, сохраните их локально, для этого в дизайнере выполните Файл->Сохранить проект)


ps:
Пардон за сайт, похерили хакеры...
« Последнее редактирование: 08.03.2014 13:17:39 от Rik »
visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 999
Re: Diesel Pascal
« Ответ #1 : 08.03.2014 12:40:45 »
1) Скриншоты прикрепите к сообщению, пожалуйста, вместо ссылок в посте иначе весь пост на небольших разрешениях получается с прокруткой, либо скройте под спойлер ибо пользоваться прокруткой текста НОНСЕНС!
2) Почему среда разработки под виндовс ?

Оффлайн Rik

  • Давно тут
  • **
  • Сообщений: 186
    • Визуальные технологии
Re: Diesel Pascal
« Ответ #2 : 08.03.2014 13:13:48 »
1) Скриншоты прикрепите к сообщению, пожалуйста, вместо ссылок в посте иначе весь пост на небольших разрешениях получается с прокруткой, либо скройте под спойлер ибо пользоваться прокруткой текста НОНСЕНС!
2) Почему среда разработки под виндовс ?
Она кроссплатформенная, ещё скриншот добавил...
visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 999
Re: Diesel Pascal
« Ответ #3 : 08.03.2014 15:08:49 »
1) Скриншоты прикрепите к сообщению, пожалуйста, вместо ссылок в посте иначе весь пост на небольших разрешениях получается с прокруткой, либо скройте под спойлер ибо пользоваться прокруткой текста НОНСЕНС!
2) Почему среда разработки под виндовс ?
Она кроссплатформенная, ещё скриншот добавил...
Вот так лучше гораздо.

Онлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 920
    • Домашняя страница
    • Email
Re: Diesel Pascal
« Ответ #4 : 08.03.2014 15:17:30 »
Под какой лицензией распространяется и можно ли опакетить?
Андрей Черепанов (cas@)

Оффлайн Rik

  • Давно тут
  • **
  • Сообщений: 186
    • Визуальные технологии
Re: Diesel Pascal
« Ответ #5 : 09.03.2014 12:03:56 »
Под какой лицензией распространяется и можно ли опакетить?
LGPL, что нужно для того, чтобы опакетить?
visual-t.ru Кросс-платформенные технологии визуальной разработки ПО.

Онлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 920
    • Домашняя страница
    • Email
Re: Diesel Pascal
« Ответ #6 : 09.03.2014 13:46:21 »
Вот думаю: отдельно или как набор компонентов Lazarus 1.2.0, который я сейчас собираю.
Андрей Черепанов (cas@)

Оффлайн KALIBR-10

  • Давно тут
  • **
  • Сообщений: 426
Re: Diesel Pascal
« Ответ #7 : 09.09.2017 11:30:13 »
Как дела с этим проектом? Добавили ли его в пакетную базу?
Разбаньте в телеге шакалы!!!

Онлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 920
    • Домашняя страница
    • Email
Re: Diesel Pascal
« Ответ #8 : 09.09.2017 12:47:12 »
Нет, не добавили.
Андрей Черепанов (cas@)