IOS - jaką technologię wybrać?

0

Chce zaczac robic aplikacje na ios oraz androida i zastanawiam sie czy Cordova Ionic z Angularem beda odpowiednie do tego celu?
Robil i publikowal ktos z was moze aplikacje w sklepie ios utworzonej w tej technologi?

1

aplikacje na ios oraz androida

A czemu nie pójdziesz w kierunku Fluttera?
Nie chcesz bo go nie kojarzyłeś, czy masz jakieś konkretne powody, żeby nie iść w tą stronę?

Dobre jest to, że Flutter jest wieloplatformowy. Działa zaje... znaczy bardzo fajnie na Androidzie i tym drugim, brzydkim czymś (Apple), a jako ciekawostkę dodam, że są prace (już można z tego korzystać, ale IMHO jeszcze daleko jest od uznania tego za poziom gotowy do wprowadzenia na produkcję) nad wersją desktopową oraz webową.

0

Szczerze to jeszcze nie mialem stycznosci z Flutterem a jedynie z ionic cordova plus angular

Jest lepszy? Jak z obsluga natywnych funkcji itp?

2

A może Kotlin?
https://kotlinlang.org/lp/mobile/
Masz silne typowanie i naprawdę dobry język programowania.

2

@scibi_92: co do Kotlina - tylko to wymaga w pewnym sensie napisania dwóch aplikacji, nie jest jak we Flutterze że piszesz raz i kompilujesz na Android albo "to drugie". Nie mówię, że to jest coś złego, ale jednak lepiej pisać coś 1x niż 1,5x (bo jednak część rzeczy da się przenieść, wiec nie piszesz wszystkiego od zera).

Jak z obsluga natywnych funkcji itp?

@maniek41 - Flutter to framework, do tego wieloplatformowy, więc Twoje pytanie jest bardzo logiczne. Wiadomo, że nie wszystkie rzeczy są ogarniane przez takie wynalazki, zwłaszcza te z niższego poziomu. Ale w związku z tym mam 2 dobre informacje:

  • Flutter posiada coraz bardziej rozbudowaną biblioteke/repozytorium z którego można pobierać kod odpowiadający za różne cechy/funkcje, wiec są duże szanse, że to, czego Tobie potrzeba już zostało przez kogoś ogarnięte - albo tak się stanie w przyszłości
  • https://docs.flutter.dev/development/platform-integration/platform-channels - można osadzać kod napisany w innych językach (Kotlin, Java, Swift, C i coś-tam jeszcze) który odwołuje się do określonych elementów API, które są Tobie potrzebne.

nie mialem stycznosci z Flutterem a jedynie z ionic cordova plus angular. Jest lepszy?

Ja z kolei nie miałem do czynienia z tymi pozostałymi, więc mogę jedynie przekazać co inni piszą. Ale pamiętaj, że za Flutterem stoi Google, pogłoski (oficjalnie niepotwierdzone, ale biorąc pod uwagę ich zaangażowanie w projekt - mocno prawdopodobne) mówią, że za jakiś czas Flutter ma być oficjalnym językiem/środowiskiem tworzenia na Androida promowanym przez Google, a także natywnym sposobem tworzenia aplikacji na następny Androida. Plusem jest także własny interface renderowania (czyli jesteś praktycznie totalnie oderwany od sprzętu czy producenta, na którym odpalasz aplikację) oraz wydajność, która jest zbliżona do natywnej (w odróżnieniu np. od Reacta, który korzysta z mostków robiących translację z JS).

Możesz rzucić okiem na parę linków z porównaniami:
https://betterprogramming.pub/react-native-vs-flutter-vs-ionic-46d3350f96ee
https://ionic.io/resources/articles/ionic-vs-flutter-comparison-guide
https://www.simform.com/blog/flutter-vs-ionic/
https://procoders.tech/blog/ionic-vs-flutter/
https://www.thirdrocktechkno.com/blog/ionic-vs-flutter-how-to-make-the-right-choice/
http://www.vigsitainteractives.com/angular-vs-flutter-which-is-better/
https://askanydifference.com/difference-between-flutter-and-angular/
https://www.geeksforgeeks.org/difference-between-flutter-and-angular/
https://www.quora.com/How-is-Flutter-different-from-Angular

