REALbasic
[Wikipedia|▼Menu]

REALbasic(リアルベーシック)は、Real Software社によって開発されたソフトウェアの開発ツールであり、オブジェクト指向を採用した独自のBASIC言語を使用し、統合開発環境を備える。かつては「CrossBASIC」と呼ばれた。

あらかじめ備えられている機能が豊富なことやGUIのデザインが簡単であること、非常に理解しやすい言語仕様などから、とくに初心者に愛用される。日本では株式会社アスキーソリューションズが代理店となり販売およびサポートを提供していたが、2007年4月に開発元であるReal Software社に移管されることが発表された。

主にMacintosh版が知られ、しばしば「Macintosh版のVisual Basic」と喩えられるが、Windows版ならびにLinux/x86版も存在する。また、REALbasicを利用している環境に関わらず、全てのプラットフォーム用の実行バイナリを出力することができるため、双方向のクロスプラットフォーム開発が可能である。

なお、REALbasicは、Universal Binaryアプリケーションを作成することのできる、サードパーティー開発ツールのひとつである。


目次

1 REALbasicの機能

1.1 機能と特徴

1.1.1 習得のしやすさ

1.1.2 マルチメディア機能

1.1.3 巨大なアプリケーション

1.1.4 処理速度

1.1.5 フロントエンドの開発

1.1.6 Mac OSの機能への対応

1.1.7 Windowsの機能への対応

1.1.8 自動メモリ管理

1.1.9 優れた拡張性



2 REALbasicの現状

3 サンプルコード

4 脚注

5 外部リンク


REALbasicの機能

REALbasicの主な機能は以下のとおり。
機能と特徴

イベント駆動型の構造化された完全なオブジェクト指向言語

REALbasicやランタイムが不要な単独のアプリケーションビルドできるコンパイラ言語

参照カウント方式のガベージコレクションを採用

マルチリンガルに対応した豊富な文字列操作メソッド

Perlと同等の正規表現による強力な文字列検索メソッド

文字列はUnicode (UTF-8) で処理するため、言語に依存しないアプリケーションが開発できる

各プラットフォーム間で、ソースコードは完全に互換(OS依存の機能を使用している場合を除く)

Macintosh Toolbox (Toolbox) を学ぶ必要がない

ビジュアルインターフェースビルダによるGUIのグラフィカルなデザインが可能

マルチメディア機能に長けている

GUIを持たないコンソールアプリケーション、サービスアプリケーションも作成可能

アプリケーションサイズが大きい(後述)

処理速度は他の開発環境で作成したアプリケーションに比べて遅い

ダブルクリックで起動できるアプリケーション以外のプログラム(プラグインや機能拡張など)は作成できない

習得のしやすさ

Macでのプログラミングを複雑にしているToolboxやその他のAPIを学ばずに済む点は初心者にとって非常にありがたい点であるが、同時に、複雑な機能を実現することが難しくなっている。それをカバーするためにプラグインシステムなどが採用されており、サードパーティーから優れたプラグインが多数開発されている。

言語仕様については、BASIC言語をベースにしているため、基本的な命令その他習得の容易さは他の追随を許さない。また、オブジェクト指向的実装についても、クラスインタフェースなど、Java相当の機能を実現している。
マルチメディア機能

マルチメディア機能についてはQuickTimeの機能をかなり引き出すことが可能であり、ビルトインの命令としてQuickTimeムービーを編集する機能も備える。グラフィック周りは、処理の遅さに目をつぶれば、ラスターイメージからベクターイメージ、3DCGまでを扱え、256階調グレースケールマスクによるアルファブレンドも簡単に実現でき、ソフトウェアレベルでスプライト機能さえも有する[1]。スプライトに関しては一切コーディングすることなくスプライト同士が接触したかを判定することまで可能。画像の透過に関しては、アルファブレンドを有しながら特定の色を透過したりアルファチャンネルが使えないなど、中途半端な感もある。

比較的充実したグラフィックス機能を備える反面、サウンド機能は貧弱である。あらかじめ用意したサウンドファイルを読み込み、再生することしかできず、リアルタイムでの音声処理はプラグインに依存する必要が有る。
巨大なアプリケーション

アプリケーションサイズが大きいというのはREALbasic製のアプリケーションのあまり望ましくない特徴といえるだろう。たとえば、何もコーディングを行っていない場合であってもmacOSに最適化されたコードであるMach-O Carbon Universal Binaryでコンパイルすると8.8MBのファイルサイズを消費する。これは、REALbasicのフレームワーク自体をアプリケーションに内蔵してしまうことと、PowerPCx86の2つのアーキテクチャの実行ファイルが生成されるためである。また、アプリケーション内で特定のコントロールや機能(例えばXMLパーサなど)を使用している場合、さらにファイルサイズは増加する。

とはいえ、今日のPCにおいてはハードディスクの容量も十分に大容量化されており、ファイルサイズの大きさが問題となる場面はあまりないと言える。
処理速度

処理速度の遅さもREALbasic製のアプリケーションの特徴。とくにグラフィックや多言語関係の機能は比較的遅い。このため、処理速度を補う目的で、内蔵関数と同等の機能を備える高速なプラグインを作成することもしばしば行われる。
フロントエンドの開発

サーバデータベースフロントエンドや、UNIXシェルDOSコマンドラインのGUIフロントエンドの開発するための各種命令も豊富。
Mac OSの機能への対応

AppleScriptAppleEventのサポートにより、他のアプリケーションと連携することも可能

UNIXコマンドを実行可能

Quartz」を利用した平面画像の描画、「Quesa(オープンソースのQuickDraw 3D互換3Dグラフィックライブラリ)」による3D描画のサポート

リソースフォーク、バイナリデータのリトルエンディアンビッグエンディアンの使い分け、255文字までのロングファイルネームなどもサポート

キーチェーン・Spotlight・アドレスブックへのアクセスをサポート

Toolbox、PowerPC共有ライブラリ(InterfaceLibなど、他のアプリケーションが共有できるPower Mac用サブルーチン群)へのアクセスの対応

GUI部品のAquaでの描画に対応

Windowsの機能への対応

OLE (COM)、タスクトレイの使用をサポート

MDIのサポート

Windows XPのサポート、GUI部品のLuna(Windows XP標準の外観)での描画に対応

Win32 APIへのアクセス、レジストリへのアクセスのサポート

DOSコマンドを実行可能

自動メモリ管理

メモリは自動的に管理しているため、プログラマメモリに関して特に意識しせずに開発が可能である。参照カウントを用いたガベージコレクションも備える。
優れた拡張性

プラグインを組み込むことによりIDE自体の拡張が行えるほか、Mac OS版ではXCMDやXFCN、AppleScript、AppleEvent、UNIXシェル、PowerPC共有ライブラリなどを利用することで、言語が備えていない機能を実現することも可能である。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:19 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:FIRTREE