ฉันจะย้ายซอฟต์แวร์ที่ฉันเขียนสำหรับ Windows ไปยัง Ubuntu ได้อย่างไร


10

ฉันได้เขียนแพ็คเกจซอฟต์แวร์สำหรับแพลตฟอร์ม Windows

ฉันต้องการเปลี่ยนเป็น Ubuntu ตอนนี้ฉันใช้ฐานข้อมูล Visual Basic และ Access ใครสามารถแนะนำสิ่งที่ฉันควรใช้เพื่อเขียนซอฟต์แวร์ของฉันใหม่สำหรับแพลตฟอร์ม Linux?

จะต้องรู้ว่าฉันเป็นสามเณรที่สมบูรณ์ของ Linux ความช่วยเหลือใด ๆ จะได้รับการชื่นชมมาก


1
คุณควรถามสิ่งนี้ในฟอรัมการเข้ารหัสเช่น stackoverflow.com (บางคนอาจจะย้ายคำถามของคุณไปที่นั่น;)) แต่ในระยะสั้น: ภาษา Perl / หลามและ MySQL ของ SQLite เป็นฐานข้อมูล โอ้และถ้าคุณทำมันกับคนที่คุณยังสามารถทำให้มันสามารถใช้ได้บนแพลตฟอร์มทั้ง;)
Rinzwind

1
การเขียนโปรแกรมสำหรับ Ubuntu เป็นหนึ่งในหัวข้อของเว็บไซต์นี้มาโดยตลอด เรายังมีแท็กสำหรับมัน มันเป็นคำถามที่พบบ่อยประเด็นที่ 3 คำถามนี้สามารถเปิดได้ แต่ไม่ได้อยู่นอกหัวข้อ
Javier Rivera

1
นี่เป็นคำถามแบบคน เราจัดการกับการพัฒนาเช่นกัน
Oli

คำตอบ:


4

ดังที่ @Rinzwind บอกว่าคุณจะพบคำตอบที่ถูกต้องมากขึ้นใน stackoverflow แต่สำหรับการเริ่มต้น ...

ฉันขอแนะนำให้คุณลองพอร์ตเพื่อ linux ความรู้การเขียนโปรแกรมของคุณแทนรหัสของคุณและลอง python มันเป็นภาษาที่เรียบง่ายและมีประสิทธิภาพแม้กระนั้นก็ตามและมีการเรียนรู้ที่ดีมาก สำหรับการเข้าถึงฐานข้อมูลมีเฟรมเวิร์กและไลบรารีจำนวนมาก (ตัวอย่างเช่น SQLAlquemy) และสำหรับ GUI คุณสามารถลอง wxPython, QtPython, ... หากคุณต้องการพัฒนาแอพพลิเคชั่นฐานข้อมูลคุณควรทดลองทำดาโบ

แต่ถ้าคุณยังต้องการลองพอร์ต VBase ของคุณคุณสามารถลองด้วย:

  • Gambasซึ่งเป็นสภาพแวดล้อมการพัฒนาที่ใช้ล่ามพื้นฐาน
  • Monoซึ่งเป็น. NET Framework สำหรับ linux (ดูการพัฒนา mono-ide ด้วยเช่นกัน)

และสำหรับการเข้าถึงฐานข้อมูล ... ขออภัย แต่ฉันคิดว่าฉันไม่สามารถช่วยคุณได้นั่นอาจเป็นเฟรมเวิร์กเหล่านี้ที่มีการสนับสนุนฐานข้อมูลบางอย่าง

หวังว่านี่จะช่วยได้


ฉันจะบอกว่าสำหรับคนที่มาจาก VB, Gambas อาจเป็นแบบที่ดีจริง ที่กล่าวว่าหลามเป็นภาษากลางของลินุกซ์ คุณจะพบกับไพ ธ อนในการแจกแจงลินุกซ์เกือบทุกครั้ง การพัฒนาแอพพลิเคชั่นที่ใช้ python ช่วยให้ติดตั้ง setuptools ได้ง่าย
viyyer

3