No i temat parę razy pojawiał się u nas na forum:
https://4programmers.net/Forum/Mobilne/347463-aplikacja_mobilna_hybryda?p=1734480#id1734480
https://4programmers.net/Forum/Mobilne/345239-flutter_czy_reactnative
https://4programmers.net/Forum/Mobilne/346631-flutter_i_aplikacje_desktop
https://4programmers.net/Forum/Mobilne/357301-flutter_sposoby_na_ios_bez_maca
https://4programmers.net/Forum/Mobilne/331015-flutter_emulator_ios_na_windowsie
https://4programmers.net/Forum/Mobilne/319359-google_flutter_uzywacie_jak_oceniacie
https://4programmers.net/Forum/Mobilne/357032-flutter_i_bloc_jeden_dla_danego_ekranu
https://4programmers.net/Forum/Mobilne/332161-dart_flutter
https://4programmers.net/Forum/Mobilne/329285-typescript_czy_flutter
https://4programmers.net/Forum/Mobilne/329171-technologiczny_dylemat_xamarin_vs_javakotlinflutter
https://4programmers.net/Forum/Mobilne/306357-flutter_czy_ktos_korzystal

@AdamWox - wzywam Cię na pomoc, trzeba kolejnego niewiernego na Fluttera nawrócić ;)

1

Ja robiłem na ionicu bo nie chciałem się uczyć specjalnie czegoś nowego a angulara znam. Mam tez w planach kilka kolejnych apek i też na ionicu.

0

Kotlina tez nie uzywalem ale wlasnie cos kojarze ze jakas czesc specyficzna do danej platformy i tak trzeba skrobac osobno.

Co do fluttera wyglada ciekawie ale zastanawiam sie czy jest sens wskakiwac w nowa dla mnie technologie czy pisac od razu w ionicu z angularem opartym juz na typescipt ktory juz jako tako znam.

Poczytam na temat Fluttera :)

Ogolnie to zastanawia mnie jjeszcze jak podchodza tez firmy Apple i Goolge czy sklep aplikacji Huawei, z tego co mi wiadomo to jedynie co do technologi to zwracaja uwage aby kontrilki itp wygladaly odpowiednio do danej platformy (wyglad przyciskow itp).
Mial ktos z was kiedys problem z odrzuceniem aplikacji z powodu technologii?

2

Co do fluttera wyglada ciekawie ale zastanawiam sie czy jest sens wskakiwac w nowa dla mnie technologie

Zdecydowanie tak - chyba, że masz zlecenie i za 4 dni musisz dostarczyć gotową apkę - jeśli tak to siadaj i pisz w tym, co umiesz. Jeśli natomiast nie masz noża na gardle (a może w ogóle nie masz żadnego terminu, jedynie się uczysz/tak sobie rozważasz) to łap Fluttera. Posiedzisz tydzień czy 2 i będziesz na zbliżonym poziomie do tego, który aktualnie masz w Angularze. Po prostu - potraktuj to jako inwestycję. Na początku pójdzie troszkę wolniej, ale szybko się odbijesz i wyjdziesz na plus.

A co do odrzucania apek z powodu technologii - sklep Google na pewno nie odrzuci, bo w końcu (jak pisałem wcześniej) Flutter to narzędzie Googlowskie, więc logiczne jest, że nie będą własnego produktu wywalać. A co do Apple - zauważ, że masz cały zestaw widgetów Cupertino - https://docs.flutter.dev/development/ui/widgets/cupertino czyli kontrolek natywnych dla iOS.

3

Flutter i tylko Flutter. Próbowałeś kiedyś wycentrować diva w HTML? We Flutterze jest widget Center(), który wszystko wyśrodkuje ci poziomo i pionowo - banał. Takie "szczegóły" bierze pod uwagę Google w swoim frameworku, aby tylko ułatwić projektowanie i programowanie aplikacji. A jakby tego było mało, to jest adaptive() do większości najważniejszy widgetów, który automatycznie, na podstawie platformy, ustawia wygląd.

