FreeBASIC นั้นมีความเป็นผู้ใหญ่มากแค่ไหน? [ปิด]


10

เพื่อนของฉันกำลังพิจารณาใช้FreeBASICในสภาพแวดล้อมการผลิตที่สำคัญ ปัจจุบันพวกเขาใช้ GWBasic และพวกเขาต้องการที่จะเปลี่ยนภาษาที่ทันสมัยให้นุ่มขึ้น ฉันแค่กังวลว่าอาจมีข้อผิดพลาดที่ตรวจไม่พบในซอฟต์แวร์ ฉันเห็นว่าหมายเลขเวอร์ชันของพวกเขาคือ 0.22.0 ซึ่งบ่งชี้ว่ายังไม่เป็นผู้ใหญ่เลย ฉันยังอ่านการสนทนานี้โดยไม่สามารถสรุปได้ นอกจากนี้ในหน้าSourceforgeของพวกเขาไม่มีข้อบ่งชี้ว่ามันเป็นอัลฟ่าหรือเบต้า (ซึ่งยังไงก็ตามก็ไม่ใช่ตัวบ่งชี้ที่ดีมาก) ใครบ้างมีประสบการณ์เกี่ยวกับวุฒิภาวะความคิดเกี่ยวกับวิธีตัดสินความเป็นผู้ใหญ่หรือรู้จัก บริษัท ที่ใช้ FreeBASIC ในสภาพแวดล้อมการผลิตที่สำคัญ


23
หากพวกเขากำลังใช้ GWBasic สิ่งที่เป็นการปรับปรุง
Craig

1
ฟอรัม FreeBASIC ดูเหมือนจะเป็นสถานที่ที่ดีกว่าในการถามคำถามนี้
Matt Ellen

2
@David พวกเขามีสภาพแวดล้อมการทดสอบหรือไม่? อาจเป็นสิ่งที่ควรค่าแก่การทำงานและว่าจ้างเป็นที่ปรึกษาหนึ่งในผู้พัฒนาโครงการดังนั้นเขา / เธอสามารถแก้ไขข้อบกพร่องที่พบในการทดสอบการทำงาน
Vitor Py

4
ฉันสงสัยว่าการเปลี่ยนจาก GWBasic เป็นภาษาเบสิกอื่นจะไม่ "อ่อน" อย่างที่คุณคิด กฎหมายของ Hofstadter มีผลบังคับใช้โดยเฉพาะกับการเขียนซ้ำ
Rein Henrichs

1
หมายเลขเวอร์ชันเป็นสิ่งเฉพาะสำหรับโครงการ บางโครงการขอสงวนตัวเลขหลักสำหรับสิ่งที่พิเศษมากและเพียงแค่เร่งรุ่นรองและรุ่นย่อย
Lars Viklund

คำตอบ:


8

ฉันหวังว่าจะไม่สายเกินไปที่จะขุดเธรดเก่า

ฉันใช้ FreeBASIC ในสภาพแวดล้อมอุตสาหกรรมมานานกว่า 5 ปีและพบว่ามันแข็งเหมือนหิน มันใช้งานได้ดีจริง ๆ ประมาณ 0.1 ด้วยการเพิ่มความเข้ากันได้ของ QuickBASIC และเติบโตช้ากว่ารากเหล่านั้นและกลายเป็น "ร้ายแรง" มากขึ้น แต่สามารถบอกได้ว่าทำงานในโหมดที่รองรับ QB ได้ใกล้ 100% การเปิดตัวที่มีขนาดใหญ่พอสมควรเพียงดูหมายเลขรุ่นขึ้นไป 0.01

