Od jakiegoś czasu przyglądam się narzędziu jakim jest B4A.
Może ktoś ma jakieś doświadczenia i potrafi powiedzieć czy warto są w to zagłębić ?
PS. Pytam o B4A, więc proszę nie pisać, rzuć to i wybierz narzędzie "XXX" bo jest lepsze.
Sugerujesz łatwiejszy język by ułatwił ?
Ekosystem Adnroida jest na tyle trudny, że nie ma to znaczenia - za wyjątkiem jakiegoś layera do szybkiego klepania standardowych formatek biznesowych. Łatwość za ograniczenie.
Disclaimer: nie, nie znam B4A - poczytałem do kawy 30 minut
ps. to nadal develpment ze swej istoty javowski
@grzegorz_so: Masz tu opinię gościa, któremu ten Basic wszedł mocniej niż nam...
"za wyjątkiem jakiegoś layera do szybkiego klepania standardowych formatek biznesowych"
Potrzebuję wygodnego narzędzia do budowy takich apek. Ważna jest obsługa protokołu TCP/IP, narzędzia do obsługi HTTP oraz Sqlite.
Wiem że "ekosystem" Androida jest trudny i w niektórych aspektach mocno się różni od Windowsa, np . nie ma w nim okien modalnych.
Zrobiłem już parę działających apek do obsługi magazynu w Delphi. Problem jest w tym że Embarcadero nie zawsze nadąża nowymi wersjami Androida a nowe wersje Delphi nie są tanie. Do tego mam czasami problemy ze stabilnością apki. Być może brak stabilności wynika z błędów w moim kodzie. Obecnie używam D10.4 Ent.. Teraz rozglądam się za innym narzędziem do budowy apek na Androida. B4A jest darmowy, Stąd moje zainteresowanie tym narzędziem. Chciał bym wypróbować inne narzędzie. Wiem że jest wiele innych darmowych narzędzi do budowy apek na Androida. Póki co padło na B4A :)
Z dokumentacji B4A wynika że ma spore możliwości
A czemu nie jetpack compose albo flutter? Masz jakies zamilowanie do basica?
Nie jestem programistą ale czasem muszę napisać jakąś prostą aplikacje dla wąskiego grona użytkowników. Kiedyś używałem do tego B4A (dawniej był płatny) . Program okazał się dla mnie bardzo prosty do opanowania i pozwalał na szybkie uzyskanie rezultatów. Później do przeglądarek zostały dodane potrzebne mi funkcjonalności i zmieniłem technologię na PWA. Znalazłem środowisko do tworzenia takich programów chyba jeszcze łatwiejsze do opanowania niż B4A. Ostatnio jak potrzebowałem aplikacji związanej ze sprzętem to na chwilę powróciłem do B4A. Była to jednak konieczność a nie wybór.
B4A tworzy aplikację natywną. Alternatywą są aplikacje uruchamiane w środowisku przeglądarki. Nie trzeba się martwić o zgodność z różnymi wersjami sytemu Android. W zasadzie nie istotne jest nawet czy jest to Android, Windows czy Linux. Wadą jest ograniczony dostęp do funkcjonalności ściśle związanych ze sprzętem. Choć pewne rzeczy można zrobić https://whatwebcando.today
Protokołu TCP w aplikacji przeglądarkowej nie da się obsłużyć ale z klientem HTTP nie ma problemu.
Zobacz https://www.nsbasic.com/. Można też pisać w Basicu ale ja używam JS.
Jeżeli nie masz dobrego powodu, to raczej nie warto iść w taką niszę, to raczej proszenie się o problemy. No chyba że aplikacja naprawdę bardzo prosta, a ty najlepiej znasz Basica i nie czujesz potrzeby uczenia się czegoś nowego.
Prawdopodobnie wystarczy ci PWA, Flutter też jest niezłym wyborem (tak btw, aplikację Fluttera możesz skompilować do PWA).
P.S. ciężko pewnie będzie ci uzyskać odpowiedź na pytanie z tytułu wątku, bo o czymś takim to raczej mało kto słyszał, nie mówiąc już o używaniu tego.
gajusz800 napisał(a):
Jeżeli nie masz dobrego powodu, to raczej nie warto iść w taką niszę, to raczej proszenie się o problemy.
[...]
P.S. ciężko pewnie będzie ci uzyskać odpowiedź na pytanie z tytułu wątku, bo o czymś takim to raczej mało kto słyszał, nie mówiąc już o używaniu tego.
No właśnie. Tym bardziej, jeśli OP będzie miał problemy podczas tworzenia czegoś w tej technologii, to będzie ciężko znaleźć kogoś, kto pomoże.
Nie mam pojęcia, co to B4A, ale ogólna zasada, to jak się w czymś człowiek czuje niepewnie, to lepiej nie kombinować i nie szukać narzędzia wg jakichś wydumanych kryteriów, tylko iść za tłumem. Używać tego, co w miarę popularne. Niszowe rozwiązania mogą być dobre, jak ktoś się na tyle dobrze czuje w danej działce programowania, że jest w stanie sam sobie dopowiedzieć braki w dokumentacji np. sięgając do źródeł. Ogólnie w niszowych rozwiązaniach jesteś pozostawiony samemu sobie.
Zresztą...
ten komentarz pod filmem (sprzed 3 lat):
If you want to spend many hours and days searching in the B4A forum for solutions, then B4a is what you want. B4A used to be good but has now become over-the-top and is most certainly no longer "easy" to learn as its maker still claims. Among other, due to the increased complication of Google's latest Android versions, the developer has to spend many hours trying to find work-arounds and working code.
to potwierdza.
@LukeJL: dokładnie to samo miałem na myśli pisząc, że ok jeśli aplikacja bardzo prosta, a autor dobrze zna tę technologię. W innym przypadku można pożałować tej decyzji gdy zaczną się problemy. A problemy występują zawsze.
wg mnie pakowanie się w B4A to tak jak aplikacje na Androida w Delphi - niby można ale........
Jak zaczynałem kilka lat temu z androidem to też najpierw w Delphi - oj co to był za dramat. Wywaliłem to bo to szkoda czasu. Dla mnie pisanie aplikacji to nie tylko hobby ale codzienna praca, która ma przynosić efekty. Tak więc przesiadłem się na Jave i Eclipsa. Też nie było ciekawie ale pare aplikacji powstało. Potem kotlin i android studio + jetpack - i to jest to co tygrysy lubią ;)
Serwis w Delphi+mormot - mega stabilne i bardzo szybkie połączenie, do tego mobilna apka w kotlinie+jetpack.
Mam tak zrobione aplikacje WMS, b2b, jakies proste do inwetaryzacji, aplikacje dla handlowców. Wszystko śmiga, łatwo się rozbudowuje, szybko się tworzy nowe. I o to chyba chodzi ;)
JarekZ napisał(a):
wg mnie pakowanie się w B4A to tak jak aplikacje na Androida w Delphi - niby można ale........
Jak zaczynałem kilka lat temu z androidem to też najpierw w Delphi - oj co to był za dramat. Wywaliłem to bo to szkoda czasu. Dla mnie pisanie aplikacji to nie tylko hobby ale codzienna praca, która ma przynosić efekty. Tak więc przesiadłem się na Jave i Eclipsa. Też nie było ciekawie ale pare aplikacji powstało. Potem kotlin i android studio + jetpack - i to jest to co tygrysy lubią ;)
Serwis w Delphi+mormot - mega stabilne i bardzo szybkie połączenie, do tego mobilna apka w kotlinie+jetpack.
Mam tak zrobione aplikacje WMS, b2b, jakies proste do inwetaryzacji, aplikacje dla handlowców. Wszystko śmiga, łatwo się rozbudowuje, szybko się tworzy nowe. I o to chyba chodzi ;)
Chyba nie wiesz co piszesz bo nie pisałeś w B4A. Byłem wieloletnim programistą Delphi (już nie używam od lat) i ta też próbowałem pisać na Androida. Koszmar !!! Dowiedziałem się o B4A wówczas płatne i po miesiącu byłem wstanie napisać prostą pierwsza aplikację co w Delphi napisanie było koszmarem. Potem już był z górki, pisanie w B4A jest prostsze i szybsze niż AS. Poczytaj sobie tu link Wiec nie wiem skąd masz takie uprzedzenia.
LukeJL napisał(a):
. Niszowe rozwiązania mogą być dobre, jak ktoś się na tyle dobrze czuje w danej działce programowania, że jest w stanie sam sobie dopowiedzieć braki w dokumentacji np. sięgając do źródeł. Ogólnie w niszowych rozwiązaniach jesteś pozostawiony samemu sobie.
Nie jesteś pozostawiony sam sobie. Forum działa bardzo prężnie, odpowiedzi i rozwiązania, wskazówki dostajesz często po max godzinie.
Siłą B4X może być to że spokojnie możesz wstawiać własny kod JAVA , odwoływać się do metod wbudowanych i własnych.
gajusz800 napisał(a):
Jeżeli nie masz dobrego powodu, to raczej nie warto iść w taką niszę, to raczej proszenie się o problemy. No chyba że aplikacja naprawdę bardzo prosta, a ty najlepiej znasz Basica i nie czujesz potrzeby uczenia się czegoś nowego.
Prawdopodobnie wystarczy ci PWA, Flutter też jest niezłym wyborem (tak btw, aplikację Fluttera możesz skompilować do PWA).
P.S. ciężko pewnie będzie ci uzyskać odpowiedź na pytanie z tytułu wątku, bo o czymś takim to raczej mało kto słyszał, nie mówiąc już o używaniu tego.
Macie rację to jest nisza bo nie znana na naszym rynku. Sam napisałem kika komercyjnych projektów w B4A które są używane prez innych. Koszt wytworzenia jest mniejszy niż AS i inne gdyż czas napisania jest mniejszy.
Co do PWA spokojnie znając B4A czyli znasz skłądnie jezyka Basic B4X możesz pisać B4I (iOS) czy B4J ( BasicToJava). W B4J ludzie napisali już kilka wspaniałych frameworków za pomocą których możesz pisać apikacje PWA: ABMaterial, Banano, SithasoDaisy: TailwindCss WebApps, VUE. Pisze w B4J masz kompilowany kod do JS, CSS, HTML i nie muisz nic znać z fronend.
Pisanie API też są gotowe do tego narzędzia. Połączenia baz danych itp itd wszystko jest, jak obsługa wszystkich czujników phona czy pisanie gier.
Przenoszalność kodu z B4A do B4i jest na poziomie 80-90%. Zrób aplikacje pod iOS w miesiać mając napisaną w AS. Tu się da.
Właściciel Earl co trochę wypuszcza nowsze wersję, do obsługi najnowszych SDK, zawsze jesteś na bieżąco z systemem i techonologiami poboczynymi.
link kilka przkładów co można zrobić w B4A. I są to czasami bardzo rozbudowane systemy, gdzie zródła można kupic za pare $ od autora.
Nie chce faforyzować B4X bo jak ktoś tu powiedział trzeba iśc na fali, ale chciałem trochę rozjaśnić że B4A nie jest pustynią.
Pozdrowienia
Weź pod uwagę kilka rzeczy:
- czas zależy od tego jak dobrze znasz technologię, której używasz
- pisanie o tym, że nie da się przenieść na iOS jest bez sensu. Jeśli chcesz przenieść na iOS, to musisz używać technologii multiplatform, a nie pisać natywnie i potem mówić że inna, niszowa technologia multiplatform jest lepsza bo możesz aplikację skompilować na inną platformę
- wśród technologii multiplatform wybór akurat tej nie ma sensu. Lepiej wybrać Fluttera, a nawet ReactNative czyli czegoś, co jest ogólnie znane
Mogę tylko powtórzyć jeszcze raz to, co już wyżej napisałem:
gajusz800 napisał(a):
Jeżeli nie masz dobrego powodu, to raczej nie warto iść w taką niszę, to raczej proszenie się o problemy. No chyba że aplikacja naprawdę bardzo prosta, a ty najlepiej znasz Basica i nie czujesz potrzeby uczenia się czegoś nowego.