ในฐานะที่เป็นคนที่เคยใช้การเข้าถึงและ VBScript เป็นจำนวนมากฉันสามารถพูดได้ว่าการเปลี่ยนแปลงไม่ใช่เรื่องง่าย แต่มันเป็นไปได้และถ้าคุณเลือกเทคโนโลยีที่เหมาะสมแม้เป็นที่ต้องการ วันนี้ฉันเขียนซอฟต์แวร์ที่ดีขึ้นกว่าที่ฉันเคยทำผ่าน ODBC และ Access

มีตัวเลือกไม่กี่ตัว แต่ระยะทางของคุณจะแตกต่างกันไปตามสิ่งที่คุณทำและประสบการณ์ที่ผ่านมา

  1. Python + Django

    คำแนะนำแรกของฉันคือการพัฒนาเว็บ ฉันเป็นนักพัฒนาเว็บมากกว่าสิ่งอื่นดังนั้นฉันจะ แนะนำสิ่งนี้ Django ทำให้การจัดการสคีมาฐานข้อมูลของคุณเป็นเรื่องง่าย คุณสร้างคลาส Python สำหรับแต่ละตารางเรียกใช้คำสั่งและสร้างฐานข้อมูลเชิงสัมพันธ์อย่างสมบูรณ์ จากนั้นคุณสามารถสืบค้นตามชั้นเรียนเหล่านั้น (เรียกว่าแบบจำลอง) ทั้งหมดนี้โดยไม่ต้องเขียน SQL บรรทัดเดียว

    นอกจากนี้ยังมาพร้อมกับอินเทอร์เฟซผู้ดูแลระบบที่เซ็กซี่ซึ่งต้องการรหัสเพียงไม่กี่บรรทัดเพื่อเปิดใช้งานสำหรับรุ่นของคุณ มันจัดการการตรวจสอบการค้นหาการกรองการสั่งซื้ออินพุทเอาท์พุท / การรายงานบางอย่างและคุณสามารถเพิ่มในสิ่งที่ไม่ได้มี และเนื่องจากเป็นเว็บอินเตอร์เฟสจึงแบ่งปันได้ง่ายกว่าการแชร์ไฟล์ Access

    และไพ ธ อนเป็นภาษาที่สวยงาม เรียบง่ายสง่างาม คุณจะเห็นว่าขึ้นอยู่กับจำนวนคนที่แนะนำให้ :)

  2. ฐาน LibreOffice

    หากคุณต้องการใช้ฐานข้อมูลอย่างง่ายฐาน LibreOffice (หรือ OpenOffice) น่าจะเป็นสิ่งที่เข้าถึงได้ง่ายที่สุดแค่ปลายนิ้วของคุณ ไม่ใช่ Access และค่อนข้างง่ายและมีข้อ จำกัด เกี่ยวกับสิ่งที่ Access สามารถทำได้ (ถ้าคุณรู้ว่าคุณกำลังทำอะไรอยู่) แต่มันควรจะเป็นฐานข้อมูลเดสก์ท็อปธรรมดาเท่านั้น

  3. Kexi

    อีกเรื่องหนึ่งคือฐานข้อมูลสไตล์การเข้าถึง มันดูยืดหยุ่นกว่า Base แต่ฉันไม่เคยใช้มันเลยบอกได้เลยว่ามันดีแค่ไหน

สองอันสุดท้ายเป็นแบบจำลองที่คุณอาจรู้สึกสบายใจ แต่ก็ไม่ดีและนั่นเป็นเพราะ Access ไม่ได้เป็นแบบอย่างที่ดีสำหรับการพัฒนาฐานข้อมูลเมื่อมีเฟรมเวิร์กที่ดีกว่ามากมาย

คุณต้องการพูดถึงอนาคตของการพัฒนาของคุณก่อนที่คุณจะย้ายไปที่ Ubuntu หากคุณเพิ่งบูทกับ Ubuntu ตอนนี้คุณจะรู้สึกหงุดหงิดมากถ้าคุณไม่สามารถเริ่มทำงานได้ทันที โซลูชันทั้งสามข้อด้านบนสามารถเรียกใช้บน Windows ได้แล้วติดอยู่ในตอนนี้

