FreeBASIC ne kadar olgun? [kapalı]


10

Bir arkadaşım FreeBASIC'i kritik bir üretim ortamında kullanmayı düşünüyor . Şu anda GWBasic kullanıyorlar ve daha modern dillere yumuşak bir geçiş yapmak istiyorlar. Yazılımda fark edilmemiş hatalar olabileceğinden endişeliyim. Sürüm numaralarının henüz tam olgun olmadığını gösteren 0.22.0 olduğunu görüyorum. Bu tartışmayı da sonuçlandırmadan okudum . Ayrıca Sourceforge sayfalarında Alfa mı yoksa Beta mı olduğuna dair bir gösterge yoktur (ki bu zaten çok iyi bir gösterge değildir). Herkesin olgunluk konusunda kendi deneyimi, olgunluğun nasıl değerlendirileceği hakkında fikirleri veya kritik bir üretim ortamında FreeBASIC kullanan şirketleri biliyor mu?


23
Eğer GWBasic kullanıyorlarsa her şey bir gelişmedir.
Craig

1
FreeBASIC forumları bu soruyu sormak için daha iyi bir yer gibi görünüyor.
Matt Ellen

2
@David Test ortamları var mı? Birini çalıştırmaya ve proje geliştiricilerinden bir danışman olarak işe almaya değer olabilir, böylece test çalışmasında bulunan hataları düzeltebilir.
Vitor Py

4
GWBasic'ten başka bir BASIC lehçesine geçişin sandığınız kadar "yumuşak" olmayacağından şüpheleniyorum. Hofstadter yasası özellikle yeniden yazma işlemleri için geçerlidir.
Rein Henrichs

1
Sürüm numaraları projeye özgü şeylerdir. Bazı projeler büyük rakamı çok özel bir şey için ayırır ve sadece küçük ve mikro sürümleri revize etmeye devam eder.
Lars Viklund

Yanıtlar:


8

Umarım eski bir konuyu kazmak için çok geç değildir.

FreeBASIC'i 5 yılı aşkın bir süredir endüstriyel bir ortamda kullandım ve kaya gibi sağlam buldum. Aslında, büyüyen QuickBASIC uyumluluğu ile 0.1 civarında çok iyi çalıştı ve yavaş yavaş bu kökleri aşmak ve daha "ciddi" olmak için büyüdü, ancak yaklaşık% 100 QB uyumlu modda çalışması söylenebilir. Oldukça büyük sürümler yalnızca sürüm numarasının 0,01 arttığını görür.

Arkadaşınızın GWBASIC'i MS QuickBASIC'e götürmesini öneririm, ki bu oldukça kolay olmalı (daha önce yaptım,% 100 uyumluluk için tasarlanmamış mı?). FreeBASIC daha sonra herkesin ihtiyacı hissetmesi durumunda 32 bit uygulama olarak yerel olarak çalıştırmak için bir '21. yüzyıl' seçeneği sunar. Aksi takdirde Windows 7 vb. İle DOS veya benzeri bir şey çalıştıran bir VM kullanarak sıkışıp kalırsınız.


10

PureBasic muhtemelen FreeBASIC yerine en iyi bahistir, ancak ben olsaydım muhtemelen C # veya Python gibi daha modern ve sağlam bir dile geçirdim.


3

GWBASIC'den yükseltme için kullanılacak en iyi BASIC, PowerBasic'tir (www.powerbasic.com). Birçoğu bunu daha önce yapmıştı, bu yüzden orada yardıma ihtiyacınız olursa Powerbasic kullanıcı topluluğunda oldukça fazla deneyim var.

Ayrıca Powerbasic neredeyse hiç sorun / hata içermeyen ve aktif olarak geliştirilmiş yüksek kaliteli bir üründür. Ücretsiz değil (199 $) ama her kuruşa değer.

FYI: Onlara bağlı değilim ve VB.NET'i kendim kullanıyorum (profesyonel nedenlerle; aksi takdirde Powerbasic olurdu ...).


3

Powerbasic oldukça olgun ve özellikle güvenilirlik ve büyük destek sizin için önemliyse, yürekten tavsiye ederim. Kişisel olarak artık kullanmıyorum çünkü gerçekten platformlar için BlitzMax'ı kullandığım (ve önerdiğim) oyun programlama için tasarlanmamış.

Bununla birlikte, GWBasic'ten geliyorsanız Freebasic çok fazla bir engel olmamalı ve aynı zamanda makul derecede istikrarlı görünüyor. Dokümantasyon ve forum desteği de ortalamadan daha iyidir.

Yine de, orada olacak ve öngörülebilir gelecek için destek olacak bir çözüm arayan bir şirket olsaydım, Powerbasic gibi bir şeyle giderdim. İşte QBasic'i Powerbasic'e dönüştürebilen bir program: http://www.powerbasic.com/support/downloads/files/QB2PBv2.zip

Bu yardımcı olur umarım! Russell


3

Bunlar hem derleyici hem de gömülebilir komut dosyası olarak iyi olan aşağıdaki temel lehçelerdir:

1) Gambas

Bunlar sadece derleyici olarak iyi olan ancak diğer komut dosyalarını gömebilen aşağıdaki temel lehçelerdir:

2) Jabaco

3) Objektif Temel

4) Serbest Taban

5) Chipmunkbasic

