Misplaced Pages

Realbasic: Difference between revisions

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Browse history interactively← Previous editNext edit →Content deleted Content addedVisualWikitext
Revision as of 05:35, 5 June 2006 editSasquatch (talk | contribs)Administrators10,702 editsm Protected REALbasic: here we go again ← Previous edit Revision as of 05:36, 5 June 2006 edit undoShaunES (talk | contribs)1,485 edits Framework features: Mac->Macintosh.Next edit →
Line 41: Line 41:
* ] datatypes compatibility, * ] datatypes compatibility,
* ] and ] application support (Professional edition only) * ] and ] application support (Professional edition only)
* Mac-specific: * Macintosh-specific:
** ], ** ],
** ], ** ],

Revision as of 05:36, 5 June 2006

REALbasic
REALbasic icon
REALbasic 2005 IDE
REALbasic 2005 IDE
The REALbasic IDE running on Mac OS X
Developer(s)REAL Software, Inc.
Stable release2006 R2 / April 10 2006
Operating systemMac OS X, Microsoft Windows, Linux
TypeProgramming
LicenseCommercial
WebsiteREAL Software, Inc

REALbasic (RB) is an object-oriented dialect of the BASIC programming language developed and commercially marketed by REAL Software, Inc in Austin, Texas for Mac OS X, Microsoft Windows, and Linux.

History

REALbasic was created by Andrew Barry. It was originally called CrossBasic due to its ability to compile the same programming code for Mac OS and Java (although the integrated development environment was Mac only). It was then redubbed REALbasic by REAL Software when they took over development in 1997 and dropped the Java target. The IDE is now available for Microsoft Windows, Mac OS X and Linux and can compile applications for Windows (Windows 98 and higher), Macintosh (Classic and OS X) and x86 Linux.

Language features

RB is a strongly-typed language with minimal automatic type conversion, which supports single inheritance and interfaces, class methods and class properties, reference counting, and operator overloading. A very important feature is the ability to extend (not just inherit from) existing classes, like Objective-C Categories. This considerably reduces the need for the Abstract Factory Pattern, which complicates using Application Frameworks in Java and C++.

Framework features

As described in the language reference, its built-in framework supports

(REAL Software 2006).

File Format

The source file format contains window and control placement data and is proprietary, although XML import and export are supported. All source code can be contained in one project file, but it is also possible to have classes/modules in separate files in the same way as most other languages or dialects can. REALbasic compiles directly to machine language for each platform that it supports.

Current Editions of IDE

File:REALbasic 2006.png
A typical GUI building session in REALbasic's IDE

There are two versions of the IDE:

  • The professional edition can compile programs for Mac OS X, Mac Classic, Linux and Windows from the same source code file; it can also access databases (Oracle, PostgreSQL, MySQL etc.) including the built-in single-user REAL SQL Database engine based on SQLite; it compiles console applications, can remote debug and has numerous other features.
  • The standard edition only compiles programs for the platform that the IDE is running on (either Windows, Linux or Mac), and does not allow access to databases other than the built-in REAL SQL Database.

Both versions of the IDE permit building the application's graphical user interface by dragging the controls from a toolbar to their parent window. Layout of the controls is helped by the IDE that permits aligning them (both horizontally and vertically), and which gives informations about the distance between controls, or between a control and the window borders.

Example code

This is an example of operator overloading for a hypothetical Complex class which permits to sum a real to a complex number, and to sum two complex numbers:

Function Operator_Add(rhs as Single) As Complex
 Dim ret As New Complex
 ret.R = Self.R + rhs
 ret.I = Self.I
 Return ret
End Function
Function Operator_Add(rhs as Complex) As Complex
 Dim ret As New Complex
 ret.R = Self.R + rhs.R
 ret.I = Self.I + rhs.I
 Return ret
End Function

The same function can be defined to accept Double datatype values. This code shows how to use the Complex class to sum a real with a complex number:

Dim First As New Complex(0, 1)
Dim Second As New Complex(1, 1)
Dim Sum As Complex
Sum = First + 5.0 + Second
// Sum will be (6, 2)

References

External links

See also

Categories: