You are on page 1of 26

Міністерство освіти і науки України

Сумський державний педагогічний університет імені А.С. Макаренка

Кафедра інформатики

Курсова робота
на тему:
Сучасні мови веб програмування

Студента ІII курсу 414-стн групи


Галузь знань – 12 Інформаційні технології
Спеціальність 122 Комп’ютерні науки
Міщенка Артура Олександровича

Науковий керівник –
кандидат педагогічних наук,
доцент кафедри інформатики
Юрченко А.О.

Національна шкала __________________


Кількість балів: _____ Оцінка: ECTS ___
Члени комісії_______________________
___________________________________
___________________________________

Суми – 2020
2

ЗМІСТ

ВСТУП………………………………………………………………………….…3
1.1. HTML…………...............................................................................................4
1.2. CSS…………………………………………………………………………….7
1.3. JavaScript…………………………………………………............................10
1.4. PHP………………………………………………..…………………………13
1.5. Java………………………………………………………..…………………16
1.6. Python………………………………………………...…….………………..18
1.7. Ruby…………………………………..……………………………………...20
Висновок………………………………………………………………………...23
Список використаних джерел………………………………………………..24
3

ВСТУП
Зважаючи на популярність та досягнення веб-технологій, кожному
бізнесу обов’язково потрібно мати веб-сайт, який має високу
функціональність та візуально привабливий інтерфейс. Процес, завдяки
якому створюється гарний веб-сайт, мобільні додатки чи інші подібні
платформи, відомий як веб-розробка.
Одним із невід’ємних аспектів веб-розробки є веб-програмування, яке
досягається за допомогою мов програмування. Мови веб-розробки - це
платформи, за допомогою яких інструкції передаються машині та
виконуються дії.
Веб-розробка - це термін, який використовується для позначення
процесу створення веб-сайту і може варіюватися від розробки однієї простої
сторінки до серії складних сторінок. Веб-розробка охоплює кілька дій або
практик, деякі з них включають веб-дизайн, створення вмісту,
програмування, завдання мережевої безпеки, а також сценарії на стороні
клієнта або сервера тощо.
Сайтів існує неймовірна кількість, їх неможливо порахувати навіть при
великому бажанні, адже нові проекти запускаються щодня, але тільки
одиниці досягають поставлених цілей, інші ж, йдуть в нікуди. Чому це
відбувається - однозначно відповісти не можна, просто хтось готовий
повністю віддаватися своїй справі і вкладати в нього не тільки вільний час,
але також фінансові кошти, інші ж, зупиняються ще на самому початку
шляху, безглуздо вичікуючи, коли сайт почне приносити йому прибуток з
порожнечі.
Завдяки тому, що інтернет є невичерпним джерелом надання
різноманітної інформації, створення сайтів дуже актуально, незалежно від
обраної тематики. Але варто приділяти увагу не стільки створення свого
сайту, скільки його наповненню, тому що актуальним буде тільки якісний
сайт, який попаде в топ видачі пошукової системи, зацікавить користувача і
принесе певну користь своєму власникові.
4

1.1. HTML

HTML розшифровується як HyperText Markup Language. Це мова


розмітки, яка використовується розробниками веб-сайтів для розробки та
дизайну веб-сторінок. Це, безумовно, не єдина мова, якою користуються веб-
майстри. Існує XML (розширена мова розмітки), GML (узагальнена мова
розмітки) та LaTex, щоб назвати лише деякі, але HTML є найбільш
поширеним.
Без HTML ми мали б веб-сторінки, які виглядали б не менш цікаво, ніж
сторінки з неформатованим текстом. HTML дозволяє нам додавати стиль до
тексту, вставляти та форматувати зображення, вбудовувати відео,
налаштовувати шрифти, додавати колір та багато іншого.
Багато нових можливостей HTML спрямовані на вдосконалення
платформи для побудови веб-додатків. HTML5 надає в розпорядження
розробника багато нових інструментів для поліпшення призначеного для
користувача інтерфейсу, від більш змістовних тегів і поліпшених засобів
міжсайтових і міжвіконних комунікацій до анімаціїі поліпшеною
мультимедійною підтримкою.
HTML5 та CSS3 – це не просто два нові стандарти, запропонованих
комітетом W3C (World Wide Web Consortium) і його робочими групами. Це
наступне покоління щодня використовуваних технологій, створене для того,
щоб вам було простіше і зручніше будувати сучасні веб-додатки.
Одна з найбільш вагомих причин для негайного переходу на HTML5
полягає в тому, що розмітка працює в більшості існуючих браузерів. Ви
можете почати використовувати HTML5 прямо зараз, навіть в Internet
Explorer 6, і поступово переробляти свою розмітку. Вона навіть буде
проходити валідацію W3C.
Кожен, хто коли-небудь працював з HTML або XML, вже стикався з
оголошенням doctype. Воно повідомляє програмам валідації і редакторам, які
теги і атрибути будуть використовуватися в документі і як повинен бути
5

сформований документ. Оголошення doctype також використовується


