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-10 08:44
2

Z wszystkich możliwych opcji to akurat pisanie na Apple jest najgorszą (w sensie - najtrudniejszą na start) rzeczą. Nie da się tak, jak w przypadku Androida po prostu pliku .APK wrzucić na telefon i zainstalować. Musisz mieć komputer Apple, żeby tworzyć. Pewnie jakbym poszukał dalej, to jeszcze kilka rzeczy by się znalazło ;)

W każdym razie - jeśli chcesz iść w mobilki to radziłbym się zainteresować Flutterem. Działa on bezproblemowo na Androidzie (w końcu jest to wynalazek Google, więc dziwne, żeby nie działał), ale jest wieloplatformowy, w związku z czym bardzo łatwo możesz potem przerobić aplikację na iOS.

Ale chyba najsensowniejszą opcją będzie to, o czym piszesz w dalszej części, czyli stworzenie czegoś na desktop. Teraz pewnie zacznie się jazda, że polecam Delphi, ale naprawdę uważam, że dla Ciebie, czyli dla osoby, która nie chce iść zawodowo w programowanie, a jedynie zrobić coś na własny użytek, to takie Delphi będzie idealne. Odpada Ci praktycznie cała walka z interface, bo Delphi (lub ogólnie - środowiska typu RAD) to takie układanie z klocków. Bierzesz z palety komponentów przycisk czy jakąś listę wyboru, umieszczasz na okienku i już to masz. Praktycznie zero komplikacji, wszystko się dzieje automagicznie. Jest Delphi w wersji Community, które jest darmowe do zastosowań prywatnych/niekomercyjnych. Ponadto, Delphi umożliwia tworzenie aplikacji na Androida, ale nie miałem z tym styczności, więc się nie wypowiem. Dodatkowo jest jeszcze otwartoźródłowy "klon" Delphi o nazwie Lazarus. Jeśli chodzi o IDE to jest znacznie uboższy, ale plusem jest to, że tworzy także aplikacje na Mac i Linux.

Zaktualizują mi iOS/Android i aplikacja przestanie działać

W przypadku Fluttera to raczej nie będzie miało prawa się zdarzyć - https://flutter.dev/docs/resources/faq. Jak już to odwrotnie - jakaś nowsza wersja Fluttera może przestać wspierać starsze wersje Androida. Ale aktualnie to Flutter powinien się uruchomić na dowolnym Androidzie od wersji 16 wzwyż. Jeśli teraz stworzysz sobie taką apkę, powinna ona dać się uruchomić przez kolejne 50 lat na nowszych wersjach ;)


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 2x, ostatnio: cerrato, 2019-10-10 08:50

Pozostało 580 znaków

2019-10-10 09:44
1

Aplikację Fluttera uruchomisz też na Desktopie - co prawda, to dopiero wersja alpha, ale z taką prostą nie byłoby problemów. https://github.com/flutter/flutter/wiki/Desktop-shells

Pozostało 580 znaków

2019-10-10 09:50
0

Zgadza się, ale mimo wszystko łatwość pisania we Flutterze a jakimkolwiek RAD (chociażby wspomniane przeze mnie Delphi) jest nieporównywalna. We Flutterze jest trochę walki ze stworzeniem widoków, pozycjonowaniem elementów, pełno zagnieżdżeń i nawiasów klamrowych oraz średników, przez co można się łatwo pogubić (zwłaszcza, jak się nie ma doświadczenia w programowaniu). A takie Delphi to sobie układasz UI z klocków w ciągu kilku minut i nie ma ryzyka, że ominiesz jakiś średnik, a potem będziesz szukać przez pół godziny.

Jeśli desktop, to raczej w czymś prostym. Polecanie Fluttera na desktop zakrawa na sadyzm :D


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

Pozostało 580 znaków

2019-10-10 11:50
0

Nikt nie mówi, żeby na desktop używać Fluttera, ale przy okazji mając mobilną, można wygenerować także i desktopową i będzie tak czy inaczej wyglądała lepiej, niż ta pisana w Delphi

Pozostało 580 znaków

2019-10-10 11:57
0

