Come porto il software che ho scritto per Windows su Ubuntu?


10

Ho scritto pacchetti software per la piattaforma Windows.

Voglio passare a Ubuntu. Al momento utilizzo Visual Basic e Access Database. Qualcuno può suggerire cosa dovrei usare per riscrivere il mio software per la piattaforma Linux?

Deve essere noto che sono un principiante completo di Linux. Qualsiasi tipo di assistenza sarà molto apprezzato.


1
Dovresti chiedere questo su un forum di codifica, ad es. stackoverflow.com (qualcuno probabilmente sposta la tua domanda lì;)) In breve: lingue perl / python e MySQL di SQLite come database. Oh, e se lo fai con quelli puoi anche renderlo utilizzabile su entrambe le piattaforme;)
Rinzwind

1
La programmazione per Ubuntu è da sempre uno degli argomenti di questo sito. Abbiamo anche un tag per questo. È anche sulle FAQ, punto 3. Questa domanda può essere troppo aperta, ma non è off-topic.
Javier Rivera,

1
Questa è una domanda sull'argomento, gente. Gestiamo anche lo sviluppo.
Oli

Risposte:


4

Come ha detto @Rinzwind, troverai risposte più accurate in StackOverflow ma per cominciare ...

Ti consiglierei di provare a trasferire su Linux le tue conoscenze di programmazione anziché il tuo codice, e provare Python. È un linguaggio semplice e potente, totalmente multipiattaforma e con una curva di apprendimento molto piacevole. Per l'accesso al database ci sono molti framework e librerie (ad esempio SQLAlquemy) e per la GUI puoi provare wxPython, QtPython, ... per esempio. Se si desidera sviluppare applicazioni di database si dovrebbe dare dabo una prova

Ma, se vuoi ancora provare a trasferire il tuo codice VBase puoi provare con:

  • Gambas Che è un ambiente di sviluppo basato su un interprete di base
  • Mono Che è un framework simile a .NET per Linux. (vedi anche ide mono-sviluppo)

E per l'accesso al database ... mi dispiace, ma penso di non poterti aiutare con quello che potrebbe essere che questi framework abbiano un po 'di supporto per il database

Spero che sia di aiuto.


Direi per qualcuno che viene da VB, Gambas potrebbe essere davvero una buona scelta. Detto questo, Python è la lingua fraca di Linux. Troverai Python in quasi tutte le distribuzioni di Linux. Lo sviluppo di un'applicazione basata su Python semplifica l'implementazione con setuptools.
viyyer,

3

Come qualcuno che usava molto accesso e VBScript, posso dire che la transizione non è semplicissima ma è possibile e se si sceglie la tecnologia giusta, anche desiderabile. Attualmente sto scrivendo software molto meglio di quanto abbia mai fatto su ODBC e Access.

Ci sono alcune opzioni, ma il tuo chilometraggio varia in base a ciò che stai facendo e all'esperienza passata.

  1. Python + Django

    Il mio primo suggerimento è di sviluppo web. Sono uno sviluppatore web più che altro così mi piacerebbe suggerire questo. Django rende la gestione del tuo schema di database incredibilmente semplice. Si crea una classe Python per ogni tabella, si esegue un comando e si crea un database completamente relazionale. Quindi è possibile eseguire query in base a tali classi (note come Modelli). Tutto questo senza scrivere una sola riga di SQL.

    Viene inoltre fornito con un'interfaccia di amministrazione molto sexy che richiede solo poche righe di codice per l'attivazione per i tuoi modelli. Gestisce la convalida, la ricerca, il filtro, l'ordinamento, l'input, alcuni output / report e puoi aggiungere qualsiasi cosa non sia già presente. E poiché è un'interfaccia Web, è molto più facile condividere con i colleghi che lanciando un file di Access.

    E Python è un linguaggio bellissimo. Semplice eleganza. Lo vedrai in base a quante altre persone lo suggeriscono :)

  2. Base LibreOffice

    Se vuoi restare con semplici database, LibreOffice (o OpenOffice) Base è probabilmente la cosa più simile a Access a portata di mano. Non è Access ed è abbastanza semplice e limitato rispetto a ciò che Access può fare (se sai cosa stai facendo) ma dovrebbe essere solo un semplice database desktop.

  3. Kexi

    Un'altra interpretazione del database in stile Access. Sembra più flessibile di Base ma non l'ho mai usato, quindi non posso davvero dire quanto sia bello.

Gli ultimi due sono modelli con cui probabilmente ti senti più a tuo agio ma onestamente, nessuno dei due è eccezionale e questo perché Access non è un buon modello per lo sviluppo di database quando ci sono così tanti framework migliori.

Vuoi affrontare il futuro del tuo sviluppo prima di migrare su Ubuntu. Se ora esegui l'avvio su Ubuntu, ti sentirai molto frustrato se non puoi iniziare a lavorare immediatamente. Tutte e tre le soluzioni sopra possono essere eseguite su Windows, quindi rimani bloccato ora.

Le due applicazioni possono essere scaricate e installate e Django fa un po 'più di sforzo per iniziare. Inizia con questo per installarlo (segui i loro consigli su Python 2.7) e poi passa al tutorial ufficiale per iniziare la programmazione.


