Aplikacja do obliczeń inżynierskich - jaka platforma?

Odpowiedz Nowy wątek
2019-10-10 00:55
0

Witam,

chciałbym stworzyć stosunkowo prostą aplikację mobilną do obliczeń inżynierskich. Nigdy wcześniej nie pisałem aplikacji, więc proszę o poradę. Aplikacja ma działać w ten sposób, że po dotknięciu jednego z 3 dużych przycisków pojawia się kolejnych kilka przycisków do wyboru. Wybranie któregoś przenosi na ostatni ekran wyboru, gdzie dostępnych jest jeszcze więcej przycisków (tym razem z obrazkami oprócz tekstu). Po dotknięciu jednego przechodzi się do ekranu ze statycznym obrazkiem i kilkoma podpisanymi polami, w które należy wpisać wartości. Dodatkowo w niektórych przypadkach będzie można zaznaczyć okienko wyboru. Następnie użytkownik musi kliknąć przycisk uruchamiający obliczenia. W tym momencie aplikacja powinna podstawić wpisane wartości do 2 zaprogramowanych dla wybranego przypadku wzorów (wzory dosyć rozbudowane) i wyświetlić wyniki.

Aplikacji nie chcę sprzedawać, ma służyć tylko do własnego użytku. W związku z tym pytanie brzmi jakiej platformy najlepiej użyć. Co będzie w tym przypadku lepsze - iOS czy Android ? A może zacząć od programu komputerowego np. w Visual Basic ? Najbardziej użyteczny dla mnie byłby iOS, ale czytałem, że tam trzeba publikować aplikacje i w związku z tym liczyć się z pewnymi utrudnieniami. Tymczasem ja bym chciał tylko stworzyć plik aplikacji, który mógłbym wysłać na mój telefon, zainstalować i korzystać. Jeśli Android też na to nie pozwala to może lepiej będzie zostać przy programie komputerowym (tylko w jakim języku ?). Tym bardziej, że przy aplikacjach mobilnych pewnie występuje problem kompatybilności z nowymi wersjami systemu. Zaktualizują mi iOS/Android i aplikacja przestanie działać. Czegoś takiego chciałbym uniknąć.

Z góry dziękuję za pomoc

Pozostało 580 znaków

2019-10-31 14:39
0

Może zrób kilka rozwijanych list z opcjami do wyboru. Po wybraniu opcji na liście górnej, zawartości listy poniżej zmieni się i dostosuje do wybranej opcji. Itd.
Unikniesz tworzenia widoków dla kolejnych wariantów.
Jak dobrze to zaprogramujesz, to będzie działało "samo" (tzn. stwórz strukturę danych opisującą w sposób ogólny Twój interfejs). Potem to oprogramuj. I potem dodajesz tylko rekordy opisujące kolejne warianty, a interfejs będzie się tworzył automatycznie.

Poza tym - co do platformy, to myślę, że możesz to zrobić w formie responsywnej strony internetowej, którą potem (jeśli będziesz chciał) zamkniesz jednym ruchem w WebView. Będziesz miał przy okazji i stronę i aplikację.

A stronę i te rozwijane listy utworzysz dynamicznie za pomocą JS.
Ta strona - jeśli nie masz serwera może działać lokalnie (da się to potem przenieść w całości do aplikacji mobilnej). Nie wiem jak skomplikowane będą obliczenia, ale może JS da radę. Gdybyś miał serwer, to mógłbyś dodać do tego php i wtedy obliczenia wykonywałby serwer. Ale wtedy działałoby to tylko on-line.

Jeśli jednak obliczenia są skomplikowane (np. dużo równań do rozwiązania, jakieś rozbudowane bazy danych/współczynników potrzebnych do obliczeń, itp.), to aplikacja mobilna może działać tak sobie. Będziesz musiał wydzielić obliczenia do osobnego wątku, bo nie możesz blokować głównego wątku aplikacji.
A więc wielowątkowość. Obliczenia się wykonują, a interfejs nadal działa (i można coś poprzestawiać). Po wykonaniu obliczeń wątek zgłosi zakończenie pracy i musisz to obsłużyć (odebrać wyniki i je wyświetlić).
To nie jest trywialne zadanie.