ฉันแนะนำให้เพื่อนของคุณนำ GWBASIC ไปที่ MS QuickBASIC ซึ่งควรจะค่อนข้างง่าย (ฉันเคยทำมาก่อนมันไม่ได้ออกแบบมาเพื่อความเข้ากันได้ 100% หรือไม่) FreeBASIC จะมอบตัวเลือก 'ศตวรรษที่ 21' ให้คุณเรียกใช้แอปพลิเคชันแบบ 32 บิตหากใครก็ตามรู้สึกว่าต้องการ ไม่เช่นนั้นกับ Windows 7 ฯลฯ คุณกำลังติดขัดโดยใช้ VM ที่รัน DOS หรืออะไรบางอย่าง


10

PureBasicน่าจะเป็นทางออกที่ดีที่สุดของคุณแทนที่จะเป็น FreeBASIC แต่ถ้าฉันเป็นคุณฉันอาจจะเปลี่ยนเป็นภาษาที่ทันสมัยและแข็งแกร่งเช่น C # หรือ Python


3

Imho BASIC ที่ดีที่สุดที่จะใช้สำหรับการอัพเกรดจาก GWBASIC คือ PowerBasic (www.powerbasic.com) หลายคนเคยทำมาก่อนดังนั้นจึงมีประสบการณ์ค่อนข้างมากในชุมชนผู้ใช้ของ Powerbasic หากคุณต้องการความช่วยเหลือที่นั่น

นอกจากนี้ Powerbasic ยังเป็นผลิตภัณฑ์คุณภาพสูงที่แทบไม่มีปัญหา / ข้อบกพร่องและได้รับการพัฒนาอย่างแข็งขัน ไม่ฟรี ($ 199) แต่คุ้มค่าทุกสตางค์

FYI: ฉันไม่ได้มีส่วนเกี่ยวข้องกับพวกเขาและใช้ VB.NET ด้วยตนเอง (ด้วยเหตุผลทางวิชาชีพมิฉะนั้นจะเป็น Powerbasic ... )


3

Powerbasic ค่อนข้างเป็นผู้ใหญ่และฉันขอแนะนำอย่างเต็มที่โดยเฉพาะอย่างยิ่งหากความน่าเชื่อถือและการสนับสนุนที่ดีเป็นสิ่งสำคัญสำหรับคุณ ฉันไม่ได้ใช้มันเป็นการส่วนตัวเพราะมันไม่ได้ออกแบบมาสำหรับการเขียนโปรแกรมเกม - ซึ่งฉันใช้ (และแนะนำ) BlitzMax ข้ามแพลตฟอร์ม

ที่ถูกกล่าวว่า Freebasic ไม่ควรเป็นอุปสรรค์มากเกินไปถ้าคุณมาจาก GWBasic และดูเหมือนว่าจะมีเสถียรภาพเช่นกัน การสนับสนุนเอกสารและฟอรัมนั้นดีกว่าค่าเฉลี่ยเช่นกัน

ถึงกระนั้นถ้าฉันเป็น บริษัท (ต่างกับบุคคล) ที่กำลังมองหาทางออกที่จะอยู่ที่นั่นและได้รับการสนับสนุนในอนาคตอันใกล้ฉันจะไปกับ Powerbasic นี่คือโปรแกรมที่สามารถแปลง QBasic เป็น Powerbasic: http://www.powerbasic.com/support/downloads/files/QB2PBv2.zip

หวังว่านี่จะช่วยได้! รัสเซล


3

ต่อไปนี้เป็นภาษาพื้นฐานที่ดีทั้งในฐานะคอมไพเลอร์และสคริปต์ที่ฝังได้:

1) gambas

เหล่านี้เป็นภาษาพื้นฐานที่ดีซึ่งเป็นคอมไพเลอร์เท่านั้น แต่สามารถฝังสคริปต์อื่น ๆ ได้:

2) jabaco

3) วัตถุประสงค์พื้นฐาน

4) ปลอดสารพิษพื้นฐาน

5) chipmunkbasic

ต่อไปนี้เป็นภาษาพื้นฐานที่ฝังได้ซึ่งดีและสามารถฝังลงในภาษาพื้นฐานอื่น ๆ ได้ทั้งนี้ขึ้นอยู่กับกรอบงาน:

6) scriptbasic