Jeśli zrobi mobilną to tak. Ale różnica w poziomach wejścia między Flutterem a Delphi (zwłaszcza dla osoby początkującej) jest kosmiczna. Dlatego podtrzymuję - jeśli chce zrobić coś na własny użytek i ma to być jednorazowa akcja, to najłatwiej będzie zrobić coś desktopowego w oparciu o RAD.


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

Pozostało 580 znaków

2019-10-10 15:29
1

Delphi +1.

Pozostało 580 znaków

2019-10-10 15:50
0

Dziękuję bardzo za wszystkie odpowiedzi. Apple w takim razie zdecydowanie odpada, zostaje ew. Android. Ale ten Flutter, o którym piszecie brzmi kusząco. To w kwestii aplikacji mobilnej. A gdybym chciał zacząć od desktopowej to oprócz Delphi jest coś jeszcze wartego uwagi ? Zależy mi właśnie na łatwości tworzenia GUI (żebym nie musiał tydzień walczyć nad przyciskiem z grafiką), ale i stosunkowo prostym kodzie umożliwiającym łatwą implementację wzorów. Na wykładach kiedyś pokazywali nam Visual Basic. Widziałem, że tam też da się łatwo tworzyć interfejs graficzny. Czy Waszym zdaniem warto spróbować tego języka czy może Delphi będzie od niego lepsze (albo jeszcze coś innego) ?

Pozostało 580 znaków

2019-10-10 15:55
0

Delphi (czy ogólnie różne dialekty Pascala) są najbardziej user-freindly, więc jeśli Ci zależy na "prostym kodzie" to ponownie - Delphi. Raczej bym sobie odpuścił VisualBasic, bo to raczej taka zabawka do trochę bardziej zaawansowanych skryptów, a nie prawdziwy język/środowisko do projektowania.

Z dostępnych środowisk typu RAD (czyli takich, które biorą na siebie zabawę z UI) to masz Delphi, Lazarus oraz C++Builder. Delphi i C++Builder to praktycznie to samo, tylko różnią się zastosowanym językiem. Ale powtarzam - jeśli Ci zależy na czytelności kodu, a także biorąc pod uwagę fakt, że jesteś początkujący, to polecam Delphi. Kod łatwiej się czyta, a do tego Pascal jest bardziej rygorystyczny pod wieloma względami, przez co daje znacznie mniej możliwości popełnienia błędów. To trochę jak z kontrolą trakcji czy ABS w samochodzie - na torze,kiedy jedzie zawodowiec, to mogą trochę przeszkadzać, ale w 99% przypadków podczas zwykłej jazdy są przydatne i pomocne.


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-10-10 15:56
VisualBasic (.NET) jest identyczny pod względem "mocy" jak każdy inny język .NET, tak więc to nie jest tak, że jest jakąś zabawką - po prostu popularność C# jest znacznie, znacznie większa. - Ktos 2019-10-10 16:33
Ok, dzięki za wyjaśnienie. Ja akurat staram się trzymać od dot netów jak najdalej, a Visual Basic mi się kojarzy z VBRUN50.exe ;) - cerrato 2019-10-10 16:41

Pozostało 580 znaków

2019-10-10 18:37
0

Brzmi bardzo przekonująco. Jedyny problem w tym, że Delphi jest płatne. Wprawdzie mają też Community Edition za free, ale tylko na rok i potem trzeba odnowić. A ofertę zawsze mogą wycofać (było już tak z kilkoma programami inżynierskimi). No chyba że da się wyeksportować pliki (.exe czy coś) tak by program mógł działać niezależnie od środowiska Delphi. Wtedy jeszcze pół biedy, bo wysiłek nie pójdzie na marne (program sam w sobie ma być prosty, ale będę musiał do niego wprowadzić bardzo dużo przypadków i wzorów, także czeka mnie trochę pracy).

Pozostało 580 znaków

2019-10-10 18:51
0

No oczywiście - robisz exe, a potem możesz Delphi nawet odinstalować :) poza tym przypominam, że jest darmowa alternatywa o nazwie Lazarus - korzystając z niego nie musisz się takich rzeczy obawiać. Delphi jest bardziej rozbudowane i dopracowane, ale na twoje potrzeby lazarus całkowicie wystarczy i to z dużym zapasem.


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

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