Temporary note. RealBasic v5.5 standard edition available free to VbClassic users, till 15Apr05 only and registration required. See GetItFirstFromHere.
REALbasic was originally called CrossBasic?
, and the first version was developed by an Australian, Andrew Barry.
It is now sold and maintained by a US company - http://www.realbasic.com/
The following is based on v5.5.3 of the package. Many new language features date from v5.
The package includes
- IDE with visual editor for forms, runs on Windows, Classic MacOs, and MacOsx
- Any version can compile applications for any of these operating systems, plus x86 Linux applications. For MacOsx, it can build both PEF and Mach-O applications.
- debugger including remote debugging to the same or a remote platform (inc Linux)
- ObjectOrientedProgrammingLanguage as described further below
- cross-platform application framework including
- 3D graphics (using the high-level Quesa/QuickDraw 3D),
- 2D path-based graphics with masking
- sound and MIDI
- XML and XSLT
- comprehensive socket-based communications
The application framework gives a seamless cross-platform experience without the need to tweak screens common in c++ frameworks.
The language is an interesting extension of BasicLanguage
, largely compatible with version 6 of VbClassic
. (It is designed to be an option for migrating from VisualBasic
It adds a clean single-inheritance OO model with three layers of access control.
Java-style interfaces are commonly used.
The 'extends' keyword allows adding methods to existing classes, like ObjectiveCee
categories. This is an extraordinarily powerful technique for framework-based development and takes away much of the need for subclassing and factory functions in other frameworks.
The language's constant mechanism allows constants to be defined conditional on locale and platform. This includes colour constants as well as strings and numbers.
The operator overloading is more rigourously defined than C++, allowing you to overload differently for the RHS of operations. The operator_lookup is able to intercept requests for methods so classes can have dynamic behaviour.
REALbasic 5.5 added return type covariance to the language, and REALbasic 2005 adds block-level declarations. This is an extremely valuable addition that makes refactoring much simpler.
A full compiler is included in the runtime so you can compile and run code. This is NOT an interpreted sandbox and you have complete control over what you expose to the compiled code by supplying your own context object.
All very good, but can you use it to develop a complete application with database access, interface to other components (e.g. ComponentObjectModel
objects ), link up to third party tools (e.g. CrystalReports
), keep up with changes in standards (e.g. ExtensibleMarkupLanguage
It will be good if RealBasic
can be used to develop applications written for WindowsLonghorn
, which will break most VbClassic
applications due to the Avalon component (no more win32).
The real question is however, can developers with proficiency in this dialect of the BasicLanguage GetaRealJob?
Who knows what the hell results in a "real job" these days. Picking a language is like picking stocks. Smaller niches are sometimes more lucrative than widely-used languages, but may limit your geographical choices. During the dot-com bust, legacy and small-niche tools allowed me to survive until the economy rebounded. You just have to be prepared for travel.
Anybody want to try to list differences between this and VB-classic?
The marketroids at Real software have a page about that http://www.realsoftware.com/realstudio/vbdevelopers.php
RB has been renamed to Xojo. They also changed the company name to Xojo. And the language is also now called Xojo.
Oh oh, this hints that the MBA's and the marketing suits may be playing their common pump-and-dump games. Sleep with one eye open. X's and Z's in new names is a yellow alert.
CategoryProgrammingLanguage CategoryLanguageImplementation CategoryVisualBasic