7) maven-sb4j

8) ajbasic

ทั้งหมดนี้ยังสามารถใช้สำหรับการสร้างแอปพลิเคชั่น gui ที่แตกต่างกันเครื่องมือเชื่อมต่อฐานข้อมูลและในส่วนของแอพพลิเคชั่นแบบฝัง (หน้าเว็บเซิร์ฟเวอร์) scriptbasic และ gambas-gbs3 นั้นมีอยู่แล้ว แต่ถ้าคุณสามารถรับ fb-curl และ fb-simplewebserver และรวมเข้ากับเฟรมเวิร์ก freebasic จากนั้นรวมถึง freebasic-server-pages (หากไม่อยู่ที่นั่นคุณอาจต้องดาวน์โหลดและคัดลอกวางไลบรารีและไฟล์ส่วนหัวภายใต้ lib และรวมไดเรกทอรีของ freebasic ตามลำดับ) แม้แต่ jabaco ก็สามารถฝัง maven-sb4j, หรือวัตถุที่เป็นเป้าหมายและ chipmunkbasic สามารถฝัง applescript และ scriptbasic ตามลำดับ ดังนั้นสิ่งเหล่านี้น่าจะมีทางออกสำหรับความต้องการส่วนใหญ่

หากคุณมีความเข้ากันได้เป็นอย่างมากกับ gwbasic ให้เลือก bwbasic (gwbasic ที่ปรับปรุงแล้วสำหรับ freebsd และ linux) แต่ฉันไม่คิดว่าจะมีความแตกต่างกับคนอื่นมากนัก

อย่างไรก็ตามสำหรับกราฟิกที่มี bwbasic คุณจะต้องต่อสู้กับตัวเลือก x11 หรือรอจนกว่าจะเพิ่มการสนับสนุนสำหรับ tk, fox และชุดเครื่องมืออื่น ๆ ที่รู้จักกันดี

หากคุณยินดีที่จะมองหา:

สภาพแวดล้อมการพัฒนาแบบ vb ที่แข็งแกร่ง + หน้าเซิร์ฟเวอร์พื้นฐานจากนั้นเลือก gambas หรือ jabaco ด้วย maven-sb4j

ล่ามที่แข็งแกร่งได้รับการสนับสนุนด้วย ide ที่บาง แต่ก็ดี: freebasic และถ้าคุณสามารถรับ fb-curl และ fb-simplewebserver และรวมเข้ากับเฟรมเวิร์กของ freebasic แล้วยัง freebasic-servers-pages

เว็บเอ็นจิ้นที่ทนทานสำหรับหน้าเซิร์ฟเวอร์ขั้นพื้นฐานจากนั้นเป็นสคริปต์และเบลดแบบบาง

ดังนั้นสิ่งเหล่านี้จึงมีความแข็งแกร่งและอาจใช้งานได้อย่างน้อยหลังจากเพิ่มบางโมดูล

ยืมคุณสมบัติเล็กน้อยบางอย่างจาก python / perl / ruby: scriptbasic (และ yabasic3)

ง่ายและไวยากรณ์มาตรฐาน: จะเป็น obasic (openbasic) ในอนาคตปัจจุบัน freebasic และ scriptbasic มีสองรสชาติที่แตกต่างกันหรือพื้นฐานดั้งเดิมในขณะที่ gambas และ jabaco เป็นภาษา vb6 หลากหลาย


2

กรณีการใช้งานของคุณคืออะไร? หรือมากกว่ากรณีการใช้งานของเพื่อนของคุณ ฉันจะนำพวกเขาไปยัง Python (หรือภาษาอื่นที่ใช้กันอย่างแพร่หลาย แต่ก็มีภาษาง่าย ๆ อยู่ข้างนอกด้วย) แต่บางทีอาจมีเหตุผลบางประการที่พวกเขาจำเป็นต้องใช้ภาษาเบสิก