Bunlar, iyi olan ve çerçevelere bağlı olarak diğer temel lehçelere gömülebilen aşağıdaki gömülebilir temel lehçelerdir:

6) Scriptbasic

7) maven-sb4j

8) Ajbasic

Tüm bunlar, birbirinden farklı gui uygulamaları yapmak için kullanılabilir, veritabanı bağlantı araçları ve gömülebilir uygulamalar (web sunucusu sayfaları), scriptbasic ve gambas-gbs3 zaten mevcuttur, ancak fb-curl ve fb-simplewebserver ve bunları freebasic çerçevesine entegre edin, ardından freebasic-server-pages (eğer orada değillerse kütüphane ve başlık dosyalarını lib altına indirip kopyalayıp yapıştırmanız ve sırasıyla freebasic dizinini eklemeniz gerekebilir). Hatta jabaco maven-sb4j gömebilir veya objektif ve chipmunkbasic sırasıyla elma ve scriptbasic yerleştirebilir. Bu nedenle, çoğu gereksinim için bunların çözümü olacaktır.

Eğer gwbasic uyumluluğu konusunda çok titizseniz bwbasic'i (freebsd ve linux için geliştirilmiş gwbasic) seçin, ancak bazılarında çok fazla fark olduğunu düşünmüyorum.

Bununla birlikte, bwbasic içeren grafikler için x11 tabanlı seçeneklerle uğraşmanız veya tk, fox ve diğer iyi bilinen araç kitleri için destek ekleyene kadar beklemeniz gerekir.

Aramaya hazırsanız:

Sağlam vb benzeri geliştirme ortamı + temel sunucu sayfaları, ardından maven-sb4j ile gambas veya jabaco'yu seçin.

İnce ama iyi bir ide ile desteklenen sağlam yorumlayıcı: freebasic ve fb-curl ve fb-simplewebserver'ı alıp freebasic çerçeveye entegre edebiliyorsanız, aynı zamanda freebasic-sunucu-sayfaları.

Temel sunucu sayfaları için sağlam web motoru, ardından scriptbasic ve thinbasic.

Bu nedenle, bunların hepsi sağlamdır ve en azından birkaç modül eklendikten sonra kullanılabilir hale gelebilir.

Python / perl / ruby'den bazı küçük özellikler ödünç aldım: scriptbasic (ve ayrıca yabasic3)

Kolay ve çok standart sözdizimi: gelecekte obazik (openbasic) olacak, şu anda freebasic ve scriptbasic iki farklı lezzet veya geleneksel temel, oysa gambas ve jabaco çeşitli vb6 lehçeleridir.


2

Kullanım durumunuz tam olarak nedir? Ya da arkadaşınızın kullanım durumu. Onları Python'a (ya da diğer yaygın olarak kullanılan ama aynı zamanda basit dillerden birine) yönlendiriyorum ama belki de BASIC lehçesini kullanmaları için belirli bir neden var.

Ben kişisel projelerde çeşitli dillerle oynamak için çalışıyorum, ancak kritik üretim amaçları için genellikle yaygın olarak bilinen, yaygın olarak desteklenen ve savaş testlerinden geçmiş dillere bağlı kalıyorum.


3
Bu bir cevap değil, yorum olarak daha uygundur. Kullanım durumu, malzeme maliyetlerinin, işgücü maliyetlerinin, 3D model üretiminin vb. İş açısından kritik hesaplanması için kullanılmasıdır. tam bir yeniden yazma gerektiren Python'a kıyasla yeniden yazma tercih edilir.
David

5
Ben şahsen FreeBASIC ya da GWBasic'e aşina değilim ama bunun küçük bir yeniden yazma olmadığını düşünüyorum. Karşılaştığım BASIC lehçelerinin çoğu aslında birbirinden oldukça farklı. Saf Temel, Gerçek Temel, Blitz Temel, GL Temel, vb. Kavramsal olarak çok benzerler (örneğin, nesne yönelimli değil) ancak sözdizimi tamamen farklıdır.
jhocking

Çalışma kodu üzerinde "güzel" kodu tercih herkesi küçümsemek için cazip. Denenmiş ve test edilmiş büyük bir GWBASIC gövdesine sahip gibi görünüyor, işlevselliğinden memnunlar, sadece her şeyi yeniden yazmak veya yeniden tasarlamak zorunda kalmadan daha modern bir dile geçmek istiyorlar, ki bu tamamen mantıklı. Büyük bir eski sistemi yeniden yazmak, başlayabileceğiniz en zorlu görevlerden biridir!
James Anderson

Her şeyi yeniden yazmadan daha modern bir dile geçmek mantıklı bir ilk içgüdüdür, ancak bu durumda gerçekten pratik değildir. Her şeyi yeniden yazmanın tek nedeni "güzel" kod almaksa, o zaman evet bu çok büyük bir zaman kaybıdır, ancak bu dilleri değiştirmemek için bir nedendir. Ancak dil değiştirmek için gerçek bir ihtiyacınız varsa (bu eski bir iş parçacığıdır, öyleyse hatırlamıyorum) o zaman dilleri değiştirmek sizi her şeyi yeniden yazmaya zorlar.
2012'de

0

Sonra çapraz platform olan scriptbasic, yabasic2 ve jabaco için java-api desteği veya japi var.

Ama elbette bir gün birçok temel lehçenin diğer çapraz platform araç kitleri de var, bu da gelecekte kaliteli uygulamalara yol açabilecek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.