Como portar o software que escrevi para o Windows no Ubuntu?

10

Escrevi pacotes de software para a plataforma Windows.

Eu quero mudar para o Ubuntu. No momento, eu uso o Visual Basic e o Access Databases. Alguém pode sugerir o que devo usar para reescrever meu software para a plataforma Linux?

Deve-se saber que sou um completo iniciante no Linux. Qualquer assistência será muito apreciada.

Mel Burnett
fonte
1
Você deve perguntar isso em um fórum de codificação, ou seja. stackoverflow.com (alguém provavelmente moverá sua pergunta para lá;)) Mas, resumindo: linguagens perl / python e MySQL of SQLite como banco de dados. Ah, e se você fizer isso com aqueles que você também pode torná-lo utilizável em ambas as plataformas;)
Rinzwind
1
A programação para o Ubuntu tem sido um dos tópicos deste site desde sempre. Temos até uma etiqueta para isso. Está no FAQ, ponto 3. Essa pergunta pode ser muito aberta, mas não é fora de tópico.
Javier Rivera
1
Esta é uma pergunta sobre o assunto, pessoal. Também lidamos com desenvolvimento.
Oli

Respostas:

4

Como o @Rinzwind disse, você encontrará respostas mais precisas no stackoverflow, mas para começar ...

Eu recomendo que você tente portar para linux seu conhecimento de programação em vez de seu código e experimente o python. É uma linguagem simples e poderosa, totalmente multiplataforma e com uma curva de aprendizado muito agradável. Para acesso ao banco de dados, existem muitas estruturas e bibliotecas (SQLAlquemy, por exemplo) e, para a GUI, você pode tentar wxPython, QtPython, ... por exemplo. Se você deseja desenvolver aplicativos de banco de dados, experimente o dabo

Mas, se você ainda deseja tentar portar seu código VBase, pode tentar:

  • Gambas, que é um ambiente de desenvolvimento baseado em um intérprete básico
  • Mono Qual é uma estrutura semelhante ao .NET para linux. (veja também o ide de desenvolvimento mono)

E para o acesso ao banco de dados ... desculpe, mas acho que não posso ajudá-lo com isso, pode ser que essas estruturas tenham algum suporte de banco de dados

Espero que isto ajude.

thamurath
fonte
Eu diria que para alguém que vem do VB, Gambas pode ser realmente bom. Dito isto, python é a língua fraca do Linux. Você encontrará python em quase todas as distribuições linux. O desenvolvimento de aplicativos baseados em python facilita a implantação com o setuptools.
viyyer
3

Como alguém que costumava usar muito acesso e VBScript, posso dizer que a transição não é super fácil, mas é possível e, se você escolher a tecnologia certa, é desejável. Atualmente, estou escrevendo um software muito melhor do que jamais fiz no ODBC e no Access.

Existem algumas opções, mas sua milhagem varia de acordo com o que você está fazendo e com a experiência passada.

  1. Python + Django

    Minha primeira sugestão é de desenvolvimento web. Eu sou um desenvolvedor web mais do que qualquer outra coisa, então eu iria sugerir isso. O Django torna o gerenciamento do esquema do seu banco de dados estupidamente simples. Você cria uma classe Python para cada tabela, executa um comando e ele estabelece um banco de dados totalmente relacional. Em seguida, você pode consultar com base nessas classes (conhecidas como modelos). Tudo isso sem escrever uma única linha de SQL.

    Ele também vem com uma interface de administração muito sexy, que requer apenas algumas linhas de código para ativar seus modelos. Ele lida com validação, pesquisa, filtragem, pedido, entrada, alguma saída / relatório e você pode adicionar qualquer coisa que ainda não esteja lá. E por ser uma interface da Web, é muito mais fácil compartilhar com colegas do que lançando um arquivo do Access.

    E Python é uma linguagem bonita. Elegância simples. Você verá isso com base em quantas outras pessoas sugerem :)

  2. Base do LibreOffice

    Se você deseja usar bancos de dados simples, o LibreOffice (ou OpenOffice) Base é provavelmente a coisa mais acessada ao seu alcance. Não é o Access e é bastante simples e limitado em relação ao que o Access pode fazer (se você sabe o que está fazendo), mas deve ser apenas um simples banco de dados da área de trabalho.

  3. Kexi

    Outra visão sobre o banco de dados no estilo do Access. Parece mais flexível que o Base, mas eu nunca o usei, então não posso realmente dizer o quão bom é.

Os dois últimos são modelos com os quais você provavelmente se sente mais confortável, mas honestamente, nenhum deles é ótimo, e isso ocorre porque o Access não é um bom modelo para o desenvolvimento de bancos de dados quando existem tantas estruturas melhores.

Você deseja abordar o futuro do seu desenvolvimento antes de migrar para o Ubuntu. Se você acabou de inicializar no Ubuntu agora, ficará muito frustrado se não puder começar a trabalhar imediatamente. Todas as três soluções acima podem ser executadas no Windows, portanto, fique preso agora.

Os dois aplicativos podem ser baixados e instalados e o Django leva um pouco mais de esforço para continuar. Comece com isso para instalá-lo (siga os conselhos sobre o Python 2.7) e depois vá para o tutorial oficial para iniciar a programação.

