Seberapa matang FreeBASIC? [Tutup]

10

Seorang teman saya sedang mempertimbangkan untuk menggunakan FreeBASIC di lingkungan produksi yang kritis. Mereka saat ini menggunakan GWBasic, dan mereka ingin melakukan transisi lunak ke bahasa yang lebih modern. Saya hanya khawatir bahwa mungkin ada bug yang tidak terdeteksi dalam perangkat lunak. Saya melihat bahwa nomor versi mereka adalah 0.22.0, yang menunjukkan, bahwa itu belum cukup matang. Saya juga membaca diskusi ini , tanpa bisa menyimpulkan. Juga di halaman Sourceforge mereka tidak ada indikasi apakah itu Alpha atau Beta (yang lagi pula bukan indikator yang sangat baik). Apakah ada yang punya pengalaman sendiri tentang jatuh tempo, gagasan tentang cara menilai jatuh tempo, atau mengetahui perusahaan yang menggunakan FreeBASIC dalam lingkungan produksi yang kritis?

David
sumber
23
Jika mereka menggunakan GWBasic, segala sesuatu adalah peningkatan.
Craig
1
Forum FreeBASIC tampaknya merupakan tempat yang lebih baik untuk mengajukan pertanyaan ini.
Matt Ellen
2
@ David Apakah mereka memiliki lingkungan pengujian? Mungkin layak menjalankannya dan mempekerjakan sebagai konsultan salah satu pengembang proyek, sehingga ia dapat memperbaiki bug yang ditemukan dalam proses pengujian.
Vitor Py
4
Saya menduga bahwa beralih dari GWBasic ke dialek BASIC lainnya tidak akan selembut yang Anda pikirkan. Hukum Hofstadter berlaku terutama untuk penulisan ulang.
Rein Henrichs
1
Nomor versi adalah hal yang sangat spesifik untuk proyek. Beberapa proyek menyimpan digit utama untuk sesuatu yang sangat istimewa dan terus memperbarui versi minor dan mikro.
Lars Viklund

Jawaban:

8

Saya harap belum terlambat untuk menggali utas lama.

Saya telah menggunakan FreeBASIC di lingkungan industri selama 5+ tahun, dan telah menemukan itu sebagai batuan padat. Ini benar-benar bekerja dengan sangat baik sekitar 0,1, dengan kompatibilitas QuickBASIC yang berkembang, dan perlahan-lahan tumbuh melebihi akar tersebut dan menjadi lebih "serius" tetapi dapat dikatakan bekerja dalam mode kompatibel 100% QB yang hampir sama. Rilis yang cukup besar hanya melihat nomor versi naik 0,01.

Saya sarankan teman Anda membawa GWBASIC ke MS QuickBASIC, yang seharusnya cukup mudah (saya sudah pernah melakukannya, bukankah itu dirancang untuk kompatibilitas 100%?). FreeBASIC kemudian memberi Anda pilihan 'abad ke-21' untuk berjalan secara native sebagai aplikasi 32 bit jika ada yang merasa perlu. Kalau tidak dengan Windows 7 dll, Anda terjebak menggunakan VM yang menjalankan DOS atau sesuatu.

Antony
sumber
10

PureBasic mungkin adalah taruhan terbaik Anda daripada FreeBASIC tetapi jika saya adalah Anda, saya mungkin akan berubah ke bahasa yang lebih modern dan kuat seperti C # atau Python.

Gary Willoughby
sumber
3

Yang merupakan BASIC terbaik untuk digunakan untuk meningkatkan dari GWBASIC adalah PowerBasic (www.powerbasic.com). Banyak yang telah melakukan ini sebelumnya, jadi ada cukup banyak pengalaman dalam komunitas pengguna Powerbasic jika Anda membutuhkan bantuan di sana.

Juga Powerbasic adalah produk berkualitas tinggi dengan hampir tidak ada masalah / bug dan dikembangkan secara aktif. Ini tidak gratis ($ 199) tetapi bernilai setiap sen.

FYI: Saya tidak berafiliasi dengan mereka dan menggunakan VB.NET sendiri (karena alasan profesional; kalau tidak, itu Powerbasic ...).


sumber
3

Powerbasic cukup matang, dan saya sungguh-sungguh akan merekomendasikannya, terutama jika ketergantungan dan dukungan besar penting bagi Anda. Saya pribadi tidak menggunakannya lagi karena tidak benar-benar dirancang untuk pemrograman game - yang saya gunakan (dan rekomendasikan) cross-platform BlitzMax.

Yang sedang berkata, Freebasic tidak boleh terlalu banyak rintangan jika Anda berasal dari GWBasic, dan tampaknya cukup stabil juga. Dukungan dokumentasi dan forum juga lebih baik daripada rata-rata.

Namun, jika saya adalah perusahaan (bukan individu) yang mencari solusi yang akan ada dan didukung untuk masa mendatang, saya akan pergi dengan sesuatu seperti Powerbasic. di sini adalah program yang dapat mengkonversi QBasic ke Powerbasic: http://www.powerbasic.com/support/downloads/files/QB2PBv2.zip

Semoga ini membantu! Russell

Russell
sumber
3

Berikut adalah dialek-dialek dasar yang baik sebagai kompiler dan embeddable script:

1) gambas

Ini adalah dialek-dialek dasar berikut yang hanya baik sebagai kompiler tetapi dapat menyematkan skrip lain:

2) jabaco

3) objectivebasic

4) freebasic

5) chipmunkbasic

Berikut adalah dialek-dialek dasar yang dapat disambung yang baik, dan dapat disematkan ke dalam dialek-dialek dasar lainnya tergantung pada kerangka kerjanya:

