progloaderはV3.00以降に内蔵されているサンプルプログラムです。
実はこのサンプルは極めて重要な意味を持っています。
プログラム自体は簡単です。
出てきたリストから選択し、「ダウンロード」を押すと・・・
出てきたリストから選択し、「ダウンロード」を押すと・・・
その後progloaderを「終了」し、で閉じると、ダウンロードしたプログラムがプログラムリストで選択出来るようになります。
プログラムだけでなく、それに必要なデータファイルも入ります。
仕組みの詳細はあえて書きませんが「X-BASICのプログラムもデータと同じ」「.basという拡張子を持つデータがプログラム」ということです。
Zipファイルはこちら : XBprogloader.zip
(下記リストファイルのサンプルを見るためのものです。プログラムそのものは内蔵されています。)
・・・仕組み・・・
この仕組みは、progloaderだけでは成り立ちません。
このプログラムを活用する=ユーザー自身が自分のプログラム(とデータ)をダウンロードで入れ込みたい場合は、以下の準備が必要になります。
・プログラムがダウンロードできるサーバーを用意する
http(s)でプログラムがダウンロードできるように、どこかに置いておく必要があります。
・どのようなプログラムがあるかを記載したリストファイルを置く
リストファイルは以下の書式をもつUTF8のテキストファイルです。
プログラム名 zipファイル名
1行1プログラム分です。プログラム名はprogloader内で表示される名前で、zipファイル名は、それを選択した時にダウンロードされるzipファイルの名前です。X-BASICのプログラム選択で出てくる名前は、その中にある*.basのファイル名です。
それらの間は1つまたはそれ以上の半角スペースまたはタブで区切ります。
; で始まる行はコメントと見なされ、無視されます。
このリストファイルはサーバー側に置かれます。それはすなわち、progloaderを書き換えずとも、ダウンロードできるプログラムを増減できるということです。
・プログラムとデータを一緒に入れたzipファイルを置く
zipファイル内には通常*.basと必要なデータを入れておきます。
ディレクトリ構造付きでも構いません。その通りにX-BASIC for iOS内に展開されます。
なお、リストファイルとzipファイルは同じURLのフォルダ(?)に置きます。
・progloader.bas内にあるURLを書き換える
str baseURL="~"がそのURLです。
この説明を読んでも理解できない人は、使ってはいけません。
・・・注意・・・
これによって入れたプログラム本体は、プログラムリスト選択から「削除」出来ますが、
付随するデータは消されず、iOS内部に残り続けます=記憶容量を食います。
なので、別途プログラムを書いて自分で削除するか、内蔵サンプルのfiler.basを使って削除してください。
・・・念のため・・・
念の為に書いておきますと、X-BASIC'にはiOSのシステムをハッキングできるような関数は一切ありません。どのようなプログラムを書いても、そのような用途には使えません。
・・・実は・・・
実はこのプログラムはV2.96公開時に入れ込むつもりでした。いえ、仕組み的に(中で使われている関数)は入れられていましたが、progloader自体を作るのに実に1年以上かかってしまいました。
ちょいと色々ありすぎて、プログラムが組めない状況というか心境にあったからです。
V3.00の開発を始めた時には、Objective-Cどころかあらゆるプログラムをかけるかどうか解からないような状態でしたが、この開発を通じて何とか感を取り戻せたようです。気力もだいぶ回復し、見た目以上にV3.00は気合の入った出来とすることが出来ました。
外部からプログラムを入れる手段を用意出来たことで、X-BASIC'が、単なる学習ツールから、自分でちょっと使うプログラムならこれで書けるんじゃない?ってなぐらいにはなったのではないかと自画自賛しています。まあ、癖は強いと思いますが。
また、非力な内蔵エディタでは書きづらいプログラムも、MacやWindows上の自分の使い慣れたものが使えるようになるので、開発も楽になるでしょう。実際のところ、私自身もプログラムはXcodeや秀丸で書いてましたので。
となると、後はデバッグ機能をなんとかせんといかんところですが、それは「実用する人が増えたら」ということで。
まずは、ご意見ご感想お待ちしています。
・・・今後・・・
progloaderができたので、今後サンプルプログラムの公開をこれ経由で行います。
時々RUNすると、新しいプログラムが入っている事があります。
・・・ProgSaver・・・
最新のアーカイブにはprogSaver.basも含まれています。
これは、プログラムを圧縮して電子メールで送信するプログラムです。
自作プログラムを外部に保存する場合はこれを使ってください。
0 件のコメント:
コメントを投稿