багатьма браузерами для визначення того, як браузер повинен відтворювати
сторінку. Дійсне оголошення doctype зазвичай змушує браузер відтворювати
сторінку в «режимі відповідності стандартам».
У порівнянні з досить розлогим оголошенням XHTML 1.0 Transitional,
використовуваним на багатьох сайтах: 1 <! DOCTYPE html PUBLIC "- // W3C
// DTD XHTML 1.0 "Http://www.w3.org/TR/xhtmLl/DTD/xhtmLl-
transitionaL.dtd"> оголошення doctype в HTML5 виглядає до смішного
просто: <! DOCTYPE html>
Помістіть його в початок документа - і з цього моменту ви
використовуєте HTML5. Звичайно, ви не зможете використовувати багато
нових елементів HTML5, які ще не підтримуються цільовими браузерами,
але документ буде перевірятися на валідність як розмітка HTML5.
У кожній версії HTML з'являється нова розмітка, але ще ніколи не було
стільки доповнень, безпосередньо пов'язаних з описом контенту.
Багато елементів HTML5 були спрощені, і для них були визначені розумніші
значення за замовчуванням. Ви вже бачили, наскільки простіше став елемент
doctype, але це далеко не єдиний приклад. наприклад, нас роками вчили, що
тег JavaScript <script> повинен визначатися таким чином:
<script language="javascript" type="text/javascript">
Але в HTML5 передбачається, що ви будете використовувати JavaScript
у всіх тегах <script>, так що ці додаткові атрибути сміливо можна опустити.
Якщо ви хочете вказати, що документ містить символи UTF-8, досить
скористатися тегом
<meta charset="UTF-8">
замість громіздкого і часто копіюємого тега:
<Meta http-equiv = "Content-Type" content = "text / htmLj charset = utf-8 ">
Інтерфейс є важливою частиною веб-додатків. Нам доводиться щодня
йти на всілякі хитрощі, щоб змусити браузери працювати так, як ми хочемо.
Щоб визначити стильове оформлення таблиці або закруглити кути,
6

доводиться використовувати бібліотеки JavaScript, або додавати масу


додаткової розмітки для застосування стилів. Завдяки HTML5 та CSS3 ця
практика стає справою минулого.
HTML5 надає в розпорядження розробника вдосконалені елементи
призначеного для користувача інтерфейсу. Протягом багатьох років
JavaScript і CSS використовували для побудови повзунків, календарів для
вибору дати і палітр для вибору кольору. У HTML5 вони стали звичайними
елементами - такими ж, як прапорці та перемикачі.
«Нові можливості веб-форм». І хоча підтримка нових елементів
реалізована ще не у всіх браузерах, про неї не варто забувати, особливо якщо
ви розробляєте веб-додатки.
Крім зручності використання, що мова не вимагає бібліотек JavaScript,
існує і інша перевага - поліпшена доступність для користувачів з фізичними
вадами. Екранні диктори та інші спеціалізовані браузери можуть реалізувати
ці елементи особливим чином, щоб з ними було зручно працювати людям з
обмеженими можливостями.
Використання нових елементів HTML5 спрощує роботу з контентом в
таких спеціалізованих програмах, як екранні диктори. Наприклад, область
навігації по сайту набагато простіше знайти, якщо ви шукаєте тег nav замість
конкретного тега div або невпорядкованого списку. Завершувачі, бічні панелі
і інші структурні елементи легко переміщуються або зовсім виключаються з
перегляду. Спрощення розбору сторінок в цілому також полегшить роботу зі
сторінкою для людей, що використовують допоміжні технології. Крім того,
можливість визначення ролей в нових атрибутах елементів допоможе
екранним дикторам працювати з ними.
Тепер для використання відео, аудіо та векторної графіки вам вже не
знадобиться Flash або Silverlight. Відеопрогравачи на базі Flash відносно
прості у використанні, але вони не працюють на мобільних пристроях Apple.
Щоб не втрачати досить значну частку ринку, необхідно навчитися
використовувати альтернативні відеотехнології, які не потребують Flash.
7

Для створення більш потужних, більш інтерактивних веб-додатків


розробники перепробували безліч різних технологій, від елементів ActiveX
до Flash. У HTML5 реалізований цілий ряд чудових можливостей, які в
багатьох випадках можуть повністю обійтися без сторонніх технологій.
Браузери не дозволяють сценаріями одного домену впливати на
сценарії іншого домену або взаємодіяти з ними. Це обмеження захищає
користувачів від міждоменних сценарних атак, які часом створюють всілякі
неприємності нічого не підозрюючим відвідувачам сайтів. Однак таке
обмеження забороняє виконання будь-яких сценаріїв, навіть якщо ми
написали їх самі і впевнені в тому, що їм можна довіряти. У HTML5 є
обхідне рішення цієї проблеми - безпечне і одночасно просто реалізоване.
У HTML5 включена підтримка технології Web Sockets, що реалізує
довгострокове підключення до сервера. Замість постійного опитування
виконавчої підсистеми для отримання інформації про хід виконання ваша
веб-сторінка підключається до сокета, а виконавча підсистема доставляє
оповіщення користувачам.
Зазвичай HTML5 розглядається як веб-технологія, але з появою
прикладних інтерфейсів (API) Web Storage і Web SQL Database з'явилася
можливість створення браузерних додатків, які зберігають всі дані на машині
клієнта.

1.2. CSS

CSS або каскадні таблиці стилів - це швидше мова розмітки. У


поєднанні з HTML, CSS дозволяє розробнику вирішувати і визначати, як веб-
сторінка або веб-сайт в кінцевому підсумку виглядатиме або як він
виглядатиме для відвідувачів веб-платформи. Деякі елементи, на які впливає
CSS, включають розмір шрифту, стиль шрифту, загальний макет, кольори та
інші елементи дизайну. Це мова розмітки, яка може застосовуватися до
декількох типів документів, включаючи звичайні XML-документи, SVG-
документи, а також XUL-документи. Для більшості веб-сайтів у всьому світі
8