Oli
fonte
1

Uma ótima maneira de começar a desenvolver para o Ubuntu é acessar o site do desenvolvedor em developer.ubuntu.com. Lá você encontrará tutoriais e informações sobre as diferentes opções que você tem. Depois de concluir o desenvolvimento, envie seu aplicativo para o entrar no centro de software.

William
fonte
0

Eu absolutamente recomendo que você use Python como linguagem de programação e GTK e Glade para projetar suas interfaces GUI. O Python suporta todos os tipos de bancos de dados, então é com você. O MySQL é popular. O PostgreSQL também é. Existem muitos outros para escolher, dependendo do tipo de dados que você deseja armazenar. Mas você provavelmente deve escolher uma plataforma cruzada.

Tanto o Python quanto o GTK podem ser usados ​​no Windows e no OS X, assim como no Ubuntu e outros. O mesmo vale para os bancos de dados. O Ubuntu é um ambiente de desenvolvimento realmente confortável, com todas as ferramentas que você precisa ao seu alcance. Você também deve dar uma olhada no projeto Rapidamente. Essa é uma maneira de alavancar projetos de desenvolvimento, facilitar o empacotamento etc.

Portar seu aplicativo para o Ubuntu também significa que você poderá alcançar um público maior com menos dificuldade posteriormente, pois todas as ferramentas são multiplataforma. Como programador do Visual Basic, acho que você realmente adorará Python.

Jo-Erlend Schinstad
fonte
0

Se você não usar muita biblioteca específica do Windows no desenvolvimento, poderá usar o mono para executar aplicativos nos sistemas baseados em Linux e Mac. Mas prefiro o Qt para o desenvolvimento de plataformas cruzadas. Também ajudará a portar seu aplicativo em dispositivos móveis.

baru
fonte
Para ser justo, o Qt suporta apenas MeeGo, Symbian e Windows Phone, enquanto o .Net \ C # \ mono suporta Android, iOS, Windows Phone 7 e acredito que MeeGo e Symbian também. (Com respeito a plataformas móveis)
Wesley Wiser
0

Qt como SDK e QtCreator como IDE é o que você deseja. Isso faz com que os excelentes aplicativos GUI tenham uma boa aparência em quase todos os sistemas operacionais existentes, incluindo os três (Windows, Linux, OS X). É fácil de aprender, inutivo e com bom desempenho. Experimente, você não vai se arrepender!

entonjackson
fonte
0

Não sei muito sobre o VisualBasic e não conheço um equivalente no mundo Linux.

Para Pascal, existe o gpc (GNU Pascal Compiler). Não usei, mas tenho certeza de que é bastante fácil para um programador de Pascal fazer a transição. Casos semelhantes para muitas outras linguagens de programação como C, C ++, FORTRAN, etc. Embora eu não sugira nenhuma delas para um programador VisualBasic, existem várias opções para linguagens que residem em várias plataformas. Acho que sua escolha de idioma pode depender um pouco da política da sua empresa etc.

Python seria minha principal recomendação. É fácil de aprender, obriga a escrever um código fácil de ler e, por padrão, é multiplataforma. Se você deseja entregar aplicativos de código fechado, verá que existem algumas diferenças visíveis entre plataformas. Mas, em geral, a maioria dos códigos que você escreve compila em qualquer sistema. A parte complicada é manter a estrutura da pasta (por exemplo, C: / Arquivos de Programas / vs / usr / share /). Mas existem parâmetros ambientais que você pode usar para evitar opções específicas da plataforma de codificação. O lado negativo é que você precisa aprender um novo idioma. O lado positivo é que você pode usar o mesmo código no Windows e Linux e MacOSX, etc.

Para manter uma GUI para seus aplicativos, existem várias opções no Python. Muitos desenvolvedores do Ubuntu parecem optar pelo GTK3, que também está disponível para Windows. Pessoalmente, eu prefiro o Qt4 (você também pode usar o Qt4 para C / C ++, o pacote Python é chamado PyQt4 para o oficial e PySide para um projeto comunitário). Você não terá um IDE da mesma maneira que no VisualBasic, mas o uso do Qt Designer para criar a aparência da GUI facilita a implementação em um IDE somente de código (por exemplo, IDE Wingware, Eclipse, IPython ...). Portanto, você terá que alternar entre o aplicativo designer de GUI e o aplicativo IDE de codificação. O mesmo vale para o GTK3, onde você usaria o Glade para criar uma GUI.

O Python possui um pacote de banco de dados padrão implementando o SQLite3. Esse banco de dados é bastante capaz, mas não há GUI para construí-lo como no Access. No entanto, existem pacotes para acessar a maioria dos tipos de bancos de dados. Pessoalmente, prefiro ficar com o PostgreSQL para todas as minhas coisas, pois é muito escalável. O PyQT4 possui classes para todos os principais bancos de dados no módulo QtSql, mas existem muitas outras opções. Obviamente, você também pode configurar seus bancos de dados antigos do Access em uma máquina Windows com ODBC e, em seguida, chamá-los sem mudar o software do banco de dados.

GaRyu
fonte