Przegląd najważniejszych języków programowania w technologiach webowych.

Jakie języki programowania są obecnie najczęściej używane w świecie technologii internetowych z szczególnym uwzględnieniem stron internetowych? Odpowiedź na to pytanie z krótkim opisem każdego z nich znajdziesz w tym wpisie! Najpierw jednak słowo wstępu po co na stronach www wykorzystywane są języki programowania a nie tylko podstawowe technologie webowe?

Już od dawna prezentowana treść stron internetowych to nie tylko HTML czy CSS upiększający go wizualnie. Ilość danych jakie generujemy i prezentujemy na stronach jest tak duża a ludzkość tak wygodna (czytaj ergonomiczna i dążąca do optymalizacji procesów), że ręczne modyfikowanie plików HTML jeden po drugim już dawno odeszło do lamusa.

Logotypy języków programowania wykorzystywanych w technologiach internetowych
Logotypy podstawowych języków programowania stosowanych w technologiach webowych

Żeby ułatwić sobie pracę oprócz pobierania danych z baz danych za pomocą języków programowania generujemy treść, która będzie wyświetlana na poszczególnych podstronach. Tak samo dbamy o to aby format wyświetlania treści był stały i estetyczny a system odpowiedzialny za stronę bezpieczny dla użytkowników i właściciela (żeby nie dało się do niego włamać czy wykorzystać go w innych celach).

Rodzaje języków programowania

Języki programowania można dzielić pod wieloma względami. Wyróżnia się między innymi języki obiektowe, proceduralne, interpretowane, kompliowane, skryptowe, statycznie i dynamicznie typowane, wysokiego oraz niskiego poziomu (do tworzenia stron używa się języki wysokiego poziomu). Klasyfikacja języków programowania to jednak inna historia sama w sobie.

W ramach tworzenia stron stosuje się dwa określenia Front-End (warstwa wizualna) oraz Back-End (warstwa serwerowa, w uproszczeniu oczywiście). Zgodnie z tym podziałem tylko JavaScript jest językiem programowania wykorzystywanym we Front-Endzie a cała reszta jest Back-End’owa.

Drugim sposobem podziału języków w kontekście stron jest typowanie zmiennych w językach programowania. Różnią się one sposobem deklaracji zmiennych, czy z góry będą przechowywać dany typ danych, czy może to ulec zmianie (na przykład zamiast tekstu zaczynamy przechowywać liczbę).

Ponieważ sam Internet jak i treść w nim zawarta dynamicznie się zmienia zdawać by się mogło, że prym w sieci wiedzie dynamiczne typowanie. Jednak niektóre języki statycznego typowania mają się w dobie technologii webowych bardzo dobrze.

PHP czyli programistyczny Król internetowego świata

Język PHP pojawił się trochę po powstaniu pierwszych stron internetowych i został upubliczniony w 1995 roku. PHP powstał w swoim założeniu do generowania stron internetowych i budowania aplikacji webowych, nie powinno więc dziwić, że jest główną technologią i najczęściej stosowanym językiem programowania do tworzenia witryn.

Dlatego też zamiast stosowania czystego języka PHP powstały frameworki przeznaczone do tworzenia stron takie jak: Zend, Symfony, Laravel, etc. Dla jeszcze dalszego uproszenia życia można tworzyć strony oparte na PHP jeszcze prościej poprzez popularnego użycie systemów zarządzania treścią – CMS (Content Managment System) takich jak WordPress, TYPO3 czy wcześniej Drupal lub Joomla.

Wykres popularności frazy PHP na przestrzeni 15 lat od Google Trends
Popularność zapytania PHP w ciągu ostatnich 15 lat według Google Trends

Podstawową zaletą tego, że PHP od lat rozwija się w świecie internetowym jest społeczność, którą wytworzył. Jest ona tak duża, że fani poszczególnych rozwiązań (CMS’ów, Frameworków, bibliotek, klas) niekoniecznie się znają. Oznacza to, że szukając napotkanego problemu z użyciem PHP w znaczącej większości przypadków nie tylko ktoś to robił wcześniej ale ktoś zadał takie pytanie na forum i dostał odpowiedź albo nawet istnieje do tego poradnik krok po kroku.

W początkowej fazie funkcjonowania PHP funkcjonował pewien żart: Programista PHP. Tak to koniec dowcipu. Opierał się on o przeświadczenie, że PHP jako język dynamicznie typowany i o dość luźnej składni mógł generować (zwłaszcza w projektach mniej doświadczonych programistów) niemały rozgardiasz a z racji braku uporządkowania sam język był demonizowany.

Na szczęście te czasy już minęły i PHP przetrwał próbę czasu nawet dodając możliwość narzucenia mu kontroli typów wraz z wersją 7.0.

Reasumując, obecny Internet nie istnieje bez wszechstronnego języka PHP (w kontekście webowym) i bez jego podstawowej znajomości funkcjonowanie w technologiach internetowych jest co najmniej utrudnione.