CSS - це платформа, яку слід обирати, якщо їм потрібна допомога у створенні


візуально привабливих веб-сторінок.
Наприклад, тіні, що відкидаються текстом і зображеннями, надають
веб-сторінці візуальну глибину, а градієнти створюють ілюзію обсягу. CSS3
дозволяє додавати тіні і градієнти без використання фонової графіки і
додаткової розмітки. Трансформації використовуються для заокруглення
кутів, деформацій та повороту елементів.
Селектори CSS3 дозволяють легко ідентифікувати непарні і парні
рядки в таблиці, всі встановлені прапорці і навіть останній абзац в групі.
Більш складні завдання вирішуються з меншим об'ємом коду та розмітки.
Синтаксис мови дуже схожий на синтаксис HTML та XHTML, які
добре працюють при синхронізації та поєднанні один одного. Таблиці стилів,
включені в CSS, складаються з селектора та декларатора. Простий синтаксис
мови використовує кілька англомовних слів для визначення властивостей
стилю.
Використовуючи дану мову для оформлення документа, він шукає в
HTML коді потрібний елемент, наприклад, заголовок, і задає необхідну
властивість , щоб привласнити йому значення .
Мова CSS призначена для створення стилю і формування окремих
частин сторінки, створених в HTML. Так, вона здатна задавати
місцезнаходження елементів документа, висоту, стовпці та інше.

Навіщо використовувати CSS коли є простий HTML?


Справа в тому, що мова HTML може задати лише структуру вмісту
документа, в той час як CSS дає можливість відформатувати вміст сторінки,
щоб в результаті її зовнішній вигляд був більш привалбливим, зручним і
цікавим для інтернет-користувачів.
Дана мова задає стиль веб-сторінки. Це і розробка дизайну, і верстка
моделі сайту для різних пристроїв, на яких він буде показуватися. Варто
9

відзначити, що CSS допускається прописувати і як окремий файл, і в якості


одного з елементів документа.
З появою першого веб-браузера, розробникам вистачало лише мови
HTML. За допомогою нього складалася структура тексту, а функції, доступні
автору, були досить обмеженими: виділення заголовка і параграфа. Кількість
тегів теж можна було порахувати на пальцях.
Але інтернет стрімко розвивався, і число тегів для мови HTML було
суттєво збільшено - це дозволило авторам змінювати зовнішній вигляд
сторінок без втручання в їх структуру.
Почали набирати популярність такі теги структурування, як table.
Розробники браузерів теж не стояли на місці і відкривали власні теги, які
могли відображатися тільки їх додатками. Тому раніше, коли людина
відвідувала сайт, де використовуються теги для іншого браузера, він бачив
таке повідомлення: «Для перегляду сторінки скористайтеся браузером ...».
Звичайно, це приносило інтернет-користувачам масу незручностей,
тому що доводилося обзаводитися достатком браузерів і запускати їх для
певної сторінки. У зв'язку з цим було прийнято рішення про створення однієї
бази тегів форматування, для чого і створили мову CSS. Саме вона вирішила
проблему прив'язку тегів до певних браузерів.
Застосування HTML в сукупності з CSS куди краще, ніж просто HTML,
так як ви отримаєте ряд переваг:
 Детально розроблений дизайн.
 Можливість управління будь-якими документами за допомогою
єдиної таблиці.
 Доступність функції настройки відображення веб-сторінки для
всіх сучасних пристроїв, починаючи від ПК, і закінчуючи
різними гаджетами.
10

Робота над HTML5 та CSS3 триває

Специфікації ще не затверджені остаточно, а це означає, що все в них


може змінитися. Хоча в Firefox, Chrome і Safari реалізована сильна підтримка
HTML5, в разі зміни специфікації браузери теж зміняться; це може привести
до появи застарілих, непрацездатних сайтів. Наприклад, в останні роки тіні
box-shadow були виключені з CSS3 і заново додані в специфікацію, а
модифікація протоколу Web Sockets привела до повного порушення
кліентсько-серверних комунікацій.

Якщо стежити за розвитком HTML5 та CSS3 і залишатися в курсі того,


що відбувається, все буде добре.

1.3. JavaScript

JavaScript - це динамічна мова комп'ютерного програмування. Вона


легка і найчастіше використовується як частина веб-сторінок, реалізації яких
дозволяють клієнтському сценарію взаємодіяти з користувачем та
створювати динамічні сторінки. Це інтерпретована мова програмування з
об’єктно-орієнтованими можливостями призначена для створення мережево-
орієнтованих додатків, доповнює та інтегрує Java, також доповнює та
інтегрує HTML.
JavaScript спочатку був відомий як LiveScript, але Netscape змінив свою
назву на JavaScript, можливо, через хвилювання, яке створює Java. JavaScript
вперше з’явився в Netscape 2.0 у 1995 році під назвою LiveScript. Ядро мови
загального призначення було вбудовано в Netscape, Internet Explorer та інші
веб-браузери. Специфікація ECMA-262 визначила стандартну версію
основної мови JavaScript.
11

За допомогою JavaScript можна значно розширити функціонал сайту,