ฉันทุกคนกำลังเล่นกับภาษาต่าง ๆ ในโครงการส่วนบุคคล แต่เพื่อจุดประสงค์ในการผลิตที่สำคัญโดยทั่วไปฉันมักจะยึดติดกับภาษาที่เป็นที่รู้จักอย่างกว้างขวางได้รับการสนับสนุนอย่างกว้างขวางและมีการทดสอบการต่อสู้มาก


3
นี่ไม่ใช่คำตอบ แต่เหมาะกับความคิดเห็นมากกว่า กรณีใช้งานคือใช้สำหรับการคำนวณทางธุรกิจที่สำคัญของต้นทุนวัสดุ, ค่าแรง, การสร้างแบบจำลอง 3 มิติเป็นต้นโปรแกรม GWbasic ปัจจุบันมีรหัสประมาณ 30,000 บรรทัด (สร้างโดยผู้พัฒนารายเดียว) ซึ่งเป็นเหตุผลว่าทำไมขนาดเล็กลง เป็นที่ต้องการมากกว่าเมื่อเปรียบเทียบกับการไปที่ Python ซึ่งต้องการการเขียนใหม่ทั้งหมด
David

5
ฉันไม่คุ้นเคยกับ FreeBASIC หรือ GWBasic เป็นการส่วนตัว แต่ฉันคิดว่ามันไม่ใช่การเขียนซ้ำขนาดเล็ก ภาษาเบสิกส่วนใหญ่ที่ฉันพบจริง ๆ แล้วค่อนข้างแตกต่างจากกัน Pure Basic, Real Basic, Blitz Basic, GL Basic และอื่น ๆ พวกเขามีแนวคิดที่คล้ายกันมาก (เช่นไม่ใช่เชิงวัตถุ) แต่ไวยากรณ์แตกต่างกันโดยสิ้นเชิง
jhocking

ล่อลวงให้โหวตทุกคนที่โปรดปรานรหัส "สวย" มากกว่ารหัสการทำงาน ดูเหมือนว่าพวกเขามีความพยายามและทดสอบ GWBASIC เป็นจำนวนมากพวกเขามีความสุขกับการทำงานของพวกเขาพวกเขาต้องการจะเปลี่ยนเป็นภาษาที่ทันสมัยกว่าโดยไม่ต้องเขียนใหม่หรือออกแบบใหม่ทุกอย่างซึ่งมีเหตุผลอย่างสมบูรณ์แบบ การเขียนระบบมรดกขนาดใหญ่อีกครั้งเป็นหนึ่งในภารกิจที่ยากลำบากที่สุดที่คุณสามารถทำได้!
James Anderson

การย้ายไปใช้ภาษาที่ทันสมัยกว่าโดยไม่ต้องเขียนใหม่ทุกอย่างเป็นสัญชาตญาณแรกที่มีเหตุผล แต่ไม่สามารถใช้งานได้จริงในสถานการณ์นี้ หากเหตุผลเดียวที่จะเขียนทุกอย่างใหม่คือการได้รหัส "สวย" ใช่แล้วนั่นเป็นเรื่องเสียเวลามาก แต่นั่นก็เป็นเหตุผลที่ไม่ควรเปลี่ยนภาษา หากคุณมีความต้องการที่จะเปลี่ยนภาษาอย่างแท้จริง (นี่เป็นเธรดเก่าดังนั้นฉันจำไม่ได้ว่าเขาทำอะไร) จากนั้นการสลับภาษาจะบังคับให้คุณเขียนทุกอย่างใหม่
jhocking

0

จากนั้นมีการสนับสนุน java-api หรือ japi สำหรับ scriptbasic, yabasic2 และ jabaco ซึ่งเป็น cross-platform

แต่แน่นอนวันนี้หลายภาษาพื้นฐานมีชุดเครื่องมือข้ามแพลตฟอร์มอื่น ๆ ด้วยซึ่งเร็ว ๆ นี้สามารถปูทางสำหรับการใช้งานที่มีคุณภาพในอนาคต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.