Język programowania

Służy do komunikowania się z komputerami i tworzenia programów komputerowych.

To język zrozumiały dla komputera. Istnieją wysokopoziomowe i niskopoziomowe języki programowania. Wysokopoziomowe są łatwiejsze do zrozumienia i przyswojenia dla programistów – swoją składnią przypominają język angielski. Niskopoziomowe są bardziej abstrakcyjne, zbliżone do kodu maszynowego i do zerojedynkowego języka binarnego.

Niektóre z języków są także wykorzystywane do kontrolowania jednych urządzeń przez drugie – np. program uruchomiony na komputerze może sterować drukarką.

Obecnie na świecie istnieją tysiące języków programowania i każdego roku powstają nowe. Od języków naturalnych odróżniają się wysoką precyzją oraz jednoznacznością. Ludzie podczas komunikacji między sobą stale popełniają niewielkie błędy lub pozostawiają niedomówienia wiedząc, że rozmówca najczęściej ich zrozumie. Maszyny wykonują zadania dokładnie, dlatego każdą czynność trzeba opisać ściśle krok po kroku, ponieważ komputer nie potrafi dociec, co programista miał na myśli.

Wiele języków zostało zaprojektowanych od zera, lecz powszechna jest praktyka rozwijania już istniejących rozwiązań oraz celowego upodabniania jednego języka do innego. Pozwala to na szybsze opanowanie nowego języka przez programistów mających już doświadczenie w tworzeniu aplikacji. Potrzeba istnienia wielu różnorodnych języków wynika z dużej liczby sytuacji, w których są one wykorzystywane (…)[1]”.

Programiści mają różne gusta – każdy z nich ma swój ulubiony język, w którym pisze mu się najwygodniej. Niektóre języki programowania powstały z myślą o konkretnych zastosowaniach np. w przemyśle – do sterowania urządzeniami (w tym robotami), dla wsparcia elektronicznego obiegu dokumentów, na potrzeby budowy stron www, obsługi wielkich baz danych, czy też do budowy aplikacji mobilnych. To m.in. z tego powodu do dziś nie udało się stworzyć uniwersalnego języka programowania.

[1] Wikipedia

 

Programista

To osoba zajmująca się opracowywaniem poleceń w języku programowania.

Programista tworzy algorytm, czyli ciąg jasno zdefiniowanych, prostych czynności do wykonania przez komputer, zwanych też komendami. Komendy zapisuje się  w formie tekstowej, obrazkowej lub dźwiękowej.

Zawód programisty wymaga znajomości logiki, algorytmiki, matematyki, co najmniej w podstawowym zakresie. Jednak najważniejsze umiejętności zdobywa się w praktyce. Co oznacza, że nigdy nie jest za późno, by zacząć programować. W internecie można znaleźć wiele narzędzi do samodzielnej nauki programowania dla osób w każdym wieku.

 

Kodowanie/programowanie

To wydawanie komputerowi poleceń, dzięki którym rozumie, co ma zrobić.
Polecenia zapisuje się w wybranym języku, zwanym językiem programowania. Osoba zajmująca się opracowywaniem poleceń w języku programowania to programista.

Programista tworzy algorytm, czyli ciąg jasno zdefiniowanych, prostych poleceń do wykonania przez komputer, zwanych też komendami. Komendy zapisuje się w języku programowania – w formie tekstowej, obrazkowej lub dźwiękowej. W ten sposób tworzy się kod. Budując algorytm ważne jest, aby umieć rozbić złożone czynności na proste, na przykład polecenie: zrób jajecznicę można rozbić na mniejsze komendy:

  1. Wyjmij trzy jajka z lodówki;
  2. Rozgrzej pięć gram masła na patelni;
  3. Jeśli masło na patelni się rozpuści, rozbij jajka na patelni, itd.

Zaprogramowana sekwencja poleceń to program/aplikacja.

 

Front-end

To widoczna dla użytkowników warstwa programu, z którą wchodzą w interakcję – np. klikają, wpisują dane, itp. Obrazowo: front-end to fasada budynku, karoseria i wyposażenie samochodu.

Projektowaniem front-endu zajmują się programiści zwani front-end developerami. Ich zadaniem jest takie przygotowanie tej warstwy programu, by była funkcjonalna, atrakcyjna i dostosowana do różnych urządzeń.

 

Back-end

To niewidoczny dla użytkownika „silnik” całego programu. Obrazowo: back-end do wnętrze budynku, silnik samochodu.

Wszystkie, wykonywane przez użytkownika w warstwie front-end, działania są przekierowywane do warstwy back-end. Tutaj odpowiednio zaprogramowany komputer rozpoznaje sygnały płynące od użytkownika i reaguje w zapisany w swoim kodzie sposób.

 

Algorytm

To ciąg jasno określonych czynności koniecznych do wykonania pewnego rodzaju zadań. Algorytm to „przepis” na osiągnięcie pożądanego efektu końcowego. W życiu codziennym przykładem algorytmu jest przepis kulinarny. Nauką zajmującą się badaniem algorytmów jest algorytmika.

 

Repozytorium

„To miejsce uporządkowanego przechowywania dokumentów, z których wszystkie przeznaczone są do udostępniania. Dziś termin stosowany jest również w odniesieniu do najrozmaitszych zasobów cyfrowych (baz danych, zbioru pakietów czy kodów źródłowych), np. w internecie. (…) W przeszłości repozytoria miały formę szafy na księgi i akta urzędowe[1]”. 