буквально «оживити» його, налагоджуючи таким чином зворотній зв'язок з
відвідувачем.
Варто відзначити, що скрипти JavaScript дуже компактні, але їх явно не
можна назвати легкими в написанні, якщо порівнювати з тим же HTML.
«Джава» більш складна у вивченні, а її можливості набагато більші.
Відмінність цієї мови програмування від ще одного поширеного - PHP -
в тому, що він виконується на стороні клієнта, а не сервера. А якщо бути
точніше - за допомогою його браузера. Звідси виникають і деякі ризики щодо
безпеки, але, в той же час, знижується навантаження на сервер.
У сучасній веб-розробці мова JavaScript використовується веб-
майстрами для наступних цілей:

 організація взаємодії з користувачами на веб-сторінці;


 реалізація логіки поведінки елементів веб-сторінки;
 додавання різних ефектів, особливо анімацій і графічних, а також
тих, що вимагають математичних обчислень;
 обробка даних в HTML-формах;
 взаємодія з різними HTML-елементами і CSS-стилями;

Підтримка JavaScript є у всіх сучасних браузерах, але іноді вона може


бути за замовчуванням неактивна, і тоді її потрібно увімкнути. Браузер сам
видасть в цьому випадку повідомлення, що для повноцінної взаємодії зі
сторінкою, потрібно включити підтримку скриптів.
Чудові меню, красиві галереї, інтерактивні графіки і діаграми, а також
багато інших інтерактивних елементи веб-сайтів - все це можна реалізувати
за допомогою JavaScript.
12

Клієнтський JavaScript - найпоширеніша форма мови. Файл повинен


бути включений у документ HTML або посилатися на нього, щоб код
інтерпретувався браузером.
Це означає, що веб-сторінка не повинна бути статичним HTML, але
може включати програми, які взаємодіють з користувачем, керують
браузером та динамічно створюють вміст HTML.
Клієнтський механізм JavaScript надає багато переваг перед
традиційними серверними сценаріями CGI. Наприклад, ви можете
використовувати JavaScript, щоб перевірити, чи ввів користувач правильну
адресу електронної пошти у поле форми. Код JavaScript виконується, коли
користувач подає форму, і лише якщо всі записи є дійсними, вони будуть
надіслані на веб-сервер.
JavaScript можна використовувати для захоплення ініційованих
користувачем подій, таких як клацання кнопок, навігація посиланнями та
інші дії, які користувач ініціює явно або неявно.
Все це можна об’єднати та назвати більш загальною назвою — “Front-

end” розробка. Це та частина веб-системи, що бачить користувач перед


собою та може взаємодіяти. Проте для повноцінного функціонування цього
не достатньо. Саме тому веб-розробники використовують так званий “Back-
end”.
У комп’ютерному світі термін «бекенд» означає будь-яку частину веб-
сайту або програми, яку користувачі не бачать. Він контрастує з
інтерфейсом, який відноситься до користувацького інтерфейсу програми або
веб-сайту. У термінології програмування «бекенд» є "рівнем доступу до
даних", тоді як інтерфейс - "шаром презентації".
Більшість сучасних веб-сайтів є динамічними, тобто вміст веб-сторінок
генерується на льоту. Динамічна сторінка містить один або кілька сценаріїв,
які запускаються на веб-сервері кожного разу, коли здійснюється доступ до
сторінки. Ці скрипти генерують вміст сторінки, який надсилається у веб-
13

браузер користувача. Все, що відбувається до того, як сторінка


відображається у веб-браузері, є частиною бекенда.

Приклади внутрішніх процесів включають:

o обробка вхідного запиту веб-сторінки


o запуск скрипта (PHP, ASP, JSP тощо) для генерації HTML
o доступ до даних, наприклад статті, з бази даних за допомогою
запитів SQL
o зберігання або оновлення записів у базі даних
o шифрування та дешифрування даних
o обробка файлів і завантажень файлів
«Бекенд» і інтерфейс працюють разом, щоб створити повний інтерфейс
користувача. Дані, що генеруються у серверній системі, передаються
інтерфейсу та представляються користувачеві. У той час як деякі організації
мають окремі команди з розробки та інтерфейсу, лінія між двома шарами
рідко буває чорно-білою.
Для того щоб створити бекенд необхідні інші мови програмування,
відмінні від тих, що використовуються для створення фронтенду. Вони вже
будуть більш об’єктно орієнтованими та логічно завершеними.

1.4. PHP

PHP - мова програмування, що використовується на стороні WEB-


сервера для динамічної генерації HTML-сторінок. Про це говорить і
розшифровка його назви: PHP - Personal HyperText Processor.
У PHP дуже незвичайна історія в порівнянні з іншими мовами. PHP
спочатку не була мовою програмування і не збиралась ставати такою. У 1995
році Расмус Лердорф створив набір скриптів на Perl (обробляє шаблони
HTML-документів) для висновку і обліку відвідувачів його онлайн-резюме.
Лердорф назвав набір Personal Home Page (Особиста Домашня Сторінка). Ці
14

скрипти були мовою програмування: їх єдиним завданням було обробити


