Jak przenieść oprogramowanie napisane dla systemu Windows na system Ubuntu?


10

Napisałem pakiety oprogramowania dla platformy Windows.

Chcę przejść na Ubuntu. W tej chwili korzystam z Visual Basic i Access Database. Czy ktoś może zasugerować, czego powinienem użyć, aby przepisać moje oprogramowanie na platformę Linux?

Trzeba wiedzieć, że jestem kompletnym nowicjuszem w Linuksie. Każda pomoc będzie mile widziana.


1
Powinieneś o to zapytać na forum kodowania, tj. stackoverflow.com (ktoś prawdopodobnie przeniesie tam twoje pytanie;)) W skrócie: języki perl / python i MySQL SQLite jako baza danych. Aha, a jeśli zrobisz to za pomocą tych, możesz także uczynić go użytecznym na obu platformach;)
Rinzwind

1
Programowanie w Ubuntu od zawsze było jednym z tematów tej witryny. Mamy nawet tag. To jest nawet w FAQ, punkt 3. To pytanie może być zbyt otwarte, ale nie jest nie na temat.
Javier Rivera

1
To pytanie na temat, ludzie. Zajmujemy się także rozwojem.
Oli

Odpowiedzi:


4

Jak powiedział @Rinzwind, znajdziesz dokładniejsze odpowiedzi w przepełnieniu stosu, ale na początek ...

Poleciłbym spróbować przenieść do Linuksa swoją wiedzę programistyczną zamiast kodu i wypróbować Python. Jest to prosty, nawet potężny język, całkowicie wieloplatformowy i bardzo ładna krzywa uczenia się. Aby uzyskać dostęp do bazy danych, istnieje wiele frameworków i bibliotek (na przykład SQLAlquemy), a dla GUI można wypróbować na przykład wxPython, QtPython, ... Jeśli chcesz rozwijać aplikacji bazodanowych należy podać dabo spróbować

Ale jeśli nadal chcesz spróbować przenieść swój kod VBase, możesz spróbować:

  • Gambas, czyli środowisko programistyczne oparte na tłumaczu podstawowym
  • Mono Który jest strukturą podobną do .NET dla Linuksa. (patrz także mono-develop ide)

A jeśli chodzi o dostęp do bazy danych ... przepraszam, ale myślę, że nie mogę ci pomóc, ponieważ te frameworki mają pewne wsparcie dla bazy danych

Mam nadzieję że to pomoże.


Powiedziałbym, że dla kogoś pochodzącego z VB Gambas może być naprawdę dobrym wyborem. To powiedziawszy, python jest lingua fraca Linuksa. Znajdziesz pytona w prawie każdej dystrybucji Linuksa. Opracowanie aplikacji opartej na pythonie ułatwia wdrażanie za pomocą setuptools.
viyyer

3

Jako ktoś, kto używał dużo dostępu i VBScript, mogę powiedzieć, że przejście nie jest super łatwe, ale jest możliwe i jeśli wybierzesz odpowiednią technologię, nawet pożądane. Piszę teraz znacznie lepsze oprogramowanie niż ODBC i Access.

Istnieje kilka opcji, ale przebieg może się różnić w zależności od tego, co robisz i przeszłych doświadczeń.

  1. Python + Django

    Moja pierwsza sugestia dotyczy tworzenia stron internetowych. Jestem programistą WWW bardziej niż cokolwiek innego, więc to sugerować to. Django sprawia, że ​​zarządzanie schematem bazy danych jest głupio proste. Tworzysz klasę Python dla każdej tabeli, uruchamiasz komendę, która ustanawia w pełni relacyjną bazę danych. Następnie możesz wykonać zapytanie w oparciu o te klasy (znane jako Modele). Wszystko to bez pisania ani jednego wiersza SQL.

    Jest również wyposażony w bardzo seksowny interfejs administratora, który wymaga tylko kilku linii kodu do aktywacji dla twoich modeli. Obsługuje sprawdzanie poprawności, wyszukiwanie, filtrowanie, porządkowanie, wprowadzanie, niektóre dane wyjściowe / raportowanie i można dodawać wszystko, czego jeszcze nie ma. A ponieważ jest to interfejs sieciowy, łatwiej jest udostępniać go współpracownikom niż podrzucając plik Access.

    A Python to piękny język. Prosta elegancja. Zobaczysz to na podstawie liczby osób, które to sugerują :)

  2. Baza LibreOffice

    Jeśli chcesz trzymać się prostych baz danych, LibreOffice (lub OpenOffice) Base jest prawdopodobnie najbardziej podobną do Access rzeczą na wyciągnięcie ręki. To nie jest Access i jest dość proste i ograniczone w odniesieniu do tego, co może zrobić Access (jeśli wiesz, co robisz), ale ma to być tylko zwykła baza danych na komputery stacjonarne.

  3. Kexi

    Kolejne spojrzenie na bazę danych w stylu Access. Wygląda bardziej elastycznie niż baza, ale nigdy go nie użyłem, więc nie mogę powiedzieć, jak dobrze jest.

Dwa ostatnie to modele, z którymi prawdopodobnie czujesz się bardziej komfortowo, ale szczerze mówiąc, żaden z nich nie jest świetny, a to dlatego, że Access nie jest dobrym modelem do tworzenia baz danych, gdy istnieje o wiele lepszych ram.

Chcesz zająć się przyszłością swojego rozwoju przed migracją do Ubuntu. Jeśli po prostu uruchomisz teraz system Ubuntu, będziesz bardzo sfrustrowany, jeśli nie będziesz mógł natychmiast rozpocząć pracy. Wszystkie trzy powyższe rozwiązania mogą działać w systemie Windows, więc utknij teraz.

