Branża IT aż kipi od różnego rodzaju frameworków i języków programowania. Czy zdarzyło Ci się słyszeć o Kotlinie raz w kontekście Androida, a innym razem w kontekście aplikacji webowych? Widzieć w CV Javę, a zaraz potem Java Script i zastanawiać się, czy to ma coś ze sobą wspólnego? Jeśli tak, to nie jesteś sam. Każdy, kto dopiero wchodzi w IT ma podobne dylematy.
Zacznijmy od tego, że produktem w branży IT jest oprogramowanie, które powstaje z kodu źródłowego. Aplikacje, które dostarczamy naszym klientom mają różne charakterystyki (o podstawowych typach aplikacji przeczytasz tutaj), mają działać na różnych systemach operacyjnych i są przygotowywane w oparciu o różne frameworki i przy pomocy różnych języków programowania. Dodatkowo języki programowania i frameworki mają różne wersje, co często znajduje odzwierciedlenie w odmiennym nazewnictwie. Warto więc rozróżniać pomiędzy sobą te aspekty.
Język programowania to składnia, system instrukcji, komend i znaków przystosowany do pisania oprogramowania, kod. Służy do zapisywania
w sposób zrozumiały dla człowieka poleceń, które następnie mogą być w procesie kompilacji przekonwertowane(zamieniane) na język maszynowy zrozumiały dla komputerów i maszyn. Kod pisany przez programistów w języku programowania nazywamy kodem źródłowym.
Słówko framework powinno kojarzyć nam się ze swego rodzaju szkieletem do budowy aplikacji, który nadaje naszemu rozwiązaniu pewne ramy. Z jednej strony ogranicza, ale też zdecydowanie przyspiesza powstawanie aplikacji. Aby lepiej zrozumieć, czym jest framework, zajrzyjcie tutaj.
System operacyjny to oprogramowanie, który zarządza systemem urządzenia (komputera, smartfona, tabletu).
Rozumiejąc już te trzy krótkie pojęcia ruszamy na spotkanie technologiom!
Przyjrzyjmy się aplikacjom mobilnym, a więc tym dedykowanym na urządzenia przenośne- smartfony i tablety. Tutaj najbardziej popularnym podziałem jest podział ze względu na system operacyjny urządzeń- mamy rozdzielne aplikacje na Androida i iOS-a (*Oczywiście przy zalożeniu, że mówimy o aplikacjach natywnych).
W przypadku Androida programujemy w języku programowania Java (już stosunkowo passé ) lub w cały czas zyskującym na popularności Kotlinie.
W przypadku systemu iOS w przeszłości stosunkowo popularne było programowanie w jezyku Objective-C, który jednak powoli odchodzi do lamusa i jest wypierany przez nowoczesny Swift.
Istnieją też inne, mniej popularne rozwiązania, jak np. programowanie w Java Scripcie, przy pomocy frameworka React Native. Framework ten zapewnia wsparcie zarówno dla Androida jak i iOS-a, jednak nie jest to zazwyczaj pierwszy wybór programistów.
Jak widzicie, Android i iOS, to dwa różne światy. Nie dziwi więc fakt, że często tuż obok stanowiska pracy „programista aplikacji mobilnych” mamy dopisek „Android”, „iOS”.
Nie można zapominać, że oprócz wspomnianych aplikacji natywnych w kontekście mobilek spotkacie się z hybrydowym połączeniem aplikacji mobilnej z webową lub też z PWA (Progressive Web Apps). Nie są to jednak rozwiązania, na których koncentrowałabym się na początku mojej przygody z IT. Dla zainteresowanych więcej w prostych słowach na ten temat przeczytacie tutaj.
Już dzisiaj zapraszam Was na kolejny odcinek z serii „W dżungli technologii”, tym razem przyjrzymy się aplikacjom webowym!