шаблон і сформувати HTML сторінку.
Потім поточної функціональності стало недостатньо і Расмус розробив
наступну версію шаблонізатора, попутно переписавши скрипти з Perl на Сі. З
цього моменту PHP став схожим сам на себе. Його популярність росла, він
почав використовуватися на безлічі сайтів в мережі, а до проекту стали
підключатися нові розробники. PHP став найпопулярнішою мовою для веб-
розробки, залишивши всі інші далеко позаду.
PHP - одна з небагатьох мов програмування, створених спеціально для
розробки веб-додатків. Тому він включає в себе всі функції, необхідні саме
для роботи на веб-сервері, і при цьому позбавлений надмірності, властивої
багатьом його конкурентам.
Дуже приємна особливість PHP - те, що його команди включаються в
звичайні HTML-сторінки за допомогою спеціальних тегів, які і примушують
PHP-машину виконувати на сервері потрібні дії. Програмам на PHP не
потрібні спеціальні CGI-директорії з особливими правами доступу. Більш
того, на одній сторінці можна довільно чергувати "простий" HTML і PHP-
код.
PHP не залежить від платформи. PHP добре інтегрується в усі
популярні веб-сервери: Apacce і IIS, Zens і Netscape Enterprise Server, працює
під Windows і OS / 2, MacOS і практично зі всіма UNIX-подібними
системами. Як наслідок - PHP працює практично у всіх хостерів, які
дозволяють власні виконувані скрипти.
Чудова особливість PHP - його інтегрованість практично з усіма
сучасними інтернет-технологіями. PHP підтримує більшість сучасних веб-
протоколів: IMAP, FTP, POP, XML, SNMP і інші. PHP прекрасно працює з
базами даних. Важко знайти СУБД, підтримка якої не була б реалізована в
PHP. MySQL і MS SQL Server, PostgreSQL та Oracle, Sybase і Interbase .
SQL (мова структурованих запитів) - це мова спеціального
призначення, розроблена для роботи з реляційними базами даних. Більш
15

конкретно, він використовується для управління даними в цих базах даних та


керування ними. Хоча SQL не буде використовуватися для написання
наступної великої веб-програми, це корисно у взаємодії з базою даних, яка
буде працювати над цим додатком. Наприклад, Twitter - без даних
користувача, твітів та асоціацій, що підписуються на послідовників, які
зберігаються в базі даних, програми не існувало б.
Один тільки перелік баз даних, підтримуваних PHP, займе, напевно,
цілий екран.
PHP включає в себе величезну кількість вбудованих функцій: обробки
рядків і масивів, роботи з файловою системою і з HTTP, електронної
поштою, датою і часом, кирилицею та іншими національними алфавітами.
Завдяки їм багато алгоритмів, що вимагають в більшості мов написання
програмного коду розміром в декілька екранів, реалізуються на PHP однією
командою.
Сучасні тенденції розвитку мов програмування не обійшли стороною і
PHP. Засоби об'єктно-орієнтованого програмування з'явилися ще в PHP3. А в
об'єктної моделі PHP4 в повному обсязі реалізовані класичні поняття
об'єктно-орієнтованого програмування: успадкування, інкапсуляція і
поліморфізм.
Треба сказати, що більшість позитивних сторін PHP і так відомі
програмістам. Ось перелік переваг, які роблять широко викристовуваним у
веб-розробці:

 вивчення PHP не вимагає багато часу. Це одночасно і плюс, і


мінус. Адже дуже докладне знання вимагає практики.;
 кроссплатформеність - PHP може бути запущений в будь-якій
операційній системі, включаючи юніксоїди;
 підтримка веб-серверів.
 безкоштовне розповсюдження.
16

 має достатню довільність для web-розробки. Звичайно, такі


базові мови, як C-сімейство, працюють швидше, але для
інтернету це не критично;
 наявність навчальних матеріалів. широкої використовуваного
мови.
 безперервний розвиток.

1.5. Java

Java є найпопулярнішою у світі мовою програмування - і це недарма.


Java не тільки надзвичайно універсальна (її використання охоплює від
смартфонів до смарт-карт); він також використовується розробниками вже
більше 20 років.
Що робить Java настільки універсальним, це віртуальна машина Java
(JVM). У багатьох мовах розробки компіляція програми створює код, який
може працювати по-різному, якщо комп’ютери, на яких він працює, різні.
Для Java це не проблема через JVM. Віртуальна машина Java діє як середній
шар, який може запускати код на будь-якому комп'ютері, незалежно від того,
де згаданий код був скомпільований.
Хоча Java надзвичайно популярна серед розробників програмного
забезпечення для настільних ПК та бізнесу, вона менш зручна для
початківців, ніж така мова, як Python. Це тому, що воно багатослівне і
вимагає більше коду для побудови функцій; як результат, це менш корисно
для тих, хто тільки починає.
Тим не менш, давня популярність та різноманітне використання Java
означає, що її спільнота велика. Отже, будь-які запитання щодо мови,
ймовірно, матимуть теми форуму та онлайн-підручники, присвячені відповіді
на неї.
17

То які основні переваги Java?


