Welcome!

PowerBuilder Authors: Jayaram Krishnaswamy, Chris Pollach, Kevin Benedict, Avi Rosenthal, Yakov Fain

Blog Feed Post

PowerBuilder Mobile

Appeon Mobile Beta 1.0

First 48 Hours

December 14, 2012

     Well, its been a real "adrenaline rush" for me participating in the original Appeon Mobile Alpha and now first official Appeon Mobile Beta 1.0 for approximately only 48 hours now. Its amazing to see how far Appeon has come in just a few weeks between the Alpha release that I first saw in November to what I see now in Beta 1.0! I am so excited, that I thought I would share with you some of my experiences - since I have been actually able to build example applications, deploy existing PB applications and even better yet, get my Software Tool & Die Foundation Class library and its associated applications deployed and running on a real iPad!



      First all though, while the PB application do work well ... its would be advantageous to consider some of these best pratices when building or refactoring a PB applciation for the mbile space. here are some thoughts on the subject:

Fingers vs. Mouse

iOS-based devices mainly use the human finger for input; desktop computers mainly use a mouse for input. Designing a user interface for interaction with the finger is very different than designing for mouse.

    First of all, you would need to design larger UI controls for a finger than you would for a mouse pointer in the desktop environment. For example, iOS recommends the comfortable minimum size of a tappable target is 44 x 44 points, which is approximately 128 x 128 PBUs.

    Secondly, a mouse can have a hover state, so tool tips and other roll-over effects can be used in the desktop application. Besides that, a mouse can have a right mouse button, so right-click popup menu can be easily supported. However, these design elements are less natural on an iOS application.

Virtual keyboard vs. real keyboard

A desktop application can take advantage of a real keyboard to help people type fast and correctly, and enable shortcut key functionalities, while an iOS application mainly uses a virtual keyboard which takes up the precious screen space, and is typo-prone, therefore, you should avoid using the virtual keyboard whenever possible, and try to design the user interface for selection rather than for typing, for example, use a ListBox, TrackBar, or spin control to replace a text field.



Screen Size

Compared to desktop applications, iOS applications are running on a more compact screen, therefore, their window size must be smaller, while the UI controls must be large enough to be easily tapped. This means that only the primary functionalities can be displayed at the screen at a time, the secondary functionalities should be hidden. This requires you to carefully design the application structure, the user interface, and the window navigation, especially for smartphones such as iPhone.

Orientation Change

Device orientation can change in iOS mobile device and people often expect to use their iOS-based devices in any orientation, therefore, you will need to consider how to support orientation change when you design the application.

Memory management

Memory is more tightly constrained for iOS-based device than it is for desktop computers. Besides that, iOS does not support garbage collection. Therefore, whenever possible, you should release objects directly rather than auto release them.

Font

Fonts used in the iOS application and the PB application are not exactly the same. You can choose from the fonts that commonly exist in both the iOS application and the PB application, such as Arial (recommended font), Courier New, Euphemia, Georgia, Trebuchet MS, Verdana, Times New Roman, etc. Arial is the most recommended font, because it looks very similar to the iOS default font Helvetica. If you choose a font that is available in the PB application but not available in the iOS application, the font will also be mapped to Helvetica automatically at runtime. For the mapping rules, please see Control font.

Colour

The RGB color used in the PB application will be displayed as the exact same RGB color in the iOS application at run-time. But the system colors may not, because the Windows system colors (such as ButtonFace) are different from the iOS system colors. If you have used or intend to use the system colors in the application, you may notice there are minor differences.





   For more information on designing proper iOS applciations, please read the Apple Design Guide's "iOS Human Design Guidelines"


  For those who would like to join the Appeon Mobile beta program, please follow this link for more information on this great oppoertunity!

  If you are in the Appeon Mobile beta program and would like to try my STD Foundation Class library for building exceptional GUI and high-performance / low-foot print applications for Appeon Mobile - please check out the SourceForge home (tip: select "All Files" and then navigate to the Appeon Mobile section).


Regards ... Chris


 

Read the original blog entry...

More Stories By Chris Pollach

Chris Pollach is a Senior Consultant with over 30 years experience in Systems and Software Analysis, Development, Maintenance and Technical Support, mainly in the areas of GUI Design, MS-Windows Programming, Java / .NET Programming, Wireless, Application / Web Server Design & Programming, Object Oriented Development Tools and Methodologies, Data Base, Data Communications and Network application development. He has participated in numerous technical, planning and management roles, as well as consulted and educated in these fields for a diverse clientele. He is also the owner of “Software Tool & Die Inc.” a company dedicated to provide custom software and education solutions on Object Oriented business systems.

As an educator, Chris is certified to teach PowerBuilder (first in Canada), MS-SQLServer, Sybase’s Enterprise Application Studio and EAServer integrated application/web development environment. He is former Certified SilverStream developer (CSSD) and current Certified PowerBuilder Developer – Associate / Professional (CPD-P) as well as a Certified Sybase Tools Instructor (CSI).

Chris has written numerous articles in various popular personal computer magazines, newsletters and is the author of the PowerGuide and PowerExpert products as well as the STD Foundation Classes. Currently, Chris has developed a Foundation Class library for Sybase's PocketBuilder, SAP's PowerBulder and EAServer products and now Appeon Web & mobile products that integrates JSP or ASP web development, Section 508 / CLF web standards and mobile applications. A new Web Service framework has also been released for IIs to support PowerBuilder based web service NVUO's!

Chris recently became a 2nd Degree Black in the TaeKwonDo martial art and has developed a Martial Art multimedia study guide using the Component-One “Doc2Help” and Sybase PowerBuilder products. Since the fall of 2004 he became a TaeKwonDo instructor for the City of Ottawa’s Goulbourn program. He has also been certified with the World TaeKwonDo Federation (February 2005 - 1st Dan and October 2008 - 2nd Dan).

Chris was awarded the Sybase “Innovation and Achievement” award for 2005 as voted for by the International Sybase User Group (ISUG). This award was presented for innovations to the PocketBuilder mobile development product, contributions to the PowerBuilder News groups and support of the Ottawa Sybase User Group.

To round his management and leadership skills, Chris is the former president of the Kiwanis Club of Goulbourn and still volunteers his time with the service clubs in his area. He is also the coordinator of the Ottawa Sybase User group and a certified NAUI scuba instructor. For the last three years, Chris has been voted onto the ISUG Board of Directors and holds the position of "Director - North American User Groups".