4 ms·
> (REST, SOAP, gRPC, connecting to RabbitMQ etc.) This hasn't been my experience (for Delphi anyway). There's a pantheon of various components for Internet pro
by chadcmulligan 4y ago
> (REST, SOAP, gRPC, connecting to RabbitMQ etc.)
This hasn't been my experience (for Delphi anyway). There's a pantheon of various components for Internet protocols available that work well, I have used REST and SOAP amongst others. If there's a library with a c or C++ interface then you can connect it to Delphi. Lazarus I have less experience with, but likewise can interface to anything.
- KronisLV 4y ago> There's a pantheon of various components for Internet protocols available that work well, I have used REST and SOAP amongst others. Clients, sure. But something like the Spring framework for Java or ASP.NET for .NET, or even Ruby on Rails or Django for Python? Not quite. Closest that I could find was Brook: https://wiki.freepascal.org/Brook_for_Free_Pascal https://wiki.freepascal.org/Brook_for_Free_Pascal but it appears that it isn't in very active development at all (last release was 3 years ago: https://github.com/risoflora/brookfreepascal https://github.com/risoflora/brookfreepascal) There is a nice page about web development on the Wiki: https://wiki.freepascal.org/Portal:Web_Development https://wiki.freepascal.org/Portal:Web_Development But for the most part, even there you won't find the "one true way" to develop new enterprise apps or other larger projects. There is fcl-web (https://wiki.lazarus.freepascal.org/fcl-web https://wiki.lazarus.freepascal.org/fcl-web) and fpWeb (https://wiki.lazarus.freepascal.org/fpWeb_Tutorial https://wiki.lazarus.freepascal.org/fpWeb_Tutorial) but both lean more towards writing your own web server and handling the lower level HTTP interaction, vs what something like Django would let you do, mostly thinking of what your app should do, not so much about how it will look on a per-request basis: https://docs.djangoproject.com/en/4.0/intro/tutorial01/ https://docs.djangoproject.com/en/4.0/intro/tutorial01/
- chadcmulligan 4y agoThere's spring4d, though I haven't used it, though have used parts of it. I've developed a number of servers in delphi for windows, they're as performant as C# services (which I've also developed, there's very little difference). I've developed TCP/IP server, SOAP server, and REST servers talking to a few databases and remote servers. There is no limit to what you can develop in it, since you have access to the Windows API's just like any C application. > But something like the Spring framework for Java or ASP.NET for .NET, or even Ruby on Rails or Django for Python You've outlined a number of different things there and you could make your own with delphi, since again its just like C as to what it can do. You could, if you wanted, make a Django for delphi, though it's not something I'd do. Though your initial statement was Delphi couldn't do a lot of modern services either server or client. This isn't true. If it's all these other things, well, thats a matter of opinion, but there's no technical limitation with Delphi as far as protocols go. Edit: There's this to which is interesting - a drag and drop web development set of components for SPA's https://www.tmssoftware.com/site/tmswebcore.asp https://www.tmssoftware.com/site/tmswebcore.asp which doesn't exist in other environments afaik. Though not sure I'd use it, I know of people who have and it works fine.