JAVA, technologia bez której upadnie światowa gospodarka

W roku 1995, tak samo jak poprzedni omawiany język, JAVA pojawiła się na światowej scenie technologii webowych jako język ogólnego przeznaczenia. JAVA została stworzona po kierownictwem James’a Gosling w firmie Sun Microsystems (kupionej później przez Oracle za 7,5 mld dolarów).

W efekcie powstał język o silnym typowaniu zmiennych, który jak sam się reklamował „Write once, run anywhere” (napisz raz, uruchamiaj wszędzie) miał być przenośny i niezależny od środowiska. Rzeczywistość z początku nie była jednak tak kolorowa, gdyż jako język interpretowany, JAVA potrzebuje specjalnie przygotowanej maszyny wirtualnej – JVM (Java Virtual Machine).

Wykres popularności frazy Java na przestrzeni 15 lat od Google Trends
Popularność zapytania Java w ciągu ostatnich 15 lat według Google Trends

JAVA obecnie wykorzystywana jest prawie wszędzie, zwłaszcza w strukturach korporacyjnych oraz bankowych a także w usługach takich jak OpenOffice, Gmail, linkedin.com, netflix.com. Jak to się stało, że mimo ograniczenia wynikającego z instalacji dedykowanej maszyny wirtualnej JAVA stała się tak powszechnym językiem, że gdyby zniknęła to większość biznesowego świata w Internecie przestała działać?

  • Przede wszystkim JAVA jest bardzo uporządkowana i usystematyzowana i ze względu na swoją składnię utrudnia programistom popełnienie błędów (czego nie można powiedzieć o PHP czy Javascript).
  • Jako, że w zamyśle miała zastąpić język C++ jej zastosowania są bardzo szerokie co pozwoliło jej zawojować w wielu dziedzinach.
  • JAVA posiada bardzo restrykcyjną kompatybilność wsteczną, czyli nowe wersje JAVY uruchamiają aplikacje wykonane na starszych wersjach. Jest to nie tylko wygodne, nie tylko upraszcza ewentualne migracje, ale przede wszystkim bezpieczne. (Dla porównania uruchomienie strony na WordPressie w starej wersji będzie problematyczne na nowych wersjach PHP 7+)
  • JAVA jest niezależna od architektury czyli między innymi systemu operacyjnego i procesora (o ile da się zainstalować tam JVM).
  • Z biegiem czasu dodatkowe biblioteki udostępniły funkcje pozwalające na programowanie rozproszone.

Efektem powyższego prawdziwym stało się stwierdzenie, że JAVA = KORPO = JAVA.

C# stare rozwiązanie w nowej odsłonie

Każda akcja wywołuje reakcję. Zasada ta ma przełożenie nie tylko w świecie fizyki ale i biznesu. Widząc rosnącą popularność języka JAVA rozwijanego przez Sun Microsystems aby wyprzeć język C++ firma Microsoft rozpoczęła prace nad swoim nowym dzieckiem – językiem C#.

Podstawowe prace zostały ukończone w roku 2000 przez zespół prowadzony przez Anders’a Hejlsberg’a. Od tego momentu w zakresie przenośności Microsoft mógł poprzez C# częściowo rywalizować z JAVĄ. Dlaczego częściowo? Ponieważ język C# jest ściśle związany z platformą .NET a ta przez długi czas działała tylko dla …, tak Windows. Można przypuszczać, że gdyby nie usilna próba dystrybucji swojego języka tylko dla Windows to JAVA nie zyskałaby aż tak dużej popularności (przejąłby jej część C#), ale to tylko już gdybanie o przeszłości.

Wykres popularności frazy C# na przestrzeni 5 lat od Google Trends
Popularność zapytania C# w ciągu ostatnich 5 lat według Google Trends

Mimo wszystko C# jest bardzo popularnym językiem także w świecie webowym (oparty na nim jest między innymi StackOverflow). W kontekście C# trzeba zwrócić uwagę na jeden aspekt jego popularności. C# jest wykorzystywany na platformie Unity stosowanej głównie do tworzenia gier komputerowych.

Python, wąż do analizy danych i zastosowań webowych

Kilka lat wcześniej niż dotychczas omówieni poprzednicy powstał język Python. Mimo posiadania w swoim logotypie węża, nazwa języka powstała od Latającego Cyrku Monty Pythona, którego fanem jest jego twórca Guido van Rossum.

Python jest językiem obiektowym ogólnego przeznaczenia o dynamicznym typowaniu, który nosi miano prostego do nauczenia i dość zwięzłego w swojej składni. W porównaniu do JAVY czy C# aby wykonać dane zadanie w PYTHON’ie potrzeba napisać dużo mniej kodu a to nabiera na znaczeniu im bardziej projekt jest rozbudowany.

Wykres popularności frazy Python na przestrzeni 15 lat od Google Trends
Popularność zapytania Python w ciągu ostatnich 15 lat według Google Trends

