Technologie oraz języki programowania używane w stronach internetowych

Technologie stron internetowych: najpopularniejsze języki programowania używane w stronach internetowych oraz aplikacjach www

Dzisiejsze strony internetowe są z reguły bardzo skomplikowanymi projektami. Nowoczesne strony www zazwyczaj zawierają dwie warstwy technologiczne, frontend oraz backend. W skład obu warstw technologicznych wchodzą języki programowania takie jak, html, css, javascript po stronie frontend’u oraz np. php, java, ruby, python po stronie backend’u.W poniższym artykule postaramy się przybliżyć technologie, które warto rozważyć podczas przygotowywania się do projektu. Wybór nie jest prosty, ponieważ oprócz technologii, które wymieniamy tekście, jest jeszcze ogromna lista możliwości. Wybór technologii zastosowanej w projekcie strony czy aplikacji powinien być poprzedzony analizą, a następnie omówiony z wykonawcą projektu.

Więc jaki język wybrać do programowania stron internetowej lub aplikacji?

Jeśli zlecamy wszystkie działania agencji interaktywnej lub software housowi, wtedy wybór języków programowania będzie przeprowadzony przez firmę zewnętrzną. Wtedy tylko czekamy na wykonanie projektu zgodnie z wypracowaną specyfikacją oraz dokumentacją. W przypadku kiedy jednak część działań projektowych lub całość działań projektowych wykonywanych jest w ramach organizacji, to wtedy musimy się zastanowić nad wyborem optymalnych języków pod kątem specyfiki naszego projektu. Po stronie przeglądarki wykorzystywane są HTML, CSS oraz JavaScript (nie mylić z JAVA), jest to trójca święta nowoczesnego Frontend Developmentu. Są to podstawowe języki wykorzystywane w internecie.

Pierwszym najważniejszym elementem naszej strony jest HTML.

html jako język programowania

Czym jest HTML?

HTML (ang. HyperText Markup Language) jest językiem opisującym strukturę strony www za pomocą hipertekstowych języków znaczników. HTML został napisany w 1980 roku w ośrodku badawczo-rozwojowym CERN przez Tim Berners-Lee. Chodziło o to, żeby w ośrodku badawczym można było uzyskać dostęp do dokumentów naukowych. Za pomocą hiperłączy użytkownik sieci mógł uzyskiwać dostęp do dokumentów, których poszukiwał. W 1990 roku została opracowana pierwsza wersja propozycji WWW. Początkowo HTML posiadał tylko 22 znaczniki. Współcześnie HTML posiada 10 podstawowych znaczników, 39 znaczników formatujących, 12 znaczników formularza, 4 znaczniki ramek, 8 znaczników związanych z grafiką, 4 audio-video, 3 dotyczące linków, 6 znaczników list, 10 znaczników dotyczących tabel, 13 znaczników semantycznych, 3 znaczniki meta oraz 5 znaczników dotyczących skryptów i programowania.

Następnym elementem dość oczywistym są kaskadowe arkusze stylów, w skrócie CSS (akronim ang. Cascading Style Sheets)
css technologie programowania

CSS został opracowany w 1996 roku w celu opisywania wyglądu strony www.

Obecnie CSS składa się z trzech modułów CSS1, CSS2, CSS3, ustandaryzowany za pomocą specyfikacji W3C (ang. World Wide Web Consortium).  CSS1 jest najstarszym standardem, obecnie najbardziej rekomendowanym przez konsorcju W3C jest wersja CSS2.1 ponieważ jest standaryzowana w całości, natomiast CSS3 w dalszym ciągu przechodzi proces standaryzacji, co wiąże się z tym, że część stylów nie jest jeszcze obsługiwana przez niektóre przeglądarki.

JavaScript jest językiem skryptowym odpowiadającym za logikę po stronie przeglądarki. Skrypty są podpięte pod stronę i w momencie wywołania strony internetowej przeglądarka interpretuje skrypty JS.

javascript język programowania

JavaScript jest skryptowym językiem programowania interpretowanym bezpośrednio w przeglądarkach. JavaScript został stworzony w Netscape przez Brendana Eich‘a w 1995 roku.

