FreeBASICはどの程度成熟していますか?[閉まっている]


10

私の友人は、重要な本番環境でFreeBASICを使用することを検討しています。彼らは現在GWBasicを使用しており、より近代的な言語への穏やかな移行を望んでいます。ソフトウェアに未検出のバグがあるのではないかと心配しています。バージョン番号が0.22.0であることがわかります。これは、まだ成熟していないことを示しています。私も結論を出すことができずにこの議論を読みました。また、Sourceforgeのページには、それがアルファ版かベータ版かを示すものはありません(いずれにしても、これはあまり良い指標ではありません)。成熟度についての独自の経験、成熟度を判断する方法に関するアイデア、または重要な実稼働環境でFreeBASICを使用している企業について知っている人はいますか?


23
彼らがGWBasicを使用している場合、何かが改善されます。
Craig

1
FreeBASICフォーラムは、この質問をするのにより良い場所のようです。
マットエレン

2
@David彼らはテスト環境を持っていますか?プロジェクトデベロッパーの1人を実行し、コンサルタントとしてプロジェクト開発者の1人を採用する価値があるかもしれません。そのため、彼/彼女はテスト実行で見つかったバグを修正できます。
Vitor Py

4
GWBasicから別のBASIC方言への移行は、思ったほど「ソフト」ではないのではないかと思います。ホフスタッターの法則は、特に書き換えに適用されます。
Rein Henrichs、2011年

1
バージョン番号はプロジェクト固有のものです。一部のプロジェクトでは、メジャー桁を非常に特別なもののために予約し、マイナーバージョンとマイクロバージョンを改訂し続けます。
Lars Viklund、2012

回答:


8

古いスレッドを掘り下げるのが遅すぎないことを願っています。

FreeBASICを5年以上産業環境で使用していて、それが非常に堅実であることがわかりました。それは実際には0.1前後で非常にうまく機能し、QuickBASIC互換性が高まり、それらのルーツを超えてより「深刻」になるまでゆっくりと成長しましたが、ほぼ100%のQB互換モードで動作するように言えます。かなり大きなリリースでは、バージョン番号が0.01上がるだけです。

あなたの友人がGWBASICをMS QuickBASICに持っていくことをお勧めします。これは非常に簡単です(以前に行ったことがありますが、100%の互換性のために設計されていませんか?)。FreeBASICは、「21世紀」のオプションを提供し、だれでも必要に応じて32ビットアプリとしてネイティブに実行できます。それ以外の場合、Windows 7などでは、DOSまたは何かを実行しているVMを使用して立ち往生しています。


10

PureBASICはおそらくFreeBASICの代わりにあなたの最善の策ですが、もし私があなただったら、おそらくC#やPythonなどのよりモダンで堅牢な言語に変更するでしょう。


3

GWBASICからのアップグレードに使用するのに最適なBASICは、PowerBasic(www.powerbasic.com)です。多くの人がこれを以前に行ったことがあるので、Powerbasicのユーザーコミュニティでは、支援が必要な場合にかなりの経験があります。

また、Powerbasicは問題やバグがほとんどなく、積極的に開発されている高品質の製品です。無料(199ドル)ではありませんが、1ペニーの価値があります。

参考までに:私はそれらとは関係がなく、自分でVB.NETを使用しています(専門的な理由で、それ以外の場合はPowerbasicになります...)。


3

Powerbasicはかなり成熟しているので、特に信頼性と優れたサポートが重要な場合は、心からお勧めします。ゲームプログラミング用に設計されていないため、個人的にはもう使用しません。クロスプラットフォームのBlitzMaxを使用(および推奨)しています。

そうは言っても、もしGWBasicから来ているのであればFreebasicはそれほどハードルであってはならず、かなり安定しているようです。ドキュメントとフォーラムのサポートも平均よりも優れています。

それでも、私が(個人ではなく)企業であり、そこにあり、近い将来にサポートされるソリューションを探している場合、Powerbasicのようなものを使用します。QBasicをPowerbasicに変換できるプログラムは次のとおりです。http://www.powerbasic.com/support/downloads/files/QB2PBv2.zip

お役に立てれば!ラッセル


3

これらは次の基本的な方言であり、コンパイラと埋め込み可能なスクリプトの両方として適しています。

1)ガンバ

これらは次の基本的な方言であり、コンパイラとしてのみ有効ですが、他のスクリプトを埋め込むことができます。

2)ジャバコ

3)客観的

4)freebasic

5)シマリスベーシック

これらは、次の埋め込み可能な基本方言であり、フレームワークに応じて他の基本方言に組み込むことができます。

6)scriptbasic

7)maven-sb4j

