X作成講座 on FB[番外] FB^3(&Rb)
FB^3日本語版がModEから来ました。これからは製品を買うと言うより、サポートやバージョンアップを含めた「年間契約」みたいな感じになるようです。バージョンアップ代金(年間 14800円)を払っておくと、それが有効なあいだは無償で新しいCDが届くそうです。ロクに使わない人間にとって毎年 14800円ってのは辛いスね(^^;)
一応パッケージに書いてある宣伝文句から、気になったところを紹介します。ただし私が解釈して勝手に書いてるので内容は保証出来ません。
・ PPC ネイティブコードの生成
PPC/68K/FAT が作成可能。 68Kマック上でも作れます。
ちなみにFB自身もFBで作られているのでネイティブ作動。
更にちなみにFBの完全ソース付き! で改造自由!!
・ CW の 1/10 以下の必要ディスク容量
確かに大きな利点かも知れない。 CW の大きさと言ったら...
・ N88 BASIC 互換機能
PC98 の BASIC ソフトが(小変更で)動く!(ように努力中)
MZ BASIC 互換と両立するのだろうか・・・
・ 演算ルーチンの高速化
特徴のひとつであった10進演算は無くなった?
・ 32K コードセグメントの廃止
古い制約から解放されて、自由度が増したようです。
・ Cや Pascal のレコードが扱える
従来の「疑似レコード」から一歩前進してる模様。
・ すべての Apple のヘッダファイルを変換するツールが付属
「すべての」と言い切りましたね。期待していいのかな。
・ FBII、及び STAZ が販売していた全てのコードライブラリが付属
相変わらずのサービスぶりは健在。もちろんPGも付属。
PGは近く新しくなるらしい。(初期に付属するのは従来品)
・ オブジェクト指向化
そのうち「クラス」だの「メソッド」だのと言い出すらしい。
・ 他のプラットフォームへの対応
も技術的には可能だそうです。Win版出来たら凄いかも。
なお、OS X に関しては何も書いてありません。また今のところ carbon( OS8/9 と OS X 両対応の API )にも未対応のようです。 carbon 自体がまだ安定してませんから、じっくり様子を見ようということでしょうかね? 正式なアナウンスが無いので余談は許しませんが、なんとか OS X 時代にも生き残って欲しいものです。
FB3はコードリソースを作れなくなりました。FBをもっぱら XCMD 作成に使ってる人(少ないでしょうね...)はバージョンアップしても意味が無いことになります。ただしFB3にはFB2のフルセットが同梱されているので、FB3を新たに買った場合でもFB2を使って XCMD を作ることは可能です。
ところで私はFBを使ってアプリを作ったことが無いのですが、ちょろちょろといじった感触は「なかなか良い」でした。マイナーな言語であるぶんマニュアルやレッスンが充実していて、それはもう至れり尽くせりです。
但し、ご多分に漏れず全てのマニュアルはPDF書類になっています。 SuperCard にしろ FutureBasic にしろ、モードさんのマニュアルは和訳が怪しい部分があるのですが、幸いにも最近はやる気を見せていて、随時マニュアルのアップデートもされているようです。(PDFだからこそ出来る芸当ではある) 製品を買ったらまずモードさんのサイトで最新のマニュアルを入手しましょう。願わくば何らかの方法で紙のマニュアルが入手出来ると嬉しいんだけど・・・。
−−−−RbとFB−−−−
REALbasic とどう違うのか、という質問をたまに見かけます。
簡単に言うと REALbasic が用意された部品だけを使ってアプリを仕上げる HyperCardっぽいコンパイラであるのに対し、FutureBasic はカリカリとコードを書いてアプリを作る正統派です。 HTML 書類を作る時のことを想像して下さい。ホムペ編集ソフトを使うとラクに出来ますが、同時にそのソフトの制限を受けます。テキストエディタで HTML を書けば何でも出来ますが、書式に精通している必要があり保守も大変です。 REALbasic はラクだけど自由度が少ない、FutureBasic は何でも出来るけどその分プログラマの負担が大きいという訳です。
もちろん REALbasic だってかなりの量のコードを書かないとマトモなアプリになりませんし、逆に FutureBasic には ProgramGenerator という GUI 構築ツールが付属しています。両者は近づきつつあるとも言えますが、それでもその距離はかなりのものです。
そしてもうひとつ、忘れてならないのが完成したアプリの「サイズ」です。誤解を恐れずに言えば、実は REALbasic は一種のインタプリタなのです。ソースコードは「中間言語」に「コンパイル」され、アプリとして動く時は「ランタイムエンジン」がそれを「実行」しています。(多分) そのため、簡単なプログラムであっても、コンパイルすると巨大なアプリが出来上がってしまいます。これはランタイムエンジンそのものが大きいためです。ハイパカのスタックを単独実行アプリに変換したのと同じ状態と思えばいいでしょう。要はプレーヤを抱き込んだ形の、非常にサイズ効率の悪い形態です。
一方の FutureBasic は CPU ネイティブコードを吐き出す正統派コンパイラですから、出来上がったアプリは実行コードのみ。 ProgramGenerator を使った場合はそのコードが付加されますが、REALbasic と比べたら微々たるものです。また ProgramGenerator が吐き出すのは「ソースコード」でありプログラマから丸見えなので、自由に手を入れることも出来ます。(やらない方が無難でしょうが・・・)
ToolBox のワンダーランドに飛び込んでみたい方は是非 FutureBasic をどうぞ。マックの魅力をたっぷり堪能出来ます。 ToolBox こそがマックなのです。そうでなければ REALbasic をどうぞ。ハイパカをいじる気楽さでマックアプリを作れます。