JavaScript według raportu StackOverflow 2019, jest najpopularniejszym językiem programowania. Zajmuje pierwsze miejsce 67.8% programistów zna JavaScript, na drugim miejscu jest HTML/CSS 63.5%, a na trzecim SQL z wynikiem 54.4%. W przypadku strony statycznej wystarczy wykorzystać tylko HTML, CSS i skrypty napisane w JavaScript, żeby otrzymać kompletną i działającą stronę internetową. Javascript odpowiada za logikę. Wszystkie czynności w przeglądarkach, od animacji zaczynając po np. walidację pól formularza kończąc obsługuje właśnie JavaScript.

Najbardziej popularne języki programowania

źródło: https://insights.stackoverflow.com/survey/2019

Jeśli jednak mamy zamiar wykonać bardziej rozbudowaną stronę lub aplikację www, która wymaga języka programowania działającego po stronie serwera to wtedy musimy wybrać backendowy język programowania.

Więc jaki backendowy język programowania należy wybrać?

Powołując się ponownie na raport StackOverflow, można w nim zobaczyć, że najpopularniejszym językiem programowania jest Python. Zajmuje on czwarte miejsce, gdzie 41.7% programistów korzysta z niego. Czyli wyciągając wnioski z tego należałoby wybrać backend w Pythonie, a dokładnie rzec ujmując w Django. Niestety nie jest to dla nas miarodajne, ponieważ Python tak samo jak Java, która jest na piątej pozycji z wartością 41.1% są używane również do programowania aplikacji natywnych, nie związanych bezpośrednio z programowaniem stron internetowych.Przeglądając dalej statystyki napotykamy wreście pierwszy język skryptowy napisany pod strony internetowe. Jest nim PHP. Stawiam więc w tym miejscu tezę, że tak naprawdę najważniejszym językiem backendowym jest PHP, patrząc na procent udziału na poziomie 26.4%.

Czym jest więc PHP?

php język programowania

PHP jest to skryptowy język programowania interpretowany bezpośrednio po stronie serwera www.

PHP zyskuje w oczach programistów świetną dokumentacją i prostotą. Pierwsza wersja tego języka skryptowego została opracowana w 1994 roku przez Rasmusa Lerdorfa. PHP jest to akronim od Personal Home Page/Form Interpreter. Język przez wiele lat ewoluował i dzisiaj jest kompletnym obiektowym językiem programowania. Obecnie programiści korzystają już z z wersji  7+. Rekomendowany stosem technologicznym w przypadku PHP jest LAMP (ang. Linux, Apache, MySQL, PHP).

Moim zdaniem kolejnym fantastycznym językiem skryptowym jest Ruby. W Polsce mało popularnym, natomiast na zachodzie jest często spotykanym rozwiązaniem. Ruby posiada bardzo ciekawą składnię, zbliżoną do naturalnego języka. Został stworzony przez japońskiego programistę Yukihiro Matsumoto. Jest interpretowanym językiem obiektowym. Aktualnie wykorzystuje go 8.4% web developerów.

ruby jezyk programowania

Jeśli ktoś szuka bardziej zaawansowanych języków programowania, języków ogólnego zastosowania, to może wybrać Pythona lub Java.

Python jest świetnym językiem ogólnego przeznaczenia. Posiada przejrzystość składni. Został napisany w Amsterdamie na wydziale Matematyki i Informatyki, a jego nazwa pochodzi od angielskiego serialu komediowego.

python język programowania

Pythona w web devlopmencie używa się wykorzystując jego framework Django.

Następnym na liście jest JAVA.Jest to bardzo wydajny obiektowy, silnie typowany język. Język ten jest wykorzystywany zarówno w desktopowych aplikacjach, jak również w mobilnych i webowych.

Czy przeglądarki służą tylko do przeglądania, czy jednak można je wykorzystać jako narzędzie do web developmentu.

przegladarki stron internetowych

Z naszego punktu widzenia przeglądarki są to takie same narzędzia, jak dla grafika np. Adobe Photoshop. Bez przeglądarki nie bylibyśmy w stanie wykonać projektu strony internetowej, czy aplikacji webowej. Dlatego postanowiłem napisać kilka słów o nich. Czy mamy jakieś preferencje odnośnie przeglądarek internetowych?

Jak najbardziej posiadamy preferencje. Dla nas najważniejsze są dwie przeglądarki.

  1. Google Chrome
  2. Mozilla Firefox

