Hi folks,

Most of you probably know already that just few days ago we’ve released (aside the latest GdPicture.NET, the V.11), our newest standalone software product named DocuVieware, which is a HTML5-based Viewer and document-management kit.
We can take a closer look together to it, if you want.
Are you in?
For those of you who replied “yes”, let’s go!

Web apps.
Web-applications are basically software applications designed on a client-server architecture basis.
The “client” is actually a web browser while the “server” is a web-application installed on one (or multiple) remotely located server-machine(s).
This is why web-applications comprise two distinctive (and actually separate) parts: one on the ‘client-side‘ and the other on the ‘server-side‘.
There is no universal rule on how client-side and server-side processings should be distributed in a web application.
So in order to reach optimum balance from its point of view, each vendor decides which tasks of its web application should be executed on which side.
As for us, you will find out below how DocuVieware is optimized.

Client-side.
Client-side code (aka ‘scripts‘) is enclosed in the webpage served by the server and is executed by user’s browser.
Main advantages of client-side processing are better response time (thus a better user-experience from an interactivity point of view) and less workload for the server-side.
But there are important disadvantages too: processing might require lots of computing power on user’s machine which can get users frustrated, especially if they’re using mobile devices.
Another disadvantage would be in case the browser itself is not enough and additional plugins are required by the web app. Having to install additional plugins is frustrating by itself already, not to mention they might consume more computing power than the browser itself. It also raises additional security threats issues.
Web applications that require nothing but the plain browser to fully work are called “zero-footprint” apps, as there is not even a trace of additional software in the user’s device. Using such a web application leaves no marks because it implies no initial (prerequisite) downloads and leaves no hidden files or changes on the user’s computing device in the end.
DocuVieware is a ‘zero-footprint‘ solution.
DocuVieware client-side code comprises just HTML5 and JavaScript code, that’s all.
Client-side code in DocuVieware controls all user-interface elements as well as mild processings (like document zooming or rotation) which requires no contribution from the server-side.
DocuVieware provides a JavaScript client-side API allowing developers to completely customize the user-interface.

Server-side
Server-side code is installed and executed on the server machine(s), where it usually interacts (or can interact) with other software running on the same server-machine.
Server-side processing takes place each time client-side makes a specific processing request.
In DocuVieware, all processings (except for the ones described in the Client-side section above) are executed on server-side.
DocuVieware provides an ASP.NET AJAX server-side API. An important feature to be noted is that client-side API function PostCustomServerAction allows you to trigger your own, custom-defined actions on the server-side, for example, draw a QR Code.
You can take full advantage of GdPicture.NET v.11 toolkit to create as complex document-handling / document-management web applications as you need because one DocuVieware development license is bundled with one GdPicture.NET Ultimate Edition SDK v.11.

AJAX
Client-side can interact with server-side either synchronously or asynchronously.
Synchronous interaction means that client-side makes a request to the server-side and remains locked until server-side will send the response back.
Then client-side moves to its next task.
AJAX (“Asynchronous JavaScript and XML”) on the other hand, means that client-side makes a request to the server-side then moves to its next task.
When response from the server-side will arrive, client-side will intercept it and process it.
With DocuVieware you can set and use any of the two modes.
AJAX however, provides the best user-experience because it is more fluid and if some issues occurs due to the internet connection or server-side overhead they might even go unnoticed by users.

Well folks, hope these explanations on DocuVieware basics were useful.
If we’ve catched your interest, stay tuned: we will continue about DocuVieware in our next article.
In the meantime you might want to play with some DocuVieware live demos, they’re only a click away from you.

Bye folks!

Bogdan