[1] Wikipedia

Bug

Tak w żargonie programistów nazywany jest…błąd. To usterka lub nieścisłość w programie, które uniemożliwiają lub utrudniają jego działanie. Jednym ze sposobów wykrywania błędów jest przeprowadzanie testów przed uruchomieniem programu. Określenie pochodzi od angielskiego słowa bug, czyli robak.

 

CMS (Content Management System)

To – oparte na gotowych szablonach – oprogramowanie, pozwalające na łatwe tworzenie stron internetowych i ich późniejszą aktualizację. Przykładem systemów CMS są m.in. WordPress, Joomla, czy Drupal.

 

Aplikacja webowa (internetowa)

To program komputerowy, który pracuje z wykorzystaniem serwera, komunikuje się z użytkownikiem przez sieć internetową, najczęściej wykorzystując przeglądarkę internetową.

 

Aplikacja mobilna

To program komputerowy działający na przenośnych urządzeniach mobilnych, takich jak smartfony i tablety.

 

Responsywność

To cecha strony internetowej.

Każda strona www powinna być zaprojektowana tak, by jej treści prawidłowo wyświetlały się na ekranach o różnych wielkościach, w różnych przeglądarkach i na urządzeniach z różnymi systemami operacyjnymi (np. smartfony, tablety). Jeśli tak jest, to znaczy, że strona jest responsywna.

 

UX (User experience)

„(ang. doświadczenie użytkownika)całość wrażeń, jakich doświadcza użytkownik podczas korzystania z produktu interaktywnego. Pojęcie to używane jest najczęściej w odniesieniu do oprogramowaniaserwisów internetowych lub urządzeń elektronicznych (…). Projektowanie user experience (ang. user experience design) to projektowanie produktów interaktywnych ze szczególnym zwróceniem uwagi na to, aby interakcja z nimi dostarczała użytkownikom pozytywnych doświadczeń. Produkt powinien: prezentować się w sposób atrakcyjny dla użytkownika, być funkcjonalny, ergonomicznyużyteczny, a korzystanie z niego powinno sprawiać przyjemność i dawać satysfakcję. Aby osiągnąć swoje cele projektanci user experience wykorzystują zazwyczaj metodykę projektowania zorientowanego na użytkownika. Jednym z narzędzi do testowania user experience są testy z użytkownikami[1]”.

Osobą zajmującą się projektowaniem rozwiązań przyjaznych użytkownikowi jest UX designer.

[1] Wikipedia

 

Serwer

To zawsze podpięty do sieci/internetu komputer, którego zadaniem jest udostępnianie zasobów (oprogramowania lub plików) innym komputerom połączonym w sieci.

 

Hosting

To udostępnianie, posiadanych przez właściciela serwera, zasobów. To on rezerwuje dla użytkownika miejsce na pliki oraz określone umową usługi serwerowe.

Software

To programy i system operacyjny, którymi użytkownik posługuje się podczas pracy na komputerze (np. edytor tekstu, gry komputerowe).

Hardware

To części techniczne, z których zbudowany jest komputer (np. procesor, dysk twardy).

 

Interfejs użytkownika

„Interfejs użytkownika (ang. user interface, UI) – przestrzeń, w której następuje interakcja człowieka z maszyną.

Interfejs użytkownika to część urządzenia lub oprogramowania odpowiedzialna za interakcję z użytkownikiem. Człowiek nie jest zdolny do bezpośredniej komunikacji z maszynami.  Aby stało się to możliwe urządzenia są wyposażone w odpowiednie funkcje i oprogramowanie. Najprostszy rodzaj komunikacji człowieka z maszyną to polecenia wpisywane na klawiaturze, bardziej zaawansowane sposoby obejmują używanie myszki w środowisku graficznym, komunikację głosową i zarządzanie komputerem za pomocą gestów[1].

[1] Wikipedia

 

Chmura

To zestaw usług (np. miejsce na pliki, edytor tekstu, przeglądarka zdjęć), dostarczanych użytkownikowi na określonych warunkach. Dzięki takiemu rozwiązaniu użytkownik korzysta z rozwiązań wypracowanych przez dostawcę, ma dostęp – przez sieć internetową – do swoich plików z dowolnego miejsca, używa aktualnego oprogramowania.

 

Oprogramowanie open source

To tzw. otwarte oprogramowanie. Oznacza to, że kod, z którego zbudowano program, jest ogólnodostępny. Z takiego oprogramowania można legalnie korzystać, rozpowszechniać i modyfikować na warunkach określonych w licencji. Ideą open source jest właśnie to, aby każdy mógł  je rozwijać i udoskonalać, z poszanowaniem praw autorskich.

 

Baza danych

To zbiór danych/informacji zapisanych zgodnie z określonymi regułami, często w postaci tabeli. Informacje zawarte w bazie danych można przetwarzać (sortować, łączyć, wybierać wg. określonych kryteriów, itp.) za pomocą dedykowanych języków programowania.

 

Backup

To kopia zapasowa ważnych dla użytkownika danych, w tym systemu operacyjnego, aplikacji, baz danych, plików, zdjęć czy też list adresów i telefonów. Zaleca się tworzenie kopii zapasowych tak często, jak to możliwe. Wszystko po to, by – w razie awarii komputera lub zainfekowania złośliwym oprogramowaniem szyfrującym – móc szybko odtworzyć dane.