Wymienimy w naszym artykule cztery przeglądarki szeroko stosowane do przeglądania, ze względu na potrzebę sprawdzenia jak strona internetowa zachowuje się na tych najbardziej popularnych. Zresztą informacje, które przeglądarki są w użyciu i jakie wybrać można sprawdzić na dedykowanej temu problemowi stronie. Najchętniej wybierane są dwie, Google Chrome oraz Mozilla Firefox według statystyk StatsCounter. http://gs.statcounter.com/browser-market-share

Udział w rynku przeglądarek zmienia się w zależności od urządzenia końcowego. Np. inne są statystyki dla desktopa, a inne dla telefonu. Warto zajrzeć na stronę i sprawdzić dokładnie jak kształtują się udziały w rynku. Ponieważ piszemy o procesie projektowania strony internetowej i aplikacji webowej to tutaj mam na myśli wykorzystanie przeglądarki na desktopie.

Oprócz powyższych dwóch przeglądarek, użytkownicy korzystają jeszcze z Internet Explorera lub Edge oraz z Safari.

W przypadku web developmentu programiści rekomendują wykorzystanie Google Chrome lub Mozilli Firefox. Obie przeglądarki posiadają rozbudowane wsparcie dla programistów, dzięki licznym bezpłatnym rozszerzeniom.

Jak wygląd nowoczesny stos technologiczny w web developmencie?

Przede wszystkim należy mieć na uwadze najnowocześniejsze frameworki i biblioteki.

Pracując dla dużych zespołów ważne jest to, żeby wszyscy pracowali w ramach jednego określonego z góry stosu technologicznego i według ustalonych zasad. W związku z tym, jeśli nie mamy do czynienia z wymyślaniem koła od nowa odradza się pisanie bibliotek od nowa. Można wykorzystać już istniejące i do tego służą darmowe frameworki oraz biblioteki.

Jest ich obecnie cała masa i możemy śmiało korzystać pełnymi garściami z wiedzy i doświadczenia ogromnych zespołów specjalistów zajmujących się tylko ich rozwojem.

Nam pozostaje tylko cieszyć się ze swobody korzystania z ich pracy.

Przykładem takich rozwiązań są np. biblioteki i frameworki oparte o JavaScript skierowane do świata frontendu. Najczęściej służą do tworzenia tzw. Interfejsów użytkownika t.j. user interfaces (UI).

JavaScript dostarcza dziesiątki możliwości w postaci frameworków oraz bibliotek. Ulubionym wyborem programistów są AngularJS jako framework, oraz ReactJS, VueJS lub jQuery jako biblioteki.

W tym momencie najchętniej ściąganym repozytorium w javascript jest ReactJS, na drugim miejscu jest Angular, a na trzecim Vue. Są to dane z ostaniego roku według raportu ze stron NPMTrends https://www.npmtrends.com/react-vs-vue-vs-@angular/core

Frameworki są zatem gotowymi rozwiązaniami najczęściej spotykanych problemów programistycznych, framework jest oparty o jeden konkretny język programowania. Spotykamy frameworki zarówno frontowe jak i backendowe. Frontowe to np. Angular dla JS, Bootstrap dla CSS, lub Django w Pythonie dla backendu.

Framework pozwala budować jednolite aplikacji, dostarczając pakiet rozwiązań pozwalający szybko zbudować aplikacje.Dodatkowo są również wykorzystywane biblioteki, które są niezależnymi komponentami pozwalającymi opracować logikę potrzebną w aplikacjach. Taką biblioteką jest wspomniany wyżej ReactJS lub jQuery.

Należy wspomnieć, że w backendzie jest frameworków równie dużo, ale dzielą się na konkretne języki np. dla PHP można wybrać Symfony, Laravel, czy Zend. Dla Pythona jest wspomniany Django, dla Ruby, Ruby Rails, dla NodeJS jest ExpressJS.

Spektrum możliwych rozwiązań może być dla przeciętnego użytkownika przytłaczający, dlatego o ile jest to możliwe rekomendujemy zlecenie projektu specjalistom.

Sprawdź naszą ofertę i skontaktuj się z nami. Przygotujemy bezpłatną wycenę projektu strony www, serwis internetowego, sklepu, aplikacji mobilnej.

OFERTA