Jakim zmianom uległa technika projektowania aplikacji? Spytaj eksperta ITMAGINATION

Pierwsza aplikacja pojawiła się w latach 70., a od tamtego czasu aplikacje i programy komputerowe przebyły długą i zawiłą drogę, by uzyskać obecnie znaną nam formę.

Jakim zmianom uległa technika projektowania aplikacji? Spytaj eksperta ITMAGINATION
Źródło zdjęć: © Materiały prasowe
Michał Prokopowicz

Chmura, aplikacje mobilne, metodyczne odchodzenie od aplikacji desktopowych – to tylko niektóre z najnowszych trendów, które stopniowo nadają kształt i ewoluują technikę projektowania aplikacji.

Wszystko zaczęło się w latach 80.

Pierwszym gotowym komputerem osobistym wypuszczonym na rynek był Apple II. Był on dedykowany zwykłemu użytkownikowi niemającemu nic wspólnego z branżą IT. Wraz z pojawieniem się pierwszych komputerów na rynku pojawiła się potrzeba tworzenia aplikacji dla ich użytkowników. Stąd też lata 80. przyjmuje się jako złoty czas powstania i rozwijania techniki projektowania aplikacji desktopowych z tekstowym interface’em.

Wówczas aplikacje instalowane były bezpośrednio na komputerach bezpośrednio z fizycznych nośników. Początkowo prym wiodło projektowanie strukturalne w języku C, a następnie projektowanie obiektowe w C++. Rozwój tego języka ukuł podwaliny podejścia i metodologii projektowania aplikacji, torując drogę nowym i lepszym rozwiązaniom.

Złote lata 90. przynoszą interface’y graficzne

Wraz z nadejściem lat 90. komputery PC były na tyle powszechne, że rozpoczęła się intensywna popularyzacja desktopowych aplikacji. Co ważne, powoli odchodzono od tekstowych interface’ów na rzecz graficznych, bardziej przyjaznych użytkownikowi. W tym samym czasie rozpoczął się rozwój sieci WAN, co miało całkowicie zrewolucjonizować architekturę aplikacji.

Rozwój Internetu umożliwił udostępnianie plików znajdujących się na fizycznych pozostałym internautom. Dodatkowo powstały DNS-y, które zaczęły tłumaczyć adresy domen na ludzki język. Sieć stawała się coraz przyjaźniejsza i bardziej funkcjonalna.

Dzięki rozwojowi Internetu możliwe było projektowanie aplikacji na jednym PC-cie i udostępnianie ich szerokiemu gremium za sprawą protokołu HTML, który uzyskał specyfikację w 1991 roku. Właśnie dzięki niemu powstawały pierwsze statyczne strony WWW. W 2011 roku ustandaryzowany został język CSS, który wzbogacił witryny o elementy graficzne.

Nowe milenium przyniosło nowe możliwości

Wraz z nadejściem lat 2000. rozkwitały aplikacje oparte na językach PHP i ASP.NET. Powoli kształtował się popularny do dziś język JavaScript, który umożliwił projektowanie interakcji w aplikacjach webowych. Na początku nowego tysiąclecia powstawało wiele frameworków opartych o JS, a wraz z rozwojem aplikacji internetowych stopniowo na znaczeniu zaczęły maleć trudniejsze do utrzymania, aktualizowania i wdrażania aplikacje desktopowe. Rozwijać zaczęły się technologie PWA, RWD i SPA, które rozszerzały funkcjonalności i interakcje z witrynami internetowymi i sprawiały, że stawały się one coraz atrakcyjniejsze dla użytkownika końcowego.

Aplikacje mobilne zalewają rynek

W taki sposób powoli zaczęły powstawać aplikacje mobilne. Ich intensywny rozwój przypada na rok 2007, gdy rynek mobilny zalewały tysiące smartfonów. Zaczęło pojawiać się coraz więcej nieskomplikowanych aplikacji i gier na urządzenia mobilne.