Python na tle innych języków wyróżnia się niespotykaną gdzie indziej koncepcją stosowania wcięć do wydzielania bloków kodu, gdy w innych językach zazwyczaj stosuje się w tym celu nawiasy klamrowe {}. Wymaga to od programistów zachowania estetyki pisania kodu (większej niż zwykle).

Pomimo wielu zastosowań język Python przede wszystkim jest stosowany tam, gdzie konieczna jest analiza danych oraz ich wizualizacja. Umożliwia to między innymi zwięzła i skryptowa natura Pythona, dlatego jest on szeroko stosowanych przez świat naukowy i analityków danych. Łatwość przetwarzania i analizy danych spowodowała, że Python jest stosowany także w uczeniu maszynowym a popularna biblioteka w tym celu stworzona i udostępniona przez Google – Tensorflow jest rozprowadzana w JAVIE oraz Pythonie ale tylko w tym drugim Google gwarantuje stabilność jej działania.

W kontekście webowym nie można też pominąć frameworka Django służącego do pisania aplikacji webowych w Pythonie. Na Django oparte są takie serwisy jak Instagram czy Pinterest.

JavaScript – doktor Frankenstein, który ożywił strony internetowe

Jak większość języków z tego zestawienia JavaScript pojawił się w roku 1995. Legenda głosi, że Brendan Eich pracujący wtedy w NetScape stworzył język JavaScript raptem w dziesięć dni. Może być w tym ziarnko prawdy, biorąc pod uwagę drobne luki w samym języku i niektóre kwiatki jakie można znaleźć w jego działaniu.

Wykres popularności frazy JavaScript na przestrzeni 15 lat od Google Trends
Popularność zapytania JavaScript w ciągu ostatnich 15 lat według Google Trends

W kontekście świata webowego JavaScript jest najbardziej rozpowszechnionym językiem, gdyż z racji swojego głównego przeznaczenia czyli uczynienia stron internetowych interaktywnymi, znajduje się on właściwie na każdej stronie. Przynajmniej po stronie użytkownika czyli Front-Endzie.

O ile w początku swojego powstania i przez pierwsze lata był on tylko i wyłącznie dodatkiem do stron internetowych, to obecnie stanowi znaczącą treść poszczególnych stron. Dawniej stosowano na stronach internetowych opcję włącz / wyłącz obsługę javascriptu. Obecnie jest ona używana tylko w celach diagnostyczny a nie użytkowych. Co więcej gdyby z dnia na dzień usunąć Javascript ze wszystkich stron internetowych to duża część stron przestałaby w ogóle działać z punktu widzenia użytkownika.

Powszechność JavaScriptu przyczyniła się też do powstania wielu bibliotek oraz frameworków. Nawet złośliwi mówią, że codziennie powstaje nowy framework Javascriptowy, ale nie każdy przetrzymuje próbę czasu tak jak: React, Vue czy Angular.

Z punktu widzenia pozycjonowania, Javascript jest problematyczny. O ile Google zarzeka się, że dobrze sobie radzi z interpretacją i pobieraniem danych zaciąganych przez JavaScript (nawet ostatnio Google ogłosił, że Googlebot będzie interpretował Javascript tak jak najnowsza wersja przeglądarki Chrome) to jednak nie zawsze jest tak kolorowo i jeśli można coś zrobić bez użycia JavaScriptu poprzez wygenerowanie kodu HTML to zazwyczaj lepiej to tak zrobić.

TypeScript, który uporządkował JavaScript i inne języki

Wykres popularności frazy TypeScript na przestrzeni 15 lat od Google Trends
Popularność zapytania TypeScript w ciągu ostatnich 15 lat według Google Trends

Język TypeScript – wykonany przez Microsoft w 2012 roku. Powstał on między innymi w celu ułatwienia programistom Back-Endu korzystających z języków silnie typowanych (na przykład JAVA, C#) korzystanie z języka JavaScript o dynamicznym typowaniu zmiennych (czyli też luźniejszej składni). Za pomocą TypeScript można pisać kod o statycznym typowaniu, który później jest ‚kompilowany’ do JavaScriptu. W ten sposób kod stawał się bardziej uporządkowany i wykorzystuje takie rozwiązanie jeden z najpopularniejszych frameworków JS czyli Angular.

Podsumowanie

I to już koniec zestawienia głównych języków programowania stosowanych w technologiach webowych. Oczywiście języków wykorzystywanych w Internecie jest dużo więcej i wiele z nich nie zostało omówionych, ponieważ głównym kryterium doboru było omówienie języków wykorzystywanych do tworzenia stron internetowych.

W ramach podsumowania chciałbym skłonić do refleksji czy zawsze do danych zastosowań stosuje się rozwiązania do tego odpowiednie czy przeznaczone, a jeśli nie to czy ma to większe uzasadnienie?

Może Ci się również spodoba

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *