Recent

Author Topic: Middleware Component available for Lazarus?  (Read 3084 times)

ozznixon

  • Full Member
  • ***
  • Posts: 119
    • http://www.modernpascal.com/
Middleware Component available for Lazarus?
« on: October 19, 2018, 01:43:14 am »
I am wondering, has anyone made an effort to make a Middleware solution compatible w/ Lazarus? And hopefully support Mac/Window/Linux?
---
Want to kick the tires to a Free Pascal like script engine? http://www.ModernPascal.com/

Thaddy

  • Hero Member
  • *****
  • Posts: 14201
  • Probably until I exterminate Putin.
Re: Middleware Component available for Lazarus?
« Reply #1 on: October 19, 2018, 07:19:06 am »
There are literally 100's of them. It depends on what you exactly mean by middleware. Technically a TBufDataset is already a middleware component  O:-)
tiOPF, mORMot, Brooks all contain middleware components. And the good old Midware by Francois Piette also compiles (only tried for Windows and it requires some work).
There are lot's of others, many based on MVVM patterns.
« Last Edit: October 19, 2018, 07:21:34 am by Thaddy »
Specialize a type, not a var.

ozznixon

  • Full Member
  • ***
  • Posts: 119
    • http://www.modernpascal.com/
Re: Middleware Component available for Lazarus?
« Reply #2 on: October 19, 2018, 08:59:42 pm »
There are literally 100's of them. It depends on what you exactly mean by middleware. Technically a TBufDataset is already a middleware component  O:-)

I google it, and the page only has:

TBufDataset tbufdataset.png is a component that provides the link to buffered data in a database. A TDataset descendant acts like a cursor on a table or query-result.

haha... can you point me to anything that shows it working as a middleware? I would love to take something that s simple, and keep it simple... maybe using my MPC as the backend feeding TBufDataset on my Lazarus App (in dev). As my SQLite3 code in MPC is real easy for me to work with and maybe catapult this from a 90 day deliverable that I will miss, to 90 day doable. ;-) I have kbmMW and ASTA, but, I need something that needs little to zero coding to make work in Lazarus for now. I probably should had just PM'd you the question originally, huh?!

Ozz
---
Want to kick the tires to a Free Pascal like script engine? http://www.ModernPascal.com/

Thaddy

  • Hero Member
  • *****
  • Posts: 14201
  • Probably until I exterminate Putin.
Re: Middleware Component available for Lazarus?
« Reply #3 on: October 19, 2018, 09:17:24 pm »
The TBufDataSet can persist state, for example if the connection to the underlying data base is lost.
It has its own (file and stream) storage format as well as the format of the underlying TDataset.
Which is why I consider it middleware...

I even mis-use it as a flat file database when something simple like an address book is required.
If that address book is later needed in a proper database I only have to connect it with another TDataset....

See the point?

I believe I gave an example two years ago on this forum.

But if you mean full object persistence look at tiOPF and mORMmot. Both are excellent.
But in the strictest sense you asked for middleware, not object persistence. TBufDataset is middleware with some properties of persistence and abstraction.
Even m/v separation  :D
btw: TBufDataset can also be used server-side... for some extra enlightenment. I have never seen it - apart from my own experiments - but it works great in some scenario's.
« Last Edit: October 19, 2018, 09:37:19 pm by Thaddy »
Specialize a type, not a var.

 

TinyPortal © 2005-2018