Re: How about "Rapid Rich Internet Application Development"?




Paul,

Running a Delphi application on the Adobe AIR runtime would be absolutely fantastic.

I share your concerns about getting yet another runtime accepted by the industry. Even more because there are many new initiatives targeting the same market (Google API, Adobe AIR and SilverLight). Connecting with an existing technology will overcome this.

I'm not a Adobe AIR specialist and therefore wonder if this would technically be possible at all?

Kees Vermeulen

Paul Hectors schreef:
Hi Danijel,

Sounds interesting and I have had the same thoughts about the limitation of HTML and Javascript.

Could you please tell me if you have considered using Adobe Flex as the RIA. It is cross platform , has a RAD ide and has the option to compile as a desktop application. The Adobe Flash player I imagine is known in the industry and accepted. If you create your own player then I imagine it would need to get acceptance in the industry before IT departments allow it to be installed on clients.
From what I can gather one of the main reasons why IT departments want browser based software is to avoid installing anything on the client.

I have not looked at the details but if the AMF3 specification was implemented in Delphi you could have binary transfer between the client and the Delphi backend. This avoids have to write the GUI proxy classes and the Adobe Flex GUI controls look like they would do the job. For example the Adobe Datagrid has a lot more feature than TDBGrid.

Best regards,

Paul



"Danijel Tkalcec" <rtc@xxxxxxxxxxxx> wrote in message news:4829848a@xxxxxxxxxxxxxxxxxxxxxxxxx
Hello, Developers!

I have had this "crazy" idea since 2004 that HTML with JavaScript running inside a Browser (AJAX) just isn't good enough to become a replacement for todays Rich Client/Server and N-Tier Windows Applications. Even with all the third-party components and tools available today for writing AJAX Web Applications, the results in most areas are less than acceptable for the end-user. HTML, even when combined with the best JavaScript, just doesn't give us the same UI quality we are used to having with Windows Clients.

I think we have an excellent development tool in Delphi, but when it comes to writing mid-tier applications, IMHO, all the solutions currently available are either too complex for use in large-scale projects, or they are just too limiting. Wouldn't it make more sense to use the Delphi IDE for writing mid-tier applications in the exact same way you can write desktop applications? Why should application developers have to separate their code into a client and a server "manually" when it all boils down into a single codebase? Why would one have to fetch hundreds of records from a database and send it over a wire to allow the user to see them in a Grid? Or artificially "split" large datassets into pages to reduce the traffic? And why should an application developer have to manually write remote functions/objects on the server and then write code on the Client to call these functions?

Wouldn't it be more feasible to presume that clients are there as a presentation layer for the server, taking care of user interaction, while all the business logic belongs into the server? And then allow the developer to design both parts of the puzzle in a single project, building a single application which would automatically be split into a Server holding all the information and business logic and a Client being the presntation layer and taking responsibility for user interaction?

Is this impossible to achieve?

Not at all.

But ... to get this kind of functionality working transparently for the developer, we need a framework with a large enough set of components which can take care of client/server separation and all the communucation for us.

And this is what I have working on in the past months, with good results: I now have the basic framework in place, which includes the Application, Form, DataModule, Edit, Label and Button components with full Delphi/C++Builder IDE integration. The framework is completely transport agnostic, which means that it can be combined with any communications component set (like the RTC SDK, for example). The basic framework is relatively easy to use by component developers, but making a visual component usable in the context explained above requires detailed knowledge of the component being "ported" - and "a bit" of coding.

To demonstrate what would have to be done to make simple visual components usable with this framework, I have uploaded two units (Client- and Server-side) implementing the Button, Label and Edit components. If you want to take a look, please download and unpack this ZIP file:
http://www.realthinclient.com/temp/rtcfSample.zip

Since I now have the framework in place with major problems of client/server components separation solved (server with low resource requirements and optimized code for minimum CPU usage), I was hoping to find developers (component vendors?) seriously interested in spending their time (with me) in an effort to get this idea materialized. If you would like to participate in this huge undertaking, please let me know where you see yourself and how you think our cooperation should look like. To contact me, please send an E-Mail to the "General Questions" address listed here:
http://www.realthinclient.com/contact.htm

Thank you for your time :-)

Best Regards,
Danijel Tkalcec, Team RTC
http://www.realthinclient.com


.



Relevant Pages

  • Re: RubyOnRails and Intraweb
    ... business rules and validation into the client, especially a web browser, ... that force everything to the server, ... then why not just use Delphi for the server-side ...
    (borland.public.delphi.non-technical)
  • Re: How about "Rapid Rich Internet Application Development"?
    ... Could you please tell me if you have considered using Adobe Flex as the RIA. ... browser based software is to avoid installing anything on the client. ... Why should application developers have to separate ... remote functions/objects on the server and then write code on the Client ...
    (borland.public.delphi.thirdpartytools.general)
  • Re: CORBA with heterogenic system poject
    ... I`d like to create CORBA server with Borland Delphi (or ... C#.NET) and few client applications taht comunicate with serwer: ... VisiBroker ORB, and Java client using ORB from JSDK. ...
    (comp.object.corba)
  • Re: use remote pilot-link
    ... they have a linux server ... delphi) interface. ... host A: client and his palm. ... So a run-command pilot-link would be perfect. ...
    (comp.sys.palmtops.pilot)
  • Java comunicaction with Delphi CORBA server and ORB CORBA for J2ME Windows CE
    ... I`d like to create CORBA server with Borland Delphi (or ... C#.NET) and few client applications taht comunicate with serwer: ... VisiBroker ORB, and Java client using ORB from JSDK. ...
    (comp.lang.java.corba)