- REALbasic
Infobox Software
name = REALbasic
logo =
caption = The REALbasic IDE running onWindows Vista
developer = REAL Software, Inc.
latest_release_version = 2008 Release 4
latest_release_date =September 23 2008
operating_system =Mac OS X ,Microsoft Windows ,Linux
genre =Programming
license = Proprietary
website = http://www.realsoftware.comREALbasic (RB) is an
object-oriented dialect of theBASIC programming language developed and commercially marketed by REAL Software, Inc inAustin, Texas forMac OS X ,Microsoft Windows , andLinux .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). In1997 CrossBasic was purchased by FYI Software which renamed it REALbasic as well as renaming the company REAL Software. At this time they dropped the Java target, later replacing it with a Windows target and database support. The IDE is now available forMicrosoft Windows ,Mac OS X , andLinux and can compile applications for Windows (Windows 2000 and higher), Mac OS X (PowerPC ,Intel , andUniversal Binary ) andx86 Linux.Language features
RB is a
strongly-typed language with minimal automatic type conversion, which supportssingle inheritance and interfaces, class methods and class properties, automatic memory management viareference counting , andoperator 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 andC++ . REALbasic also includes delegates, introspection, and namespace support, which allows modules to contain classes, interfaces and other modules.Framework features
As described in the language reference, its built-in framework supports (REAL Software 2008):
* dictionaries,
*Visual Basic datatypes compatibility,
* fullUnicode support,
*regular expression s,
*application programming interface calls to compiled C libraries on all supported platforms,
*ActiveX and basicOLE support (on Windows); COM objects are not fully supported,
* Notification icons (on Windows),
*Windows registry (on Windows),
* cooperative threads,
*scripting language embedded in REALbasic programs throughRBScript ,
*XML parsing and generation,
* console and service application support (Professional edition only)
*Apple events (on Mac),
* Address book (on Mac),
* Keychain (on Mac),
* Spotlight (on Mac),
*QuickTime (on Mac and Windows),
* sound,
* real-time 3D graphics,
*serial communications ,
* sockets (both TCP, UDP and Inter-process_communication),
* SSL (Professional edition only),
*HTTP , POP3, SMTP andSOAP The framework functionality can also be extended by creating
plugin s using the [http://realsoftware.cachefly.net/REALbasic2007r5/PluginsSDK.zip Plugin SDK] provided by REAL Software. Plugins are created using C/C++ with a variety of supported compilers, including Metrowerks Code Warrior, Microsoft Visual Studio, gcc and Xcode. Plugins can support any platform REALbasic supports, but are not required to support all platforms.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. REALbasic 2006 Release 3 and newer also supports a human-readable version control format which allows easy collaboration with tools such as Subversion or CVS.Current editions of IDE
There are two versions of the IDE:
* The professional edition can compile programs for Mac OS X (PowerPC CarbonMach-O , i386 Carbon Mach-O and Universal Binary), Linux and Windows from the samesource code file; it can also accessdatabase s (Oracle,PostgreSQL ,ODBC , etc.) including the built-in single-user REAL SQL Database engine based onSQLite ; it compiles console applications, has a code profiler, can remote debug and has numerous other features.
* The personal 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.IDE features
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 information about the distance between controls, or between a control and the window borders.Like many modern IDEs, the
code editor supports customizablesyntax highlighting , autocompletion andrefactoring tools. The IDE also includes editors for menus and database schema as well as viewers for multimedia files such as pictures, movies or sounds.The IDE gives you access to scripting features via RBScript, which allows you to control the IDE for doing automated tasks such as running regression tests or doing nightly builds. The scripts can either be global or project-specific.
REALbasic supports incremental compilation, whereby the compiler only needs to recompile the parts of your project which have been modified. For instance, if you only modify the body of a method, then just the project item containing that method is recompiled (instead of your entire application).
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: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:See also
*
RBScript - related scripting languageComparable Basic Dialects
*
Gambas - a free approach to object basic
*Visual Basic Other Programming Languages
*
Comparison of programming languages References
* cite web
url=http://www.theregister.co.uk/2005/09/13/review_realbasic_2005/
title=RealBasic 2005 for Mac, Windows and Linux
date=September 13 2005
last=Smith
first=Tony
accessdate=2006-04-11
publisher=The Register
* cite web
url=http://programming.linux.com/programming/05/08/03/1639214.shtml?tid=22
title=Review: REALBasic 2005 for Linux
date=August 4 2005
last=Barr
first=Joe
accessdate=2006-04-11
publisher=Linux.com
* cite web
url=http://www.realsoftware.com/download/individual/
title=REALbasic Language Reference
date=May 6 2008
last=REAL Software
accessdate=2008-05-06
publisher=REAL Software
* Tejkowski, Erick (2001). REALbasic for Dummies. Hungry Minds. ISBN 0764507931.External links
* [http://www.realbasic.com REAL Software, Inc.] , makers of REALbasic
* [http://forums.realsoftware.com/ REALbasic forums] , Official REALbasic discussion forums
* [http://ttpsoftware.com/jpsite/index.php Really Basic REALbasic] , introducing programming and REALbasic to beginners
* [http://www.rbgarage.com/rbg/ RB Garage] , an open repository listing plugins, classes, modules, code examples etc.
* [http://www.rbdeveloper.com/ REALbasic Developer Magazine] , a bi-monthly magazine about REALbasic development
* [http://www.rblibrary.com/ RBLibrary] , a commercial resource of third party articles and tutorials
* [http://www.classicteck.com/rbdn.php REALDev] , a wiki-powered developer community and code repository
* [http://www.rbdevzone.com RBDevZone] , a community for professional REALbasic developers
* [http://www.declareSub.com declareSub.com] , code, articles, and a book on declares
* [http://declaresub.com/wiki/index.php/Main_Page REALbasic Wiki] , independent effort to extend REALbasic documentation
* [http://www.realbasic.tv/ RBtv] , video podcast/tutorials by George Bohnisch
Wikimedia Foundation. 2010.