Generalnie - pracy nad aplikacją (jakąkolwiek) nie rozpoczyna się od interfejsu. Rozwiąż kilka zadań w JS i zobacz jak to działa (czy Twoje obliczenia nie będą trwały godzinami).
Możesz też zainstalować Android Studio, tam utworzyć domyślny projekt i w głównej aktywności zapuść Twoje obliczenia. Zobacz, czy średniej jakości komórka da radę to w sensownym czasie policzyć.
Jeśli nie - to będziesz wiedział, że trzeba użyć czegoś mocniejszego.


Pozostało 580 znaków

2019-11-01 14:13
0

Wolałbym w miarę możliwości uniknąć rozwiązania z wyskakującymi okienkami. Spróbuję to zrobić na tych ukrywanych kartach. Co do formy to zdecydowałem się już na program komputerowy. Aplikacja mobilna mi się nie przyda, bo musiałaby być na iOS (Androida nie używam na co dzień) a problemy z tym związane już omówiliśmy na początku. Webowa apka też odpada w tym przypadku. Także zostanę przy tradycyjnym rozwiązaniu w postaci programu na PC. Spróbuję w Delphi tak jak mi radzicie i najwyżej jeśli okaże się to zbyt skomplikowane w tym języku (chociażby ze wzgl. na te zmieniające się okna czy inne problemy, które wyjdą w praniu) to poszukam innego języka, w którym można to zrobić. Ale pewnie nie znajdę nic wyraźnie lepszego, bo potrzebny mi jest prosty język z wygodnym tworzeniem interfejsu.

Pozostało 580 znaków

2019-11-02 10:27
1

Spróbuję w Delphi tak jak mi radzicie i najwyżej jeśli okaże się to zbyt skomplikowane w tym języku[...] to poszukam innego języka,

"Zawodowcy" często odradzają Delphi jako narzędzie mało profesjonalne i ich ograniczające. Faktem jest, że paru drobiazgów mu brakuje, niemniej ten język/środowisko cały czas ewoluuje i często się okazuje, że coś, czego brak ludziom przeszkadza, zostało wdrożone do języka kilka(naście) lat temu. Niedawno miałem rozmowę z pewną osoba z forum, która zaczęła narzekać na Delphi i to, że brakuje tam paru rzeczy. Dopytałem, o które chodzi, a gdy mi je podał, to szybko odesłałem linki z informacją, że od ok. 10 lat to już jest ;)

W każdym razie, po tym wstępie, przejdę do sedna: Nie znajdziesz niczego prostszego niż Delphi. Może dla niektórych hackerów Delphi/Pascal są zbyt mało elastyczne, ale do 95% programów desktopowych Delphi się nadaje idealnie. Poza tym walka z oknami/panelami/kartami/ramkami/czymkolwiek innym, będzie miała miejsce także w innych językach programowania. Jakbyś zrobił to chociażby w C++ i Qt, to tak samo byś musiał walczyć ze stworzeniem interface, a do tego bez wsparcia w postaci technologii RAD, które oferuje Ci Delphi. Podsumowując - jeśli szukasz czegoś prostszego niż Delphi, to życzę powodzenia, ale baaardzo kiepsko to widzę :P


That game of life is hard to play
I'm gonna lose it anyway
The losing card I'll someday lay
So this is all I have to say
edytowany 1x, ostatnio: cerrato, 2019-11-02 10:28
Nie znajdziesz niczego prostszego niż Delphi IMO C# (+WinForms) będzie równie prosty jak Delphi, a nawet lepszy - bo jest do niego o wiele więcej materiałów w Internecie. - Ktos 2019-11-02 10:51
Ale wdrożenie się w WinForms to jest jednak chwila, a w Delphi wrzucasz przycisk na formatkę i on już tam jest ;) Poza tym akurat materiałów/tutoriali/kursów Delphi w necie jest jest ogromna ilość. - cerrato 2019-11-02 10:55
A w WinForms inaczej? Wrzucasz przycisk na formatkę i on tam jest. Dokładnie tak samo. - Ktos 2019-11-02 11:26
w sumie racja :/ - cerrato 2019-11-02 11:56

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 0, botów: 1

Robot: CCBot