Простота - Java використовується розробниками більше 20 років і
вважається однією з найпростіших для вивчення мов завдяки менш
неоднозначній синтаксичній термінології, похідній від C ++. Той, хто знає
основоположні принципи програмування, може швидко навчитися і одразу
почати користуватися Java.
Кросплатформенність - являючись об'єктно-орієнтованою
компільованою мовою, Java дозволяє писати код один раз і запускати його де
завгодно на будь-якій платформі (Windows, Mac OS та Linux), що робить її
ідеальним вибором для розробки мобільних додатків, веб-розробки,
підключення баз даних, мереж , та багато іншого.
Багатопотоковість - Java використовує багатопотоковий веб-сервер,
який обробляє кожен запит в окремому потоці. Це дозволяє виконувати
кілька завдань одночасно без запиту подій.
Багатопотокова обробка робить Java чудовим інструментом для
додатків, що вимагають великих процесорів, таких як потокове відео,
редагування зображень тощо
Безпека - Про Java кажуть, що вона більш безпечна, ніж будь-яка інша
мова програмування. Її безпека забезпечується завдяки великому набору API,
інструментів та реалізацій загальновживаних алгоритмів, механізмів та
протоколів безпеки. API Java включають криптографію, інфраструктуру
відкритих ключів, захищений зв’язок, автентифікацію та контроль доступу.
Спочатку JDK був розроблений з сильним акцентом на безпеку, що дозволяє
створювати безпечні програми з самого початку.
Бібліотеки з відкритим кодом - Існує велика кількість бібліотек Java
різного призначення: ведення журналів, аналіз JSON, модульне тестування,
бібліотеки синтаксичного аналізу XML та HTML, обмін повідомленнями,
бібліотеки читання PDF та Excel
18

Криптографічні бібліотеки та багато іншого - більшість бібліотек Java є


відкритими і підтримуються досвідченими розробниками Java. Використання
таких бібліотек значно прискорює внутрішнє програмування веб-програм.
Випадки використання Java:
1 - Java стала універсальною мовою програмування як для клієнтських,
так і для серверних додатків, веб - і мобільних додатків. Java переважно
використовується для розробки корпоративних додатків та додатків для
криптовалют завдяки своїм характеристикам безпеки та масштабованості.
2 - Java також чудово підходить для розробки рішень IoT, розробки
електронної комерції та додатків Big Data. І це основна мова, яка
використовується для розробки додатків для Android.

1.6. Python

Історія розвитку мови Python починається з 1990 року. Розробляти нову


мову почав Гвідо ван Россум, який на той момент працював в
нідерландському інституті CWI. У цьому інституті велася розробка мови
ABC. Мова ABC повинна була замінити Basic і призначалася для навчання
студентів програмуванню.
У проекту не було ніякого бюджету. Тим не менш інтерпретатор мови
був написаний за декілька тижнів в домашніх умовах. Робота над мовою
велася у вихідні дні.
Для розробки мови Гвідо запозичив ідеї з безлічі інших мов
програмування. Але в основні ідеї були запозичені з мов програмування C і
ABC
При розробці веб-додатків Python, в основному використовується для
обробки бек-енд і маршрутизації, де в ролі конкурентів у нього PHP і Ruby.
Веб-сторінки все одно необхідно відображати з використанням HTML і CSS,
а функціональна частина фронтендів як і раніше виконується на JavaScript.
Python можна використовувати для створення веб-додатків на стороні
сервера. Незважаючи на те, що веб-фреймворк не потрібен для створення
19

веб-програм, рідко розробники не використовують існуючі бібліотеки з


відкритим кодом, щоб пришвидшити свій прогрес у спрацьовуванні своїх
додатків.
Python не використовується у веб-браузері. Мовою, яка виконується у
таких браузерах, як Chrome, Firefox та Internet Explorer, є JavaScript. Такі
проекти, як pyjs, можна компілювати з Python в JavaScript. Однак більшість
розробників Python пишуть свої веб-програми, використовуючи комбінацію
Python та JavaScript. Python виконується на стороні сервера, а JavaScript
завантажується в клієнт і запускається веб-браузером.
На внутрішній стороні веб-програми Python є три загальні компоненти
(шари):
o Веб-сервер (наприклад, Apache / Nginx)
o Сервер додатків WSGI (наприклад, Gunicorn / uWSGI)
o Фреймворк веб-додатків (наприклад, Django / Flask)

1 - Веб-серверний рівень
Перш за все, нам потрібен веб-сервер, щоб отримувати HTTP-запити та
надсилати відповіді, що містять код стану та інший вміст, такий як HTML,
XML або JSON. Існує безліч реалізацій веб-серверів, придатних для веб-
служби Python. Враховуючи простоту використання, стабільність, безпеку,
частку ринку та інші проблеми, Apache та Nginx є найбільш популярними.
HTTP-сервер Apache є найбільш поширеним веб-сервером в Інтернеті
впродовж 20+ років. Nginx - другий за частотою використання сервер для 100
000 веб-сайтів.
2 - Рівень WSGI Server
Традиційний веб-сервер не розуміє або не може запустити програми
Python. Тому спільнота Python придумала WSGI як стандартний інтерфейс,
який можуть реалізувати модулі та контейнери. Зараз WSGI є
загальновизнаним підходом до запуску веб-додатків Python на веб-серверах.
20

Оскільки WSGI - це лише стандартний інтерфейс, існують також різні