6) scriptbasic

7) maven-sb4j

8) ajbasic

Semua ini juga dapat digunakan untuk membuat aplikasi gui yang berbeda satu sama lain, alat penghubung database, dan di bidang aplikasi yang dapat disematkan (halaman server web), scriptbasic dan gambas-gbs3 sudah ada di sana, sedangkan jika Anda bisa mendapatkan fb-curl dan fb-simplewebserver dan mengintegrasikannya ke dalam kerangka freebasic, kemudian juga freebasic-server-pages (jika tidak ada maka Anda mungkin harus mengunduh dan menyalin-tempel pustaka dan file header di bawah lib dan termasuk direktori freebasic masing-masing). Bahkan jabaco dapat menanamkan maven-sb4j, atau objectivebasic dan chipmunkbasic masing-masing dapat menyematkan applescript dan scriptbasic. Jadi ini kemungkinan memiliki solusi untuk sebagian besar persyaratan.

Jika Anda sangat khusus dengan kompatibilitas gwbasic maka pilih bwbasic (gwbasic ditingkatkan untuk freebsd dan linux), tapi saya tidak berpikir ada banyak perbedaan dengan yang lain.

Namun untuk grafis dengan bwbasic Anda harus bersaing dengan opsi berbasis x11 atau menunggu hingga menambahkan dukungan untuk tk, fox, dan toolkit terkenal lainnya.

Jika Anda bersedia mencari:

Lingkungan pengembangan yang mirip vb + laman server dasar, lalu pilih gambas atau jabaco dengan maven-sb4j.

Interpreter yang kuat didukung dengan ide yang tipis tapi bagus: freebasic, dan jika Anda bisa mendapatkan server fb-curl dan fb-simplewer dan mengintegrasikannya ke dalam kerangka freebasic, maka juga freebasic-server-pages.

Mesin web yang tangguh untuk halaman server dasar, kemudian scriptbasic, dan thinbasic.

Jadi, ini semua kuat dan dapat digunakan setidaknya setelah menambahkan beberapa modul.

Meminjam beberapa fitur minor dari python / perl / ruby: scriptbasic (dan juga yabasic3)

Sintaks mudah dan sangat standar: akan menjadi obasic (openbasic) di masa depan, saat ini freebasic dan scriptbasic adalah dua rasa yang bervariasi atau dasar tradisional, sedangkan gambas dan jabaco adalah dialek vb6 yang bervariasi.

kaushikkg
sumber
2

Apa tepatnya kasus penggunaan Anda? Atau lebih tepatnya case use temanmu. Saya akan mengarahkan mereka ke Python (atau bahasa lain yang banyak digunakan tetapi juga sederhana di luar sana), tetapi mungkin ada beberapa alasan khusus mengapa mereka perlu menggunakan dialek BASIC.

Saya semua untuk bermain-main dengan berbagai bahasa dalam proyek pribadi, tetapi untuk tujuan produksi kritis saya biasanya tetap menggunakan bahasa yang dikenal luas, didukung secara luas, dan sangat teruji dalam pertempuran.

jhocking
sumber
3
Ini bukan jawaban, tetapi lebih cocok sebagai komentar. Kasus penggunaannya adalah bahwa ini digunakan untuk perhitungan kritis bisnis dari biaya material, biaya tenaga kerja, pembuatan model 3D dll. Program GWbasic saat ini memiliki sekitar 30.000 baris kode (dibuat oleh pengembang tunggal), yang merupakan alasan mengapa lebih kecil penulisan ulang lebih disukai dibandingkan dengan pergi ke Python, yang akan membutuhkan penulisan ulang yang lengkap.
David
5
Saya pribadi tidak terbiasa dengan FreeBASIC atau GWBasic, tetapi saya kira itu bukan penulisan ulang yang kecil. Kebanyakan dialek BASIC yang saya temui sebenarnya sangat berbeda satu sama lain. Pure Basic, Real Basic, Blitz Basic, GL Basic, dll. Secara konsep mereka sangat mirip (mis. Tidak berorientasi objek) tetapi sintaksnya sangat berbeda.
jhocking
Tergoda untuk melakukan downvote siapa pun yang menyukai kode "cantik" daripada kode kerja. Kedengarannya seperti mereka memiliki sejumlah besar GWBASIC yang telah dicoba dan diuji, mereka senang dengan fungsinya, mereka hanya ingin pindah ke bahasa yang lebih modern tanpa harus menulis ulang atau mendesain ulang semuanya, yang sangat masuk akal. Menulis ulang sistem warisan yang besar adalah salah satu tugas paling sulit yang dapat Anda lakukan!
James Anderson
Pindah ke bahasa yang lebih modern tanpa menulis ulang semuanya adalah insting pertama yang masuk akal, tetapi tidak terlalu praktis dalam situasi ini. Jika satu-satunya alasan untuk menulis ulang semuanya adalah untuk mendapatkan kode "cantik" maka ya itu buang-buang waktu, tapi itu alasan untuk tidak beralih bahasa. Namun jika Anda memiliki kebutuhan nyata untuk beralih bahasa (ini adalah utas lama jadi saya tidak ingat jika dia melakukannya) maka beralih bahasa cukup banyak memaksa Anda untuk menulis ulang semuanya.
jhocking
0

Lalu ada dukungan java-api atau japi untuk scriptbasic, yabasic2 dan jabaco, yang merupakan cross-platform.

Tapi tentu saja sekarang beberapa dialek dasar memiliki toolkit lintas platform lainnya, yang dapat segera membuka jalan bagi aplikasi berkualitas di masa depan.

kaushikkg
sumber