Rozważania na temat wejścia w świat technologii mobilnych: Swift czy React Native, rynek dla juniorów i perspektywy rozwoju w branży.

0

Ostatnio natknąłem się na fascynującą postać w internecie, mianowicie Huntera Isaacsona. Jest on częściowo wizjonerem, tworzącym mobilne aplikacje, które generują znaczne zyski, na przykład NGL. Skłoniło mnie to do zainteresowania się technologią mobilną. Uważam, że to świetna branża dla kreatywnych umysłów. Aplikacje nie muszą być skomplikowane - czasem prostota i unikalna funkcjonalność są kluczowe. Uwielbiam tworzyć tego rodzaju rzeczy!

Chciałbym zapytać szczególnie tych, którzy pracują w tej dziedzinie, o kilka porad dotyczących tego rynku, ponieważ jestem w nim zupełnie nowy. Czy warto uczyć się Swifta (moja pierwsza myśl, biorąc pod uwagę, że korzystam z urządzeń Apple), czy może lepiej skierować się w stronę React Native? Jak wygląda rynek dla juniorów? Jakie są perspektywy rozwoju i zarobków w tej branży? Nie mam doświadczenia w komercyjnym programowaniu, zajmuję się głównie systemami CRM, czasami pisząc do nich niewielkie rozszerzenia backendowe.

Fajnie jest być programistą, który chce prędzej, czy później wypuścić coś swojego. Uczę się w międzyczasie web developmentu, ale niekiedy paraliżowała mnie myśl o tym, że projekty z figmy odwzorowywać będę poprzez kod, a dla urozmaicenia czasami strzele szablon maila w HTML. To tak trochę żartem, trochę serio :) A w przypadku technologii mobilnych, czuję pewne niezwykłe przyciąganie i fascynację.

Czy moglibyście podzielić się waszą wiedzą i doświadczeniem w tej dziedzinie? Z góry dziękuję za wszelkie rady,

2

Aż mi się przypomniały czasy na studiach kiedy też mi się podobało programowanie.

5

O natywnych technologiach mobilnych się nie wypowiem bo nie ruszałem tego od paru lat, ostatnie moje podrygi to Android w Java.

Mogę za to serdecznie nie polecić React native 😀 W teori to bardzo fajna technologia, ale w praktyce czar pryska. Łatwe rzeczy są faktycznie super łatwe, ale jak pojawiają się problemy to bez kogoś kto zjadł na tym zęby ciężko się to debuguje.

Jeżeli myślisz o cross-platform to polecam https://flutter.dev/. Koncepcyjnie bardzo blisko jest mu do React (czy też jakiekolwiek innej bibliotece, która buduje UI z komponentów), duże community, bardzo wydajne (żadnych web frame, czy innych obejść).

2

Na dłuższą metę chcąc wiedzieć jak dokładnie działa aplikacja mobilna nie unikniesz nauki Swifta / Kotlina, a czasami nawet Javy, bo ona wciąż jest wykorzystywana w starszych bibliotekach.

0

Od czego zacząć nauke, swift będzie okej? Jak z przyszłością tej branży oraz z możliwością dostania pierwszej pracy?

2

z przyszłością nikt nie wie a z teraźniejszością jest tak iż jest trochę do d'py

Jak zaczniesz od swifta to jak będziesz mieć szczęście to przez X lat nie będziesz musiał się uczyć innego języka . No chyba iż będzie nieszczęście i nie będzie pracy dla juniorów swifta

BTW pytanie podstawowe to czy masz maca jak chcesz się uczyć swifta. Bo teoretycznie swift jest za darmo ale framework gui działa tylko na Macu z tego co czytałem. Nie wiem jak z emulatorami iPhone'a

1
randal_kolo_muani napisał(a):

Od czego zacząć nauke, swift będzie okej?

Zacznij od Obj-C. Raz że poznasz podstawy Smalltalka, odświeżysz podstawy (i magię) wskaźników z C, zrozumiesz dlaczego C++ to abominacja, poznasz różne systemy zarządzania pamięcią, zapoznasz się z mało popularnymi a niesamowicie użytecznymi wzorcami projektowymi w praktyce (class cluster) budowania frameworków a na sam koniec jak jesteś wytrwały to może nawet sam napiszesz preprocesor konwertujący Obj-C (pierwsze wersje) na C!

A to tylko po to żeby później przesiąść się na nowoczesny, solidnie zaprojektowany i ciągle rozwijany język który bez żadnych problemów pozwala ci używać całych tych dzikich sztuczek z przeszłości.

Jak z przyszłością tej branży oraz z możliwością dostania pierwszej pracy?

Jest jasna i piękna - mobile to najlepsza możliwa fuzja embedded z frontendem. Bawisz się jak w embedded a płacą ci jakbyś robił front, czego chcieć więcej?

1

Swift fajny język, polecam.

