Friday, December 23, 2011

The PowerBuilder Developer's Guide to TechWave

PowerBuilder’s Future: Fresh from the Labs
Not only will we will be presenting the enhancements to DataWindow® graphics, database drivers and .NET Target security in PowerBuilder 11.5...straight from the Sybase labs, we’ll reveal an early look at the new PowerBuilder 12 IDE (powered by the Visual Studio Isolated Shell), the WPF DataWindow, and how your PowerBuilder WPF runtime applications will look, feel and behave. Come see PowerBuilder being given the ultimate GUI open door.

Moving to PowerBuilder 11
Get hands-on experience with the latest UI changes, language features, .NET Web Services capabilities, database support additions and Application Server deployment options found in PowerBuilder 11.x. You will be exposed to the latest .NET capabilities of PowerBuilder, including the ability to deploy PowerBuilder applications as .NET Web Applications (ASP.Net 2.0), .NET Windows Form applications and Smart Client applications. You will also learn how to create .NET Assemblies from within PowerBuilder and use these Assemblies in a .NET (C#) application. Finally, you will learn how to access members of .NET assemblies (.NET framework classes or your own) from a PowerBuilder application.

Performance and Tuning for PowerBuilder:
Advanced Tips and Techniques
Learn how to improve your PowerBuilder application performance using proven techniques.This class will explore certain performance improvement techniques for developers writing or migrating to web-enabled applications. You will learn about file management, database technologies, scripting tips, and must-know internal mechanisms of PowerBuilder. Other topics include: Processing File References, Environment and Garbage Collection Functions, Scripting External Functions, Sending Objects the Message, Mail Enabling your Application, Creating Service Classes, Coding Object Instantiation, Improving Script Execution, Profiling your Application, Data Retrieval and Advanced Connectivity, Managing the Transaction, Advanced Embedded SQL and Update Stored Procedures, and much more.

pdf url: http://www.sybase.com/files/Product_Overviews/Sybase_TW08_PD_Guide.pdf

Building AJAX JSF Components

AJAX is an acronym for Asynchronous JavaScript and XMLHttpRequest. The XMLHttpRequest object is a de facto standard object provided by browser-based JavaScript implementations, and when used in an asynchronous fashion it allows the page author to communicate with the Web server in the background of the page, without giving the user any visual cue that this communication is occurring. The Web browser’s “spinner” does not spin, the hourglass mouse pointer does not appear, and the browser does not “block” in any way. Using the XMLHttpRequest in concert with standard JavaScript and DOM APIs allows the page author to dynamically update the page with arbitrary server-supplied data.

The first implementation of an API for background-based asynchronous communication with the server came from Microsoft in the form of their XMLHTTP ActiveX object. This API was later emulated in a compatible fashion by Netscape and other browsers, enabling users to write Web applications that use XMLHttpRequest and still run on a variety of browsers while minimizing the amount of browser-dependent code required. It has taken a long time to arrive at the point where most users can be assumed to have a browser capable of AJAX, but as of this writing it’s a safe bet.

Even though these technologies had been around for several years their widespread use in Web applications didn’t catch on until Google showed the world how powerful a first-class application of AJAX practices can be. The introduction in 2004 of Google’s e-mail service, which makes heavy use of XMLHttpRequest techniques, inspired a renaissance of interest in JavaScript that ultimately led to what people now call AJAX. Google’s map service also leverages AJAX techniques to good effect. As of this writing, the field of innovation is still wide open and the best practices have yet to fully emerge.

pdf url: http://media.techtarget.com/tss/static/articles/content/JSFReference/JSFReferenceCH11.pdf

AJAX Application Design: Tips & Tricks

The AJAX developers need to keep in mind some crucial points when they are developing and designing applications. These facts are applicable from small to large applications. Personally I believe every AJAX developer should know all these facts for developing more robust and reliable applications. Okay, let us see them now.

The Back Button and Bookmarks are going to break down
The back button of the browser is dependent on the history object. Whenever you browse successive pages, these pages are loaded and browser’s history object saves data so that you can go back. But when you are using JavaScript to control the content and behavior of the page, the back button and bookmarks will not work any more.
So, you may develop and set your own JavaScript back button so that the user can navigate to a previous page.

There are ways to solve this problem although pretty complex.
Use Visual Cues
In most cases, AJAX applications work behind the scene. The application may take long time to load or to process lots of data. In such times, it is hard for the user to understand whether the connection with the server is dead or it is still loading and/or working. The user will feel comfortable if you can use a gif image to show that the application working and/or busy. It is common to use a rotating hourglass until data is fully loaded. You can make it appear until the data is loaded and disappear whenever all data are loaded.

document.getElementById(“loading”).style.visibility = “visible”;
document.getElementById(“loading”).style.visibility = “hidden”;

Instead of a rotating hourglass, you can also keep a blue line creeping from left to right slowly.
Let the User Control the Application
It is meaningless if the user types a wrong word and your application immediately stores it in the database. This may annoy the user easily since every user will want to correct it before it is saved in the database. It is a better way to give the user a way so that she herself can store the data when she is ready to do so. Let the user feel comfortable with your application and do not bug her with too much client server interactions.
Also remember to keep a way so that the users can undo errors they have done.

Test Your Application in Different Browsers
Even the most used two browsers Internet Explorer and Firefox do not handle the same coding in the same way. To make your coding cross browser supported, you need to be careful from very beginning. After you develop a part and test it using the commonly used browsers or by the browser the application will be used is a good practice. The more browsers support your application, the more robust and reliable you application is.

pdf url: http://tanzilo.files.wordpress.com/2008/02/microsoft-word-ajax.pdf