Кожен, хто дружить з логікою, інформатикою та математикою, непогано знає англійську, має розвинене системне мислення, здатний дійти до основної мети, розплутати ланцюжка, знайти причини, хто добивається результату і радіє своїм перемогам, зможе опанувати непростою творчою професією сучасного програміста.
З'являються нові засоби програмування відповідно до вимог сучасної техніки, перспективних моделей, якихось проривних технологічних досягнень, а інші розвиваються, доповнюються або ж перестають використовуватися.
Познайомимося, мабуть, з першими затребуваними і перевіреними в часі і допрацьовувати способами програмування задач в моделі "клієнт-сервер", на якій працює інтернет. Майже всі розроблені сайти, веб-додатки, а також частково соціальні мережі ВК і Facebook написані за допомогою HTML + CSS + PHP + JavaScript.
Розмітка тексту HTML
Сервером у всесвітній павутині вважається постійно підключений до мережі, з працюючою на ньому спеціалізованою програмою (веб-сервером), комп'ютер.
На mainframe розміщуються сайти, виконуються запити, обробляється і надається інформація, запускаються процеси, зазначені клієнтом. Це як бібліотека з книгами або інтернет-сайтами (безліч Web-вузлів), де є сторінки книг (Web-сторінки).
Будь-ПК, включений в мережі з браузером, що відсилає запити і приймає відомості, є клієнтом. Браузер забезпечує обмін інформацією з веб-сервером, обробляє отриманий гіпертекст, відображає на екрані знайдену сторінку для користувача.
Для розуміння принципів створення Web-сторінок необхідно класифікувати елементи документів, отримувати їх правильні відображення в браузері на основі HTML.
HTML - мова розмітки тексту. Він зароджувався і придумувався з 1986 року для зберігання, обміну та структурування наукових даних в формах і таблицях, щоб наочно їх переглядати. а оформився в самостійний в 1991 році.
Популярною основою для складання і публікації веб-сторінок став HTML тому, що досить простий, легко реалізується і освоюється.
З ростом потреб в мережі (звуку, картинок, діаграм, мобільності) доповнюється розмітка функціями оформлення (CSS), Виходить версія HTML 5.
Стандарт CSS (каскадні таблиці стилів) розширює можливості HTML, полегшує створення красивих сторінок, задає стиль, колір, параметри шрифту, анімацію.
У фіксованих текстових даних різниться стилістична розмітка, структурна і семантична. Основні поняття розмітки - теги, елементи і атрибути. Вони показують, що в матеріалі є заголовком, яка частина буде підзаголовком, що визначається ім'ям автора, і використовуються для індексації документів пошуковими серверами.HTML-файл структурований і має обов'язкові з певними заздалегідь іменами елементи:
- Теги та, що відзначають початок і кінець документа.
- Тема, оформлений тегами і ,
в ньому з елементом і визначають назву форми, що описує його вміст з 5-6 слів.
- Тіло, обмежене тегами і .
Два тега і шматочок файлу, укладений між ними, утворюють блок або елемент НTML. Багато теги мають один або кілька параметрів, що визначають обробку браузерoм цього тега. Інші подробиці і нюанси впізнаються при конкретному вивченні даної розмітки.
Будівельним матеріалом для веб-сторінок є комбінації розмітки. Браузер читаючи спеціальні теги будує в вікні сторінку з картинками і текстом, а CSS оформляє зовнішні дизайнерські знахідки.
серверний PHP
НTML і CSS достатні для розробки статичного сайту без відповідної зв'язку з користувачами. PHP це мова, на якому пишуться сценарії і логіка, генеруючі html сторінки. Для динамічних інтернет-сторінок особливість полягає в тому, що окремі частини зберігаються в різних файлах і БД. Запитувана користувачем веб-сторінка генерується в ході виконання скриптів.
Для створення веб-додатків, динамічних сайтів, сервісів використовується інтерпретована мова PHP, взаємодіє з сервером. На ньому можна писати для різних платформ, все рядки програми виконуються інтерпретатором. Близько 60% веб серверів працюють на PHP.
У 1995 році Personal Home Page після переробки на Сі виділився як окремий проект з аналізатором коду команд і утилітами лічильника відвідувань, з можливостями обробки html-форми і вбудовування в html з'єднання. Пізніше в удосконаленому PHP 3.0
з підтримкою ООП з'явилися властивості для взаємодії з БД, роботи з неоднаковими протоколами, розширення ядра, додавання модулів. Мова розвивається і вдосконалюється постійно. Версія PHP5 усуває недоліки в створенні ООМ (моделі) мови.
Основне застосування Hypertext Preprocessor:
- На сервері розробка скриптів і додатків.
- Виконання через командний рядок скрипта сценарію на комп'ютері з інтерпретатором.
- Програмування додатків (графічних інтерфейсів) на стороні клієнта.
Особливостями його широкого використання є:
- PHP підтримується на різнорідних mainframе, у багатьох ОС, на всіх відомих платформах.
- Вивчається легко, спочатку освоюють синтаксис, побудова принципів роботи, з досвідом купуються навички ООП.
- Його код може впроваджуватися прямо в HTML або перемикатися назад на PHP-режим.
- Висока швидкодія.
- Можлива взаємодія між різними мовами при конструюванні інтерактивних HTML-сторінок.
- Можна вибрати звичний стиль програмування: об'єктний або процедурний.
Від початкового варіанта можливості сучасного PHP зробили крок далеко, можна створювати PDF-файли, малюнки, флеш-ролики. Тепер є підтримка багатьох БД, функції для тексту будь-якого формату, для дій в файлової системі. Рhр взаємодіє через узгоджені протоколи передачі і доступу з різними сервісами інтернету.
Схожі і різні
Між PHP і HTML знайдуться спільні властивості:
- Код html сторінки генерує виконання функцій PHP, как-будто думка реалізує інформативний матеріал.
- PHP і HTML використовуються програмістами для створення сервісів, додатків, веб-сайтів.
- За своїм призначеним завданням обидві мови достатньо швидко освоюються.
- У деяких ситуаціях одне поняття замінює інше, існує взаємна доповнюваність.
- Присутні стандарти або стилі (іноді угоди) при написанні програм, що приймаються при складному проекті.
Ці джерела різного рівня і призначення, у кожного своя ніша, є зручні для певних цілей інструменти. Відмінні особливості:
- На одному html форму від сайту не відправиш, на ньому майже не робиться сайтів, тільки листівки і сайти-візитки.
- Для написання, перегляду, контролю коду html досить на комп'ютері редактора і браузера.
- Для отримання повної інформації на динамічній сторінці треба використовувати серверне програмування php, чимось схоже на гнучкий клей-конструктор.
- Для написання, налагодження серверної частини в php знадобляться додатково до перерахованого в п. 2 ще сам PHP, а також web-сервер.
Будь-яке додаток або програма пишеться програмістом, на обраному їм мовою. Будь-який з варіантів не має всіх можливостей на ймовірні ситуації і моменти. При виборі насамперед розбирають і розуміють в абстрактних образах наступне: як працює модель для мережі, вивчають загальні принципи програмування і об'єктно-орієнтованого аналізу, структури і вимоги до зберігання та передачі даних та інші елементи.
Від складності проекту або завдання залежить трудомісткість багатоетапного процесу розробки клієнтської і серверної частин програм. При створенні різних проектів слід враховувати, що підходи і методи працюють за кількома сотнями рядків і до декількох десятків ситуацій стану системи значно різняться в конструкціях на величезній кількості станів і рядків.У сучасному веб-програмуванні великих проектів функціонально поділяють програмістів на верстальників, frontend, backend і fullstack-розробників.
Основи HTML + CSS потрібно знати всім, хто працює з програмами в Інтернеті. Високий рівень frontend-розробник повинен розбиратися у всіх мовах, але PHP більше затребуваний для backend (апаратно-програмні засоби для реалізації логіки роботи сайту).
Знання, вміння, мистецтво програміста краще освоюються, коли пройдуть через нерозуміння, через помилки, через набуття досвіду. У програмуванні немає однієї доріжки, потрібно вибрати відповідний шлях, вивчити технології, рухатися до мети.