Uwaga! Trwają prace nad nową wersją serwisu. Mogą występować przejściowe problemy z jego funkcjonowaniem. Przepraszam za niedogodności!
⛔ Masz dość walki z kodem i samym sobą? 🔄 Czas na RESET! ✅ Dołącz do bezpłatnego wyzwania!
Programować można aplikacje mobilne (np. na Androida, iOS-a), webowe czy desktopowe. Wśród nich tworzenie aplikacji mobilnych wyróżnia się pod kilkoma względami. Jeśli jesteś początkującym programistą, być może zastanawiasz się, czy warto zacząć od mobile’u. W tym artykule znajdziesz kilka aspektów, które warto wziąć pod uwagę przed podjęciem decyzji.
Być może:
To może być dobry punkt startu, lecz wcale nie oznacza, że mobile jest dla Ciebie. Poniżej przeczytasz o tym, jakie wyzwania czekają programistów aplikacji mobilnych, a na końcu artykułu wrócimy do tematu podjęcia decyzji.
Aplikacje mobilne (choć webowe też) muszą radzić sobie z różnymi rozdzielczościami ekranów, co jest większym wyzwaniem w przypadku Androida (większe zróżnicowanie marek i modeli).
Interakcja użytkownika w aplikacjach mobilnych różnią się od webowych i desktopowych – chodzi przede wszystkim o gesty, takie jak przesuwanie, „szczypanie” (pinch) czy przeciąganie elementów na ekranie. Mamy również o wiele mniej miejsca na content (treść, multimedia) – zmieszczenie tego na ekranie telefonu to kolejne wyzwanie. Sposób myślenia o doświadczeniu użytkownika (user experience, UX) jest więc nieco inny niż w przypadku aplikacji webowych i desktopowych.
Urządzenia mobilne mają ograniczone zasoby (pamięci, mocy obliczeniowej) w porównaniu do komputerów osobistych, lecz użytkownicy przyzwyczajeni są do tego, że „wszystko śmiga”. Warto więc zgłębić temat optymalizacji aplikacji mobilnych.
Zdarza się, że wersja oprogramowania jest bardzo stara, na przykład sprzed 4-5 lat. Nie każdy producent smartfonów długo wspiera swoje urządzenia i przejście na nową wersję może być nawet niemożliwe. Trzeba więc zdecydować, czy nasza aplikacja ma być dostępna dla jak największej liczby użytkowników (tak będzie zwłaszcza z aplikacjami instytucji państwowych), czy niektórych wersji nie będziemy wspierać.
Systemy operacyjne urządzeń mobilnych regularnie otrzymują aktualizacje, które wprowadzają nowe funkcje i zmieniają zachowanie istniejących elementów. Trzeba więc być na bieżąco z nowościami i dostosowywać aplikację do zmieniających się warunków.
W przeciwieństwie do aplikacji webowych, gdzie możemy natychmiast opublikować zmiany, aplikacje mobilne wymagają procesu weryfikacji i publikacji w sklepach (Google Play dla Androida, App Store dla iOS). Proces ten może być czasochłonny, kosztowny (w tej chwili przede wszystkim w przypadku Apple’a) i wiązać się z dodatkowymi wymogami odnośnie do jakości i bezpieczeństwa aplikacji.
Nie ma więc na co czekać, trzeba spróbować!
Na początek polecam skupić się na jednej platformie (Android albo iOS). Pozwoli Ci to nauczyć się podstaw bez rozpraszania się różnicami między jednym systemem a drugim.
Dla systemu Android rekomendowanym środowiskiem programistycznym jest Android Studio i język Kotlin, a dla iOS – środowisko Xcode i język Swift.
Tak naprawdę nie ma większego znaczenia, od czego zaczniesz, ponieważ Twoim celem będzie w tej chwili weryfikacja swoich preferencji – czy mobile Cię interesuje, czy nie. Nie martw się o stracony czas. Wiedza, którą zdobędziesz, zawsze prędzej czy później się przyda!
Nie podoba Ci się idea kodowania tylko na jedną platformę i chcesz od razu przetestować rozwiązania cross-platformowe? Zainteresuj się na przykład frameworkiem Flutter, React Native lub platformą Xamarin (nadal jednak polecam zacząć od aplikacji dla jednego systemu).
Daj sobie czas i przestrzeń do prób. Nie podejmujesz w tej chwili decyzji, która zwiąże Cię z mobile’em do końca życia. Nawet doświadczeni programiści wyspecjalizowani w wąskiej dziedzinie potrafią z czasem zmienić zdanie i poszukać wyzwań gdzie indziej. Skąd jednak mają wiedzieć, co im się podoba, jeśli najpierw nie spróbują innych rzeczy?
Najważniejsze w pracy programisty są dobre praktyki, paradygmaty i umiejętność rozwiązywania problemów, a to będziesz rozwijać niezależnie od technologii, którą wybierzesz.
Próbuj więc swoich sił w różnych dziedzinach – teraz możesz zacząć od apek mobilnych, ale nikt nie powiedział, że za trzy miesiące nie możesz spróbować webu czy desktopu. Internet jest pełen zasobów, które pomogą Ci zrozumieć podstawy każdej z tych dziedzin.
Przypomnę jeszcze raz: umiejętności zdobyte podczas takich eksperymentów nigdy nie idą na marne. Nie tracisz czasu!
Tworzenie aplikacji mobilnych stawia przed nami wyzwania: wymaga dostosowania do specyficznych cech platformy, optymalizacji pod kątem wydajności i interakcji oraz regularnego dostosowywania do zmieniających się wersji systemów. Może to być jednak bardzo satysfakcjonujące – stworzone przez Ciebie rozwiązanie będzie działać w kieszeni milionów użytkowników na całym świecie.
Ten artykuł jest inspirowany rozmową z Krzysztofem Baranowskim w odcinku podcastu Pierwsze kroki w IT: „Jak zostać programistą aplikacji mobilnych”
Odcinek znajdziesz na YouTubie oraz popularnych platformach: Spotify, Google Podcasts i Apple Podcasts.
Udostępnij ten artykuł:
Chcesz zostać (lepszym) programistą i lepiej zarabiać?
🚀 Porozmawiajmy o nauce programowania, poszukiwaniu pracy, o rozwoju kariery lub przyszłości branży IT!
Umów się na ✅ bezpłatną i niezobowiązującą rozmowę ze mną.
Chętnie porozmawiam o Twojej przyszłości i pomogę Ci osiągnąć Twoje cele! 🎯