Ktoś wyżej polecił najpierw obj-c przed swiftem. Osobiście nie wiem czy to konieczność, żeby był przed swiftem, ale na pewno się przyda. Dużo aplikacji jest napisanych w obj-c tak czy siak, ale jak coś będziesz pisał od nowa, to mała szansa, że potrzebowałbyś obj-c, ale na dłuższą metę zgadzam się, że obj-c to konieczność. Obj-c jest wg mnie trochę mniej przyjazny i osobiście komuś, kto zaczyna polecałbym jednak swift, żeby się nie zraził, a później douczenie się obj-c

z przyszłością nikt nie wie a z teraźniejszością jest tak iż jest trochę do d'py

No ofert jest względnie mało, ale kandydatów też jest względnie mało. Nie wiem czy pójście w stronę react native/flutter dużo zmieni. To jest tak naprawdę zgadywanie.

Bo teoretycznie swift jest za darmo ale framework gui działa tylko na Macu z tego co czytałem. Nie wiem jak z emulatorami iPhone'a

Komputer od apple to konieczność wg mnie. Są jakieś obejścia, można próbować programować instalować OSX na innych maszynach, ale dużo z tym kłopotu i jest to bardzo niepraktyczne. No chyba, że coś się zmieniło w ostatnich latach, ale jeśli już się zmieniło, to obstawiam, że na gorsze niż na lepsze w tej kwestii. Jeśli chcesz poszukać w internetach na ten temat to szukaj pod hasłem "hackintosh".

Jeśli chodzi o symulator/emulator, to nie ma z tym problemu. Jak masz komputer od Apple, to za darmo instalujesz XCode i razem z tym też możesz uruchomić aplikację, którą napiszesz na odpowiednim symulatorze iphone/ipad bez problemu. Jak masz telefon od Apple, to przyda Ci się do uruchomiania aplikacji na innych modelach niż ten który posiadasz.

0
Ąowski napisał(a):

Ktoś wyżej polecił najpierw obj-c przed swiftem. Osobiście nie wiem czy to konieczność,

Wiesz że Meta zrobiła bardzo duże wietrzenie a prawie cały FB to przeplatanka Obj-C z C i C++? Patrz na możliwości teraz a nie w przyszłości.

0

multiplatform = HIV

Jeśli bliżej ci do sprzętów Apple to Swift, ewentualnie jeśli masz taki kaprys Obj-C. W żadnym wypadku nie trzeba siw uczyć Obj-C, sam Swift w 100% wystarczy. W Swifcie napiszesz i front i backend jeśli będzie ci potrzebny (Vapor).
Co do reszty postu to zgadzam się w 100%, dziedzina dla bardzo kreatywnych ludzi. Sam mam jedną iOSową apkę z dużą ilością pobrań, kilka mniej popularnych i na tym bynajmniej nie koniec, bo to studnia bez dna która mi osobiście po 7 latach jeszcze się nie znudziła.
Na polskim rynku jest znacznie więcej ofert dla Androidowców, ale ja osobiście nie żałuje wyboru iOS i nigdy nie miałem problemu ze znalezieniem pracy.

1
_cwel napisał(a):

multiplatform = HIV

Mocne słowa 🙃

Jak zwykle - "to zależy". Jak robisz AAA mobile game to też bym wybrał coś natywnego, ale jeżeli robisz jakąś relatywnie standardową appke którą planujesz utrzymywać na iOS i Android... Żeby nie być gołosłownym https://apexive.com/post/top-apps-built-with-flutter-framework

0
loza_prowizoryczna napisał(a):
Ąowski napisał(a):

Ktoś wyżej polecił najpierw obj-c przed swiftem. Osobiście nie wiem czy to konieczność,

Wiesz że Meta zrobiła bardzo duże wietrzenie a prawie cały FB to przeplatanka Obj-C z C i C++? Patrz na możliwości teraz a nie w przyszłości.

Tak jak pisałem, uważam, że obj-c to konieczność, ale nie sądze, że kolejność ma aż takie duże znaczenie.
Chyba, że masz na myśli, że najpierw zwalniali tych, którzy obj-c uczyli się jako drugi język, a nie pierwszy :D?
No i idąc tym tropem, można by powiedzieć, że w ogóle najpierw to C i C++ przed swiftem z tego co piszesz

0
Ąowski napisał(a):

Tak jak pisałem, uważam, że obj-c to konieczność, ale nie sądze, że kolejność ma aż takie duże znaczenie.

Zależy jak leży, jak masz integrować dużą kobyłę z multiplatfom code w C++ to się przydaje.

0

Na React Native jeszcze w 2022 roku było względne ssanie nawet na juniora, swego czasu w 2019 roku w SH powiedzieli mi, żebym że tego na szybko przyuczył i przygotował jedną małą appkę, więc znam raczej podstawy, ale ofert miałem z tego więcej niż z core stacka (stawki ok. 4000-5000 brutto na UoP). Tyle że to było wtedy, a teraz no... mamy sytuację, jaką mamy, i to dotyczy większości specjalizacji, zwłaszcza na entry/junior.

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