แอพพลิเคชั่นทั้งสองสามารถดาวน์โหลดและติดตั้งและ Django ใช้ความพยายามเพิ่มขึ้นเล็กน้อย เริ่มด้วยสิ่งนี้เพื่อติดตั้ง (ทำตามคำแนะนำของพวกเขาเกี่ยวกับ Python 2.7) จากนั้นย้ายไปที่บทช่วยสอนอย่างเป็นทางการเพื่อเริ่มโปรแกรม


1

วิธีที่ดีในการเริ่มต้นพัฒนา Ubuntu คือไปที่ไซต์นักพัฒนาซอฟต์แวร์ที่ developer.ubuntu.com ที่นั่นคุณจะพบบทเรียนและข้อมูลเกี่ยวกับตัวเลือกต่าง ๆ ที่คุณมี เมื่อคุณพัฒนาเสร็จแล้วให้ส่งแอปของคุณที่นั่นเพื่อไปที่ศูนย์ซอฟต์แวร์


0

ฉันขอแนะนำอย่างยิ่งให้คุณใช้ Python เป็นภาษาโปรแกรมและ GTK และ Glade เพื่อออกแบบอินเตอร์เฟส GUI ของคุณ Python รองรับฐานข้อมูลทุกประเภทดังนั้นมันขึ้นอยู่กับคุณ MySQL เป็นที่นิยม ดังนั้น PostgreSQL มีให้เลือกหลายอย่างขึ้นอยู่กับประเภทของข้อมูลที่คุณต้องการจัดเก็บ แต่คุณควรเลือกข้ามแพลตฟอร์ม

ทั้ง Python และ GTK สามารถใช้กับ Windows และ OS X ได้เช่นเดียวกับ Ubuntu และอื่น ๆ เช่นเดียวกับฐานข้อมูล Ubuntu เป็นสภาพแวดล้อมการพัฒนาที่สะดวกสบายพร้อมเครื่องมือทั้งหมดที่คุณต้องการเพียงแค่ปลายนิ้วสัมผัส คุณควรดูที่โครงการอย่างรวดเร็ว นี่คือวิธีที่จะเริ่มต้นโครงการพัฒนาทำให้บรรจุภัณฑ์ง่าย ฯลฯ

การย้ายแอปพลิเคชันของคุณไปยัง Ubuntu หมายความว่าคุณจะมีความสามารถในการเข้าถึงผู้ชมที่ใหญ่ขึ้นและยากขึ้นในภายหลังเนื่องจากเครื่องมือทั้งหมดเป็นแพลตฟอร์มข้าม ในฐานะโปรแกรมเมอร์ Visual Basic ฉันคิดว่าคุณจะรัก Python จริงๆ


0

หากคุณไม่ได้ใช้ไลบรารีเฉพาะของ windows มากเกินไปในการพัฒนาคุณสามารถใช้โมโนเพื่อรันแอพทั้งในระบบที่ใช้ Linux และ Mac แต่ฉันอยากจะชอบQtมากกว่าสำหรับการพัฒนาข้ามแพลตฟอร์ม นอกจากนี้ยังจะช่วยพอร์ตแอปของคุณในอุปกรณ์มือถือ


เพื่อความเป็นธรรม Qt รองรับ MeeGo, Symbian และ Windows Phone ซึ่งเป็น. Net \ C # \ mono รองรับ Android, iOS, Windows Phone 7 และฉันเชื่อว่า MeeGo และ Symbian เช่นกัน (สำหรับแพลตฟอร์มมือถือ)
Wesley Wiser

0

Qt เป็น SDK และ QtCreator ในฐานะ IDE คือสิ่งที่คุณต้องการ มันทำให้แอพพลิเคชั่น GUI ที่ยอดเยี่ยมนั้นดูดีในเกือบทุก OS ที่มีรวมถึง 3 (Windows, Linux, OS X) ง่ายต่อการเรียนรู้ไม่ใช้งานง่ายและมีประสิทธิภาพ ลองคุณจะไม่เสียใจ!


0

ฉันไม่ค่อยรู้อะไรเกี่ยวกับ VisualBasic มากนักและฉันก็ไม่รู้จักเทียบเท่าในโลก Linux