Projekt aplikacji tego typu zakładał początkowo umieszczenie ich na serwerach i jedynie wyświetlanie wyników na ekranach smartfonów – jest to tzw. metoda cienkiego klienta. Szybko odżegnano się od niej za sprawą konieczności utrzymywania stałego bardzo dobrego połączenia z siecią. Z tego też względu aplikacje mobilne zaczęto projektować w metodologii grubego klienta – urządzenie samodzielnie przetwarzało większość operacji.

Kolejnym problemem stała się duża różnorodność mobilnych systemów operacyjnych. Na rynku królowały wówczas Windows Phone, iOS i Android. Konieczne było tworzenie aplikacji natywnych dla każdego z systemów lub korzystanie z narzędzi umożliwiających tworzenie wieloplatformowych app-ek. Tak powstały Flutter czy Xamarin oparte na technologii .NET.

Na znaczeniu zyskuje chmura

Lata 2008 – 2009 to era powstawania usług opartych o chmurę. Początkowo z chmurą kojarzyły się głównie wirtualne serwery, jednakże wraz z jej rozwojem zaczęły powstawać inne usługi, a nawet całe systemy informatyczne oferujące rozbudowane funkcjonalności przedsiębiorstwom i klientom indywidualnym.

Zaczęto wyróżniać trzy rodzaje usług w chmurze: IAAS (ang. Infrastructure as a Service), PAAS (ang. Platform as a Service) i SAAS (ang. Software as a Service). Obecnie również popularna staje się architektura FAAS (ang. Function as a Service).

Rozwiązania w chmurze stają się coraz atrakcyjniejsze dla użytkowników końcowych, głównie za sprawą znacznej elastyczności, sporej oszczędności (np. przez brak konieczności utrzymywania własnego hardware), a także możliwości estymowania zasobów, którymi dysponuje użytkownik.

Eksperci ITMAGINATION zgodnie uważają, że przyszłość projektowania aplikacji należy właśnie do rozwiązań chmurowych.

Trendy, które obecnie zmieniają oblicze aplikacji

Obecnie, tj. w latach 2016 - 2019 rozwój technologii wykorzystywanych w projektowaniu aplikacji przybiera na sile, o czym przekonujemy się niemal z miesiąca na miesiąc. Internet Rzeczy (IoT) przestaje być jedynie mglistą wizją, a pierwsze skuteczne rozwiązania z zakresu inteligentnego domu, inteligentnych pojazdów, inteligentnych miast czy inteligentnego handlu możemy obserwować już dziś.

Obserwować możemy również rozwój technologii przyśpieszania ładowania stron mobilnych AMG (ang. Accelerated Mobile Pages) i zarządzania wydajnością aplikacji mobilnych MAPM (ang. Mobile Application Performance Management). Deweloperzy coraz silniej stawiają na tempo, łatwość oraz unifikację zarządzania treściami i danymi z poziomu urządzeń mobilnych.

Na znaczeniu zyskują również technologie rozszerzonej rzeczywistości AR (ang. Augmented Reality) i wirtualnej rzeczywistości VR (ang. Virtual Reality). Wykazują one ogromny potencjał nie tylko w pierwszych produkowanych obecnie grach VR i AR, ale również na rynku deweloperskim, w medycynie i inżynierii.

Co czek nas w przyszłości?

Według ITMAGINATION przyszłość technologii i metodologii projektowania aplikacji w dużej mierze kształtowana będzie za sprawą uczenia maszynowego i rozwoju sztucznej inteligencji, które umożliwią stworzenie nowych modeli konwersacyjnych (ang. collaborative models). Na znaczeniu zyskają interfejsy tworzone z wykorzystaniem AR i VR, a także technologia blockchain usprawniająca komunikację, poprawiająca bezpieczeństwo czy mogąca stać się nowym medium transmisji pieniędzy.

Na zacierającą się stopniowo granicę między światem cyfrowym i fizycznym wpływ może mieć również edge computing, czyli technologia oparta na przetwarzaniu danych w chmurze możliwie jak najbliżej źródła danych.

Przymierzasz się do zakupu sprzętu elektronicznego? Sprawdź rabaty na stronie Media Expert promocje.

Wybrane dla Ciebie
Komentarze (2)