Z tego co kojarze to Flutter powstał z myślą o Fuchsia OS, który ma/miał zastąpić Androida. Czy to nastąpi? Nie wiem. Ja potrzebowałem napisać aplikacje na Androida i próbowałem Java, Kotlin i Xamarin, aż @cerrato nie pokazał mi, że jest Flutter. Bez doświadczenia, bez znajomości języka Dart, napisałem aplikację, która po ostatnim odświeżeniu działa do dziś ✌

2

Tak jeszcze uzupełniając post kilka pięter wyżej:

Pytałeś, jak wygląda kwestia dostępu do natywnych rzeczy/niskopoziomowych API w przypadku Fluttera.
Odpisałem, że cały czas dodawane jest coraz więcej bibliotek - zarówno przez twórców samej technologii, jak i przez userów.

Tak z ciekawości - przed chwilą sprawdziłem, jak wygląda kwestia autoryzacji czytnikiem palca. Czy dużo będzie zamieszania, żeby user się zautoryzował palcem (lub twarzą) w naszej apce. I co się okazało? https://pub.dev/packages/local_auth - mamy gotowy plugin, który to ogarnia. Od razu ten wynalazek działa pod iOS i Androidem.

0

@cerrato: ale po co kogokolwiek nawracać? Niech każdy używa tego, co lubi. Można co najwyżej pokazać alternatywę do przemyślenia. Moim zdaniem we Flutterze większość rzeczy robi się łatwiej i szybciej, niż w Kotlinie, chociaż Kotlin to lepszy język niż Dart.

I w ogóle większość rzeczy jest prostsza, niż przy pisaniu natywnie na daną platformę, chociaż zdarzają się i problemy,, jak zawsze

0

IOS - jaką technologię wybrać?

Swift. Dziękuję, dobranoc. xD

PS. Możesz używać tych wszystkich wydziwianych języków/technologii, które Ci tutaj podano, tylko po co sobie życie na siłę utrudniać ; ).

0

@wiciu: a jak się ma Swift do Androida? I do kwestii przenoszenia między platformami: piszesz jedną apkę i ją od razu możesz kompilować na Apple i Android, czy wymaga to większych akrobacji? Obawiam się, że właśnie Twoja propozycja to jest utrudnianie sobie życia.

1

W tytule wątku jest iOS, choć OP poruszył też temat androida. Uważam, że lepiej pisać 2 osobne apki. Jedną w Javie albo Kotlinie na Androida a drugą w Swifcie na iOS. Można korzystać z tych cross-platformowych wynalazków jak chcemy zyskać na czasie i stracić na jakości. Nie wspominając już o tym, że nie wszystko da się zrobić w tych toolach, a jedynie jakieś prymitywne apki typu czytnik niusów, bo każda z platform ma inne API sprzętowe i nie każdy cross-platformowy framework ma na nie warstwę abstrakcji. Prawie każda bardziej skomplikowana apka crossplatformowa ma i tak ifologię per platforma.

1

W tytule wątku jest iOS, choć OP poruszył też temat androida.

Dla mnie jednak bardziej wiążące jest pierwsze zdanie pierwszego posta, które brzmi tak: Chce zaczac robic aplikacje na ios oraz androida :P

A co do reszty - w pewnym sensie masz rację. Ale to wszystko zależy od tego, co chcesz zrobić. Rzeczywiście, jakieś gry czy bardziej skomplikowane rzeczy, gdzie musisz się komunikować z API oraz korzystać z rozwiązań specyficznych dla danej platformy to może być problem (aczkolwiek - nie do nie przeskoczenia). Ale przy czymś prostym - np. jakaś apka w stylu OLX, gdzie masz jakiś filtr, kategorie i pokazuje listę rzeczy, to Flutter (czy inne rozwiązanie multiplatformowe) się sprawdzi bardzo dobrze, a do tego, w razie potrzeby, w "kilka kliknięć" będziesz w stanie przenieść ją z jednego ekosystemu na inny.

0

Akurat w przypadku gier, to chyba lepiej jakieś cross-platformowe rozwiązanie wybrać typu Unity, bo gry się pisze zupełnie inaczej, niż zwykłe apki, ale nie mam specjalnego doświadczenia w tym zakresie, więc się nie będę upierał.

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