реалізації бази сервера WSGI, які допомагають додаткам Python взаємодіяти з
веб-серверами. Gunicorn та uWSGI - два найпопулярніші сервери WSGI.
Хороший сервер WSGI має дві основні переваги:
Обширна область застосування:
WSGI робить три рівні веб-сервера Python низьким рівнем зв'язку. Це
відокремило б вибір фреймворків програм від вибору веб-серверів, що
дозволило б розробникам вибрати пару, яка їм підходить, а розробникам
фреймворків та серверам зосередити увагу на бажаній галузі спеціалізації.
Насправді байдуже, що ми використовували для побудови нашого веб-
додатку - поки з ним можна взаємодіяти за допомогою інтерфейсу WSGI.
Обслуговування тисяч запитів на динамічний контент одночасно є
сферою діяльності серверів WSGI, а не фреймворків. Сервери WSGI
обробляють запити на обробку з веб-сервера та вирішують, як передавати ці
запити до процесу програми додатків. Поділ відповідальності важливий для
ефективного масштабування веб-трафіку.
Підводячи підсумок, сервер WSGI опікується всім, що відбувається між
веб-сервером та веб-додатком. Таким чином, при кодуванні програми Python
не має необхідності знаходити рішення для:
Спілкування з декількома веб-серверами
Реагування на безліч веб-запитів одночасно та розподіл навантаження
Підтримка запуску декількох процесів веб-програми
3 - Фреймворк рівня веб-додатків
Структура веб-додатків Python значно полегшує процес розробки
додатків. Фреймворк реалізує загальні проблеми для веб-додатків (такі як
система шаблонів, системи ORM (Object Relational Mapping), автентифікація
користувачів, адміністрування вмісту, карти сайтів, RSS-канали та багато
інших завдань), і нам просто потрібно розвивати свою комерційну логіку це.
Існує також багато фреймворків для веб-розробки Python. Такі як
Django, Flask та Tornado.
21

Все більше веб-сайтів вибирають Python для веб-розробки. Внутрішня


структура веб-програми Python чітка, і низькі зв'язки та розробка в Python
можуть заощадити розробникам багато часу.

1.7. Ruby

Ruby - динамічна, рефлективна, високорівнева мова програмування для


швидкого і зручного об'єктно-орієнтованого програмування. Мова має
незалежну від операційної системи реалізацією багатопоточності, сувороу
динамічну типізацію, складальник сміття і багато інших можливостей. Ruby
близький за особливостями синтаксису до мов Perl і Eiffel, по об'єктно-
орієнтованому підходу - до Smalltalk. Також деякі риси мови взяті з Python,
Lisp, Dylan і Клу. Кроссплатформенна реалізація інтерпретатора мови є
повністю вільною.
Творець Ruby - Юкіхіро Мацумото - цікавився мовами програмування,
ще будучи студентом, але ідея про розробку нової мови з'явилася пізніше.
Ruby почав розроблятися 23 лютого 1993 року і вийшов у світ в 1995 році.
Метою розробки було створення «справжнього об'єктно-
орієнтованого», легкої в розробці, інтерпретуємої мови програмування.
В Японії Ruby став популярним з моменту появи першої
загальнодоступної версії в 1995 році, проте наявність документації тільки на
японській мові стримувало його подальше поширення. Лише в 1997 році
з'явився опис Ruby англійською мовою, а в 1998 році відкрився форум «ruby-
talk». Це поклало початок росту популярності мови в іншому світі.
Ruby - мова програмування загального призначення. Тобто вона може
бути використана для вирішення різних завдань в різних галузях. Проте у
Ruby є ніша, в якій нею користуються найчастіше - це веб-розробка.
Можливості Ruby
 Має лаконічний і простий синтаксис, частково розроблений під
впливом Python.
22

 Дозволяє обробляти виключення в стилі Java і Python


 Повністю об'єктно-орієнтована мова програмування.
 Підтримує замикання з повною прив'язкою до змінних.
 Цілі змінні в Ruby автоматично конвертуються між типами Fixnum і
Bignum в залежності від їх значення, що дозволяє виробляти
цілочисельні математичні розрахунки з великою швидкістю.
 Не вимагає попереднього оголошення змінних.

Так як Ruby - скриптова мова, то його можна застосовувати взагалі в


будь-яких сферах розробки. Наприклад, можна написати парсер сторінок,
який буде знаходити на сайті інтернет-магазину всі картки товарів і
завантажувати їх назву, ціну та фото. Або можна зробити генератор складних
паролів для всіх відвідувачів сайту, щоб їм не доводилося вигадувати його
самостійно.
Також на Ruby пишуть мобільні ігри та програми під Android та iOS,
використовуючи Ruboto або RubyMotion.
Але найкраще Ruby працює в парі зі своїм знаменитим фреймворком -
Ruby on Rails, для створення веб-додатків. Цей фреймворк був представлений
в 2005 році, це вплинуло на веб-розробку в цілому та на інші фреймворки, він
дозволяє швидко створити сайт зі складною структурою, динамічними
сторінками і при цьому обійтися без вивчення SQL-запитів і роботи з базами
даних.
У «рейках» реалізовані інноваційні можливості, включаючи безшовну
інтеграцію з базою даних, міграції, створення уявлень для прискорення
розробки. Ці можливості пізніше були впроваджені в інших фреймворках,
включаючи Django, Laravel і Phoenix.
Ruby on Rails одним з перших почав використовувати схему поділу
компонентів додатка Model-View-Controller (MVC), яка значно прискорює
цикл розробки і дозволяє оперативно виправляти помилки, швидко
реалізовувати бізнес-вимоги в проекті і вносити в них зміни.
23

Коли ведеться робота з базою даних, наприклад з Postgresql, Active


Record (ORM, використовувана Ruby on Rails) дозволяє абстрагуватися від
поточної БД на більш високих рівнях. Це дає можливість писати практично
однаковий код під будь-яку підтримувану базу даних. Фреймворк працює з
усіма популярними SQL-базами даних, завдяки чому можна зосередитися на
реалізації бізнес-задач, а не займатися написанням величезної кількості
низькорівневих SQL-команд.
24