8)ajbasic

これらすべては、相互に異なるguiアプリケーション、データベース接続ツール、および埋め込み可能なアプリケーション(Webサーバーページ)の領域で、scriptbasicとgambas-gbs3がすでに存在している場合にも使用できますが、fb-curlとfb-simplewebserverをfreebasicフレームワークに統合し、次にfreebasic-server-pagesも統合します(これらがそこにない場合は、libの下にあるライブラリとヘッダーファイルをダウンロードしてコピーアンドペーストし、それぞれfreebasicのディレクトリをインクルードする必要があります)。jabacoでさえmaven-sb4jを埋め込むことができます。あるいは、objectivebasicとchipmunkbasicはそれぞれapplescriptとscriptbasicを埋め込むことができます。したがって、これらはほとんどの要件に対して解決策を持っている可能性があります。

gwbasicの互換性に非常にこだわっている場合は、bwbasic(freebsdとlinux用に拡張されたgwbasic)を選択しますが、他のものとの違いはほとんどないと思います。

ただし、bwbasicを使用するグラフィックスの場合は、x11ベースのオプションと競合するか、tk、fox、およびその他のよく知られたツールキットのサポートが追加されるまで待つ必要があります。

あなたが探すことをいとわないなら:

堅牢なvbのような開発環境+基本的なサーバーページ。次に、maven-sb4jを使用してgambasまたはjabacoを選択します。

薄くても良いide:freebasicでサポートされている堅牢なインタープリター。fb-curlとfb-simplewebserverを入手してfreebasicフレームワークに統合できる場合は、freebasic-server-pagesも統合できます。

基本的なサーバーページ用の堅牢なWebエンジン、scriptbasic、thinbasic。

したがって、これらはすべて堅牢であり、少なくともいくつかのモジュールを追加した後で使用可能になる可能性があります。

python / perl / ruby​​:scriptbasic(およびyabasic3)からいくつかのマイナーな機能を借りました

簡単で非常に標準的な構文:将来的にはbasasic(openbasic)になります。現在、freebasicとscriptbasicは2つの異なるフレーバーまたは従来のベーシックですが、gambasとjabacoはさまざまなvb6方言です。


2

あなたのユースケースは正確には何ですか?またはむしろあなたの友人のユースケース。私はそれらをPython(または他の広く使用されているが単純な言語)に向けるつもりですが、おそらくBASIC方言を使用する必要がある特定の理由があります。

私は個人的なプロジェクトでさまざまな言語をいじるのが好きですが、重要な制作目的のために、私は一般に広く知られており、広くサポートされており、非常に厳しいテストを受けている言語に固執します。


3
これは回答ではありませんが、コメントとして適しています。ユースケースは、材料費、人件費、3Dモデルの生成などのビジネスクリティカルな計算に使用されます。現在のGWbasicプログラムには、約30.000行のコード(1人の開発者が作成)があり、これが完全な書き換えが必要になるPythonへの移行と比較して、書き換えが優先されます。
デビッド

5
私は個人的にFreeBASICやGWBasicのどちらにも精通していませんが、小さな書き直しではないと思います。私が遭遇したほとんどの基本的な方言は、実際には互いにかなり異なります。ピュアベーシック、リアルベーシック、ブリッツベーシック、GLベーシックなど。概念的には非常に似ていますが(オブジェクト指向ではないなど)、構文はまったく異なります。
11

動作中のコードよりも「かなり」のコードを好む人に反対票を投じたくなります。彼らは試行錯誤したGWBASICの大規模なボディを持っているように聞こえます、彼らはその機能に満足しています、彼らは完全に賢明なすべてを書き直したり再設計したりする必要なしに、より近代的な言語に移動したいだけです。大規模なレガシーシステムを書き直すことは、これまでに着手できる最も困難な作業の1つです。
ジェームズアンダーソン

すべてを書き直さずに、より現代的な言語に移行することは、理にかなった最初の本能ですが、この状況では実際には実用的ではありません。すべてを書き直す唯一の理由が「きれいな」コードを入手することである場合、そうです、それは時間の大きな浪費ですが、それが言語を切り替えない理由です。ただし、言語を切り替える必要が本当にある場合(これは古いスレッドなので、彼がそうだったかどうかは覚えていません)、言語を切り替えると、ほとんどすべてを書き換える必要があります。
ジョッキング

0

次に、scriptbasic、yabasic2、jabacoのjava-apiサポートまたはjapiがあり、クロスプラットフォームです。

しかしもちろん、今日では多くの基本的な方言に他のクロスプラットフォームツールキットもあり、将来的には高品質のアプリケーションへの道を開くでしょう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.