สำหรับปาสกาลมี gpc (GNU Pascal Compiler) ยังไม่ได้ใช้ แต่ฉันแน่ใจว่ามันค่อนข้างง่ายสำหรับโปรแกรมเมอร์ Pascal ที่จะเปลี่ยน กรณีที่คล้ายกันสำหรับภาษาการเขียนโปรแกรมอื่น ๆ เช่น C, C ++, FORTRAN เป็นต้นแม้ว่าฉันจะไม่แนะนำให้ใช้กับโปรแกรมเมอร์ VisualBasic แต่ก็มีหลายตัวเลือกสำหรับภาษาที่อยู่บนแพลตฟอร์มหลายแพลตฟอร์ม ฉันเดาว่าการเลือกภาษาของคุณอาจขึ้นอยู่กับนโยบาย บริษัท ของคุณเป็นต้น

Pythonจะเป็นคำแนะนำยอดนิยมของฉัน มันง่ายที่จะเรียนรู้มันบังคับให้คุณเขียนโค้ดที่อ่านง่ายและมันเป็นหลายแพลตฟอร์มโดยค่าเริ่มต้น หากคุณต้องการส่งมอบแอปพลิเคชันแบบปิดแหล่งที่มาคุณจะเห็นว่ามีความแตกต่างที่เห็นได้ชัดเจนระหว่างแพลตฟอร์ม แต่โดยทั่วไปรหัสส่วนใหญ่ที่คุณเขียนจะรวบรวมในระบบใด ๆ ส่วนที่ยุ่งยากคือการรักษาโครงสร้างของโฟลเดอร์ (เช่น C: / Program Files / vs / usr / share /) แต่มีพารามิเตอร์ด้านสิ่งแวดล้อมของระบบปฏิบัติการที่คุณสามารถใช้เพื่อหลีกเลี่ยงตัวเลือกเฉพาะแพลตฟอร์มฮาร์ดโค้ด ข้อเสียคือคุณต้องเรียนรู้ภาษาใหม่ ด้านตรงข้ามคือคุณสามารถใช้รหัสเดียวกันใน Windows และ Linux และ MacOSX เป็นต้น

เพื่อรักษา GUI สำหรับแอปพลิเคชันของคุณมีหลายตัวเลือกใน Python นักพัฒนา Ubuntu หลายคนดูเหมือนจะใช้ GTK3 ซึ่งมีให้สำหรับ Windows เช่นกัน โดยส่วนตัวแล้วฉันชอบ Qt4 มาก (คุณสามารถใช้ Qt4 สำหรับ C / C ++ ได้เช่นกันแพคเกจ Python เรียกว่า PyQt4 สำหรับอย่างเป็นทางการและ PySide สำหรับโครงการชุมชน) คุณจะไม่มี IDE แบบเดียวกับที่คุณทำใน VisualBasic แต่การใช้ Qt Designer เพื่อสร้างรูปลักษณ์ GUI ทำให้ง่ายต่อการนำไปใช้ใน IDE แบบรหัสเท่านั้น (เช่น Wingware IDE, Eclipse, IPython ... ) ดังนั้นคุณจะต้องสลับระหว่างแอพ GUI-designer และแอพ IDE การเข้ารหัส เช่นเดียวกับ GTK3 ซึ่งคุณจะใช้ Glade เพื่อสร้าง GUI

Python มีแพ็คเกจฐานข้อมูลเริ่มต้นที่ใช้ SQLite3 ฐานข้อมูลนั้นค่อนข้างมีความสามารถ แต่ไม่มี GUI ที่จะสร้างเช่นเดียวกับ Access อย่างไรก็ตามมีแพคเกจเพื่อเข้าถึงฐานข้อมูลส่วนใหญ่ โดยส่วนตัวแล้วฉันชอบที่จะใช้ PostgreSQL กับเนื้อหาของฉันทั้งหมดเพราะมันสามารถปรับขนาดได้ PyQT4 มีคลาสสำหรับฐานข้อมูลหลักทั้งหมดในโมดูล QtSql แต่มีตัวเลือกอื่น ๆ อีกมากมาย แน่นอนคุณสามารถตั้งค่าฐานข้อมูล Access เก่าของคุณบนเครื่อง Windows ด้วย ODBC แล้วคุณสามารถโทรหาพวกเขาได้โดยไม่ต้องสลับซอฟต์แวร์ฐานข้อมูล

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