Rozwój oprogramowania: przegląd historyczny do dnia dzisiejszego

Rozwój oprogramowania: przegląd historyczny do dnia dzisiejszego

Rozwój oprogramowania: przegląd historyczny do dnia dzisiejszego

Rozwój oprogramowania (SD) od początku do dziś charakteryzuje się określonymi cechami. Od samego początku świat rozwoju oprogramowania był podzielony na dwa rodzaje: rozwój wolnego i otwartego oprogramowania oraz rozwój oprogramowania własnościowego i zamkniętego.

Wszystko to z kolei zapoczątkowało wyścig w każdym świecie DS o produkcję podobnego oprogramowania, co ostatecznie doprowadziło do powstania zróżnicowanych typów aplikacji. W ten sposób DS dało początek pierwszemu i wciąż aktualnemu oprogramowaniu systemowemu (SS), następnie oprogramowaniu programistycznemu (SP), a wreszcie oprogramowaniu aplikacyjnemu (AS). Te ostatnie z kolei obejmowały zarówno tradycyjne aplikacje natywne – czyli instalowalne i specyficzne dla każdego systemu operacyjnego – jak i innowacyjne aplikacje rozproszone, działające w internecie w oparciu o blockchain.

Rozwój oprogramowania: zawartość 1

Oprogramowanie

Prawie w tym samym czasie, gdy narodziły się SS, które były w zasadzie samym systemem operacyjnym i obejmowały sterowniki urządzeń, narzędzia systemowe i wszystkie narzędzia służące do kontrolowania parametrów komputera, czyli wszystkie programy ułatwiające zarządzanie elementami sprzętowymi (HW), takimi jak: pamięć, dyski, porty, urządzenia i urządzenia peryferyjne, narodziły się także SP i SA.

Pakiety oprogramowania (SP) obejmują produkty programistyczne wykorzystywane przez programistów do tworzenia innych programów komputerowych z wykorzystaniem różnych języków programowania i/lub baz danych. SP zazwyczaj obejmują edytory tekstu, kompilatory, interpretery, konsolidatory i debugery. Obejmują one również zintegrowane środowiska programistyczne (IDE), czyli pakiety oprogramowania grupujące wszystkie niezbędne narzędzia, o których mowa powyżej, w jednym środowisku (zazwyczaj graficznym interfejsie użytkownika, GUI), aby objąć cały cykl rozwoju programu.

Kategoria SA obejmuje oprogramowanie używane przez użytkowników (końcowych) do wykonania zadania. SA zazwyczaj obejmuje pakiety biurowe, oprogramowanie graficzne lub multimedialne, oprogramowanie księgowe lub administracyjne, by wymienić tylko niewielki ułamek wszystkich kategorii aplikacji, które można znaleźć w tej kategorii. Zatem SA, lub po prostu aplikacja, to około

Dowolny program umożliwiający użytkownikowi końcowemu wykonywanie różnych zadań na komputerze, laptopie, tablecie, telefonie komórkowym lub innym typie sprzętu lub platform technologicznych.

Rozwój oprogramowania: zawartość 2

aplikacje

W początkach informatyki aplikacje charakteryzowały się podstawowym wymogiem instalacji, niezbędnym do działania, i to wyłącznie w ramach jednego, konkretnego, natywnego systemu operacyjnego. Jednak wraz z upływem czasu i rozwojem informatyki i technologii, aplikacje ewoluowały, zyskując takie cechy, jak przenośność, kompatybilność międzyplatformowa, modułowość i skalowalność. W rezultacie, obecnie mamy wiele rodzajów aplikacji, od tradycyjnych aplikacji natywnych po innowacyjne aplikacje rozproszone.

Home

Aplikacje natywne, czyli te opracowane specjalnie dla konkretnego systemu operacyjnego, zazwyczaj z wykorzystaniem zestawu narzędzi programistycznych (SDK), powstały jako pierwsze. Ich kluczową cechą jest pełna integracja z funkcjonalnościami i funkcjami urządzenia lub platformy, co przekłada się na lepsze wrażenia użytkownika. W związku z tym aplikacje te zazwyczaj lepiej wyglądają i działają w środowisku natywnym, a także działają płynniej i niezawodniej. Często jednak wiążą się z wyższymi kosztami rozwoju, jeśli dla każdej wersji natywnego systemu operacyjnego potrzebna jest nowa aplikacja.

Wraz z rozwojem technologii pojawiły się aplikacje internetowe, znane również jako WebApps . Są to aplikacje osadzone na stronie internetowej lub witrynie internetowej za pośrednictwem przeglądarki internetowej. Dzięki temu mogą działać praktycznie w każdej przeglądarce internetowej i na dowolnym komputerze, urządzeniu lub platformie. Praktycznie wszystko, co można wykonać w ich formacie internetowym, można wykonać w instalowalnym, natywnym formacie aplikacji.

Aplikacje hybrydowe powstały z połączenia dwóch poprzednich podejść. Są to aplikacje tworzone w językach typowych dla aplikacji webowych, umożliwiające ich użytkowanie na różnych platformach , ale z możliwością dostępu aplikacji natywnych do znacznej części funkcji sprzętowych komputera, urządzenia lub platformy, na której działają. Innymi słowy, w pełni wykorzystują one wszechstronność tworzenia stron internetowych i możliwości adaptacji sprzętowej aplikacji natywnych.

Present

Obecnie rozwijane są progresywne aplikacje internetowe (PWA). Są to zasadniczo strony internetowe wykorzystujące mechanizmy Service Workers i inne technologie, zachowujące się bardziej jak aplikacje natywne niż aplikacje internetowe. Podczas gdy mechanizmy Service Workers i inne technologie działają w tle, sama aplikacja działa w przeglądarce internetowej.

Wreszcie, obecne aplikacje migrują do formatu Aplikacji Rozproszonych, znanych również jako Aplikacje Zdecentralizowane (DApps). Są to zdecentralizowane aplikacje, które wykorzystują platformę blockchain, aby umożliwić użytkownikom bezpośrednią interakcję i przeprowadzanie transakcji (umów) bez pośrednictwa centralnego podmiotu zarządzającego usługą. W konsekwencji, w aplikacji DApp każdy użytkownik jest węzłem w zdecentralizowanej sieci, w której wszystkie węzły działają zbiorowo jako globalny notariusz każdej transakcji dokonywanej na platformie.

Wnioski

Świat tworzenia oprogramowania, zanurzony w samym sercu nauki i technologii, nieustannie ewoluuje i rozwija się. I tak, z oprogramowania instalowalnego (aplikacji natywnych) wyłoniło się wiele innych form aplikacji (webowych, hybrydowych, progresywnych, rozproszonych).

Formy, które z pewnością wkrótce ustąpią miejsca nowym i innowacyjnym formom aplikacji, na które wpływ będzie miało wykorzystanie obecnych i zmieniających się technologii , takich jak Big Data, Deep Learning, sztuczna inteligencja, a także wciąż ewoluujących technologii, takich jak Cloud Computing i Blockchain.


Dodaj jako preferowane źródło w Google