Obie aplikacje można pobrać i zainstalować, a Django wymaga nieco więcej wysiłku, aby zacząć. Rozpocznij od tego, aby go zainstalować (postępuj zgodnie z ich poradami na temat Python 2.7), a następnie przejdź do oficjalnego samouczka, aby rozpocząć programowanie.


1

Świetnym sposobem na rozpoczęcie programowania dla Ubuntu jest wejście na stronę programisty pod adresem developer.ubuntu.com. Znajdziesz tam tutoriale i informacje na temat różnych dostępnych opcji. Po zakończeniu programowania prześlij swoją aplikację, aby dostać się do centrum oprogramowania.


0

Absolutnie polecam używanie Pythona jako języka programowania oraz GTK i Glade do projektowania interfejsów GUI. Python obsługuje wszystkie rodzaje baz danych, więc to zależy od Ciebie. MySQL jest popularny. Podobnie jak PostgreSQL. Istnieje wiele innych opcji do wyboru, w zależności od rodzaju danych, które chcesz przechowywać. Ale prawdopodobnie powinieneś wybrać platformę wieloplatformową.

Zarówno Python, jak i GTK mogą być używane w systemach Windows i OS X, a także w Ubuntu i innych. To samo dotyczy baz danych. Ubuntu to naprawdę wygodne środowisko programistyczne ze wszystkimi potrzebnymi narzędziami na wyciągnięcie ręki. Powinieneś także rzucić okiem na projekt Quickly. Jest to sposób na rozpoczęcie projektów deweloperskich, ułatwienie pakowania itp.

Przeniesienie aplikacji do Ubuntu oznacza również, że będziesz mógł później dotrzeć do większej grupy odbiorców z mniejszymi trudnościami, ponieważ wszystkie narzędzia są wieloplatformowe. Myślę, że jako programista Visual Basic pokochasz Python.


0

Jeśli nie używasz zbyt dużej biblioteki specyficznej dla systemu Windows podczas programowania, możesz użyć mono do uruchamiania aplikacji zarówno w systemach Linux, jak i Mac. Wolę jednak Qt do programowania na różnych platformach. Pomoże również przenieść aplikację na urządzenia mobilne.


Szczerze mówiąc, Qt obsługuje tylko MeeGo, Symbian i Windows Phone, gdzie .Net \ C # \ mono obsługuje Androida, iOS, Windows Phone 7 i uważam, że MeeGo i Symbian również. (W odniesieniu do platform mobilnych)
Wesley Wiser

0

Qt jako SDK i QtCreator jako IDE jest tym, czego chcesz. Sprawia, że ​​świetne aplikacje GUI wyglądają ładnie na prawie każdym systemie operacyjnym, w tym na tych 3 (Windows, Linux, OS X). Łatwo się go nauczyć, jest kreatywny i wydajny. Spróbuj, nie pożałujesz!


0

Nie znam się zbytnio na VisualBasic i nie znam odpowiednika w świecie Linuksa.

W przypadku Pascala istnieje gpc (kompilator GNU Pascal). Nie korzystałem z niego, ale jestem pewien, że programista Pascal jest dość łatwy do przejścia. Podobne przypadki dla wielu innych języków programowania, takich jak C, C ++, FORTRAN itp. Chociaż nie sugerowałbym żadnego z nich programistom VisualBasic, istnieje kilka opcji dla języków, które znajdują się na kilku platformach. Wydaje mi się, że wybór języka może trochę zależeć od polityki firmy itp.

Python byłby moją najlepszą rekomendacją. Jest łatwy do nauczenia, zmusza Cię do pisania kodu, który jest łatwy do odczytania, i jest domyślnie wieloplatformowy. Jeśli chcesz dostarczać aplikacje o zamkniętym źródle, zobaczysz, że istnieje kilka zauważalnych różnic między platformami. Ale generalnie większość pisanego kodu będzie kompilowana w dowolnym systemie. Trudną częścią jest utrzymanie struktury folderów (tj. C: / Program Files / vs / usr / share /). Są jednak parametry środowiskowe, których można użyć, aby uniknąć opcji specyficznych dla platformy kodowania twardego. Wadą jest to, że musisz nauczyć się nowego języka. Zaletą jest to, że możesz użyć tego samego kodu w systemach Windows, Linux i MacOSX itp.

Aby zachować GUI dla swoich aplikacji, istnieje kilka opcji w Pythonie. Wydaje się, że wielu programistów Ubuntu wybiera GTK3, który jest również dostępny dla systemu Windows. Osobiście wolę Qt4 (możesz także użyć Qt4 dla C / C ++, pakiet Python nazywa się PyQt4 dla oficjalnego, a PySide dla projektu społecznościowego). Nie będziesz mieć IDE w taki sam sposób, jak robisz to w VisualBasic, ale użycie Qt Designer do stworzenia wyglądu GUI ułatwia później implementację w IDE tylko do kodu (np. Wingware IDE, Eclipse, IPython ...). Będziesz musiał przełączać się między aplikacją GUI-designer a aplikacją IDE do kodowania. To samo dotyczy GTK3, w którym użyłbyś Glade do stworzenia GUI.

Python ma domyślny pakiet bazy danych implementujący SQLite3. Ta baza danych jest raczej zdolna, ale nie ma GUI do jej zbudowania jak w programie Access. Istnieją jednak pakiety umożliwiające dostęp do większości typów baz danych. Osobiście wolę trzymać PostgreSQL do wszystkich moich rzeczy, ponieważ jest on tak skalowalny. PyQT4 ma klasy dla wszystkich głównych baz danych w module QtSql, ale istnieje wiele innych opcji. Oczywiście możesz również skonfigurować swoje stare bazy danych Access na komputerze z systemem Windows za pomocą ODBC, a następnie możesz je wywoływać bez przełączania oprogramowania bazy danych.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.