Висновок

Через те, що в наш час Інтернет став для нас невід’ємною частиною
життя, а Веб-сайти, як, найбільша частина інтернет-ресурсів заполонили
Всесвітню павутину, вона стрімко розвивалась та різні мови програмування
стали поєднуватися один з одною, тому зараз доволі складно створити сайт
лише на одній мові програмування, взагалі-то, це, можливо, але якщо ви
бажаєте створити дійсно гарний ресурс, вам знадобиться поєднання різних
мов програмування.
Інтерфейс (frontend) - це частина веб-сайту чи програми, яку бачать
клієнти та взаємодіють з нею. Задня частина (backend) - це механізм, що
стоїть за цим інтерфейсом, що дозволяє перевіряти дані, обробляти та
зберігати дані. Неможливо створити повноцінний веб-сайт без інтерфейсу
або без бекенда, оскільки це дві частини одного цілого.
Тому, яку мови вивчати залежить від того, що саме ви бажаєте
розробляти Front-end або ж BackEnd, якщо ви хочете працювати лише з
зовнішнім виглядом сайту, ідеальними варіантами для вас стануть поєднання
мов HTML, CSS, та елементи JavaScript, які в сукупності дадуть гарний
зовнішній вигляд вашого сайту. А якщо ж ви хочете розробляти сайти
повноцінно, їх функіцонал, логіку опрацювання дій користувача, то вам
потрібно володіти такими мовами як Java, PHP, Ruby, Python або іншими
наявними мовами, це все залежить від вас!
25

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ


1. Jesse, Russell Ховард, Дуайт / Jesse Russell. - М.: VSD, 2012.
- 158 c.

2. Айзенменгер, Р. HTML 3.2/4.0. Справочник / Р. Айзенменгер. -


М.: Бином, 2018. - 368 c.
3. Браун, Итан Веб-разработка с применением Node и Express.
Полноценное использование стека JavaScript / Итан Браун. - М.: Питер, 2017.
- 336 c.
4. Будилов, В. Основы программирования для Интернета / В.
Будилов. - М.: БХВ-Петербург, 2008. - 736 c.
5. Дебольт HTML и CSS. Совместное использование / Дебольт,
Вирджиния. - М.: НТ Пресс, 2006. - 512 c.
6. Дунаев, Вадим HTML, скрипты и стили Уцененный товар (№1) /
Вадим Дунаев. - М.: БХВ-Петербург, 2015. - 816 c.
7. Закарян, И. Что такое Internet, www и html. Первое знакомство /
И. Закарян, В Рафалович,. - М.: ИНФРА-М, 2011. - 212 c.
8. Кент, П. Поисковая оптимизация для чайников / П. Кент. - М.:
Диалектика / Вильямс, 2011. - 938 c.
9. Кисленко, Н.П. HTML. Самое необходимое / Н.П. Кисленко. - М.:
БХВ-Петербург, 2008. - 352 c.
10. Кисленко, Николай HTML. Самое необходимое / Николай
Кисленко. - М.: БХВ-Петербург, 2008. - 356 c.
11. Левин, А. Создаем сайт быстро и качественно / А. Левин. - М.:
Питер, 2012. - 240 c.
12. Лоусон, Б. Изучаем HTML5. Библиотека специалиста / Б. Лоусон,
Р. Шарп. - М.: Питер, 2012. - 304 c.
13. Петюшкин, А. HTML экспресс-курс / А. Петюшкин. - М.: СПб:
БХВ-Петербург, 2012. - 250 c.
14. Филиппов, В. А. Электронные хранилища информации и WEB-
26

технологии / В.А. Филиппов. - М.: Едиториал УРСС, 2018. - 603 c.


15. Фрейен, Бен HTML5 и CSS3.Разработка сайтов для любых
браузеров и устройств / Бен Фрейен. - М.: Питер, 2014. - 304 c.
16. Чебыкин, Ростислав Самоучитель HTML и CSS. Современные
технологии / Ростислав Чебыкин. - Москва: ИЛ, 2008. - 624 c.
17. Эспозито, Дино Разработка приложений для Windows 8 на HTML5
и JavaScript / Дино Эспозито. - М.: Питер, 2014. - 209 c.
18. Поллок, Дж. JavaScript. Руководство разработчика / Дж. Поллок. -
М.: Питер, 2011. - 274 c.
19. Ллойд, Йен Создай свой веб-сайт с помощью HTML и CSS / Йен
Ллойд. - М.: Питер, 2013. - 496 c.
20. Программирование на языке Java. - М.: Мультимедиа Технологии и
Дистанционное Обучение, 2004. - 416 c.
21. Уэсли, Дж. Чан Python. Создание приложений / Уэсли Дж. Чан. -
М.: Вильямс, 2015. - 816 c.
22. Даниленко Л. И. Введение в системы баз данных / Л. И. Даниленко.
– Київ: Логос, 2000. – 848 с. 55
23. Пасмор Ю. Інформаційне забезпеченння: соціальнокомунікативний
аспект : монографія / Ю.Пасмор. – Харків : Юрайт, 2013. – 272 с.
24. Чубукова Г. Основы правовой информатики / Г. Чубукова, Д.
Элькин. – Киев : Диалог-МИФИ, 2004. – 148 с.

You might also like