1

Un ottimo modo per iniziare a sviluppare per Ubuntu è visitare il sito degli sviluppatori su developer.ubuntu.com. Lì troverai tutorial e informazioni sulle diverse opzioni che hai. Una volta terminato lo sviluppo, invia la tua app lì per ottenerla nel centro software.


0

Consiglio vivamente di utilizzare Python come linguaggio di programmazione e GTK e Glade per progettare le interfacce della GUI. Python supporta tutti i tipi di database, quindi dipende da te. MySQL è popolare. Così è PostgreSQL. Ce ne sono molti altri tra cui scegliere, a seconda del tipo di dati che si desidera archiviare. Ma dovresti probabilmente sceglierne uno multipiattaforma.

Sia Python che GTK possono essere utilizzati su Windows e OS X, nonché Ubuntu e altri. Lo stesso vale per i database. Ubuntu è un ambiente di sviluppo davvero confortevole con tutti gli strumenti necessari a portata di mano. Dovresti anche dare un'occhiata al progetto Quickly. Questo è un modo per avviare progetti di sviluppo, semplificare l'imballaggio, ecc.

Il porting della tua applicazione su Ubuntu significa anche che avrai la possibilità di raggiungere un pubblico più vasto con meno difficoltà in seguito, poiché tutti gli strumenti sono multipiattaforma. Come programmatore di Visual Basic, penso che adorerai Python.


0

Se non si utilizza troppa libreria specifica per Windows in fase di sviluppo, è possibile utilizzare mono per eseguire app sia su sistemi basati su Linux che su Mac. Ma preferirei Qt per lo sviluppo multipiattaforma. Aiuterà anche a trasferire la tua app su dispositivi mobili.


Ad essere onesti, Qt supporta solo MeeGo, Symbian e Windows Phone, mentre come .Net \ C # \ mono supporta Android, iOS, Windows Phone 7 e credo che anche MeeGo e Symbian. (Rispetto alle piattaforme mobili)
Wesley Wiser,

0

Qt come SDK e QtCreator come IDE è ciò che desideri. Rende belle le applicazioni GUI su quasi tutti i sistemi operativi esistenti, inclusi quelli 3 (Windows, Linux, OS X). È facile da imparare, inutile e performante. Provalo, non te ne pentirai!


0

Non so molto su VisualBasic e non conosco un equivalente nel mondo Linux.

Per Pascal, c'è il gpc (GNU Pascal Compiler). Non l'ho usato, ma sono sicuro che è abbastanza facile per un programmatore Pascal passare. Casi simili per molti altri linguaggi di programmazione come C, C ++, FORTRAN, ecc. Sebbene, non consiglierei nessuno di questi a un programmatore VisualBasic, ci sono diverse opzioni per linguaggi che risiedono su diverse piattaforme. Immagino che la tua scelta della lingua possa dipendere un po 'dalla tua politica aziendale ecc.

Python sarebbe la mia migliore raccomandazione. È facile da imparare, ti obbliga a scrivere codice facile da leggere ed è multipiattaforma per impostazione predefinita. Se vuoi distribuire applicazioni a sorgente chiuso vedrai che ci sono alcune differenze evidenti tra le piattaforme. Ma in generale la maggior parte del codice che scrivi verrà compilata su qualsiasi sistema. La parte difficile sta nella struttura delle cartelle (es. C: / Programmi / vs / usr / share /). Ma ci sono parametri ambientali di sistema operativo che è possibile utilizzare per evitare opzioni specifiche della piattaforma di codifica. Il lato negativo è che devi imparare una nuova lingua. Il lato positivo è che puoi usare lo stesso codice in Windows, Linux e MacOSX, ecc.

Per mantenere una GUI per le tue applicazioni, ci sono diverse opzioni in Python. Molti sviluppatori Ubuntu sembrano optare per GTK3, che è disponibile anche per Windows. Personalmente preferisco di gran lunga Qt4 (puoi usare anche Qt4 per C / C ++, il pacchetto Python si chiama PyQt4 per quello ufficiale e PySide per un progetto di comunità). Non avrai un IDE come fai in VisualBasic, ma l'uso di Qt Designer per creare l'aspetto della GUI semplifica l'implementazione in un IDE solo codice (ad es. IDE Wingware, Eclipse, IPython ...). Quindi dovrai passare dall'app per la progettazione della GUI all'app per la codifica IDE. Lo stesso vale per GTK3, dove si utilizza Glade per creare una GUI.

Python ha un pacchetto di database predefinito che implementa SQLite3. Quel database è piuttosto capace, ma non c'è una GUI per costruirlo come con Access. Esistono tuttavia pacchetti per accedere alla maggior parte dei tipi di database. Personalmente, preferisco attenermi a PostgreSQL per tutte le mie cose poiché è così scalabile. PyQT4 ha classi per tutti i principali database nel modulo QtSql, ma ci sono molte altre opzioni. Ovviamente potresti anche configurare i tuoi vecchi database di Access su un computer Windows con ODBC e quindi chiamarli senza cambiare software di database.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.