Співбесіда по java ee - web (питання і відповіді)

Загальні питання та відповіді по web в розділі Java Enterprise Edition.

1. Що таке www?

Всесвітня павутина (англ. World Wide Web) - розподілена система, що надає доступ до пов'язаних між собою документів, розташованим на різних комп'ютерах, підключених до Інтернету. Для позначення Всесвітньої павутини також використовують слово веб (англ. Web «павутина») і абревіатуру WWW.

2. Що таке w3c?

3. Що таке TCP / IP?

Стек протоколів TCP / IP - набір мережевих протоколів передачі даних, що використовуються в мережах, включаючи мережу Інтернет. Назва TCP / IP відбувається з двох найважливіших протоколів сімейства - Transmission Control Protocol (TCP) і Internet Protocol (IP), які були розроблені і описані першими в даному стандарті.

Стек протоколів TCP / IP включає в себе чотири рівні:

  • прикладний рівень (application layer),
  • транспортний рівень (transport layer),
  • мережевий рівень (Internet layer),
  • канальний рівень (link layer).

4. Що таке ftp?

FTP (англ. File Transfer Protocol - протокол передачі файлів) - стандартний протокол, призначений для передачі файлів по TCP-мереж (наприклад, Інтернет). Використовує 21-й порт. FTP часто використовується для завантаження веб-сторінок та інших документів з приватного пристрої розробки на відкриті сервера хостингу.

Протокол побудований на архітектурі «клієнт-сервер» і використовує різні мережеві з'єднання для передачі команд і даних між клієнтом і сервером. Користувачі FTP можуть пройти аутентифікацію, передаючи логін і пароль відкритим текстом, або ж, якщо це дозволено на сервері, вони можуть підключитися анонімно. Можна використовувати протокол SSH для безпечної передачі, що приховує (що шифрує) логін і пароль, а також шифрувальної вміст.

5. Чим відрізняються http і https?

HTTP (англ. HyperText Transfer Protocol - «протокол передачі гіпертексту») - протокол прикладного рівня передачі даних (спочатку - у вигляді гіпертекстових документів в форматі HTML, зараз використовується для передачі довільних даних). Основою HTTP є технологія «клієнт-сервер», тобто передбачається існування споживачів (клієнтів), які ініціюють з'єднання і надсилають запит, і постачальників (серверів), які очікують з'єднання для отримання запиту, виробляють необхідні дії і повертають назад повідомлення з результатом.

HTTPS (аббр. Від англ. HyperText Transfer Protocol Secure) - розширення протоколу HTTP, що підтримує шифрування. Дані, що передаються по протоколу HTTPS, «упаковуються» в криптографічний протокол SSL або TLS. На відміну від HTTP, для HTTPS за замовчуванням використовується TCP-порт 443.

HTTPS - не самостійна протокол передачі даних, а HTTP з надбудовою шифрування. У цьому ключове і єдина відмінність.

6. Що таке протокол передачі даних, які ви знаєте?

Протокол передачі даних - набір угод інтерфейсу логічного рівня, які визначають обмін даними між різними програмами.

Приклади мережевих протоколів
TCP / IP - набір протоколів передачі даних, який отримав назву від двох належних йому протоколів: TCP (Transmission Control Protocol) і IP (Internet Protocol)

Найбільш відомі протоколи, використовувані в мережі Інтернет:

HTTP (Hyper Text Transfer Protocol) - це протокол передачі гіпертексту. Протокол HTTP використовується при пересиланні Web-сторінок між комп'ютерами, підключеними до однієї мережі.
FTP (File Transfer Protocol) - це протокол передачі файлів зі спеціального файлового сервера на комп'ютер користувача. FTP дає можливість абоненту обмінюватися двійковими і текстовими файлами з будь-яким комп'ютером мережі. Встановивши зв'язок з віддаленим комп'ютером, користувач може скопіювати файл з віддаленого комп'ютера на свій або скопіювати файл зі свого комп'ютера на віддалений.
POP (Post Office Protocol) - це стандартний протокол поштового з'єднання. Сервери POP обробляють вхідну пошту, а протокол POP призначений для обробки запитів на отримання пошти від клієнтських поштових програм.
SMTP (Simple Mail Transfer Protocol) - протокол, який задає набір правил для передачі пошти. Сервер SMTP повертає або підтвердження про прийом, або повідомлення про помилку, або може вимагати додаткової інформації.
TELNET - це протокол віддаленого доступу. TELNET дає можливість абоненту працювати про всяк ЕОМ знаходиться з ним в одній мережі, як на своїй власній, тобто запускати програми, змінювати режим роботи і так далі. На практиці можливості обмежуються тим рівнем доступу, який заданий адміністратором віддаленої машини.

7. Що таке web server?

Веб-сервер - сервер, що приймає HTTP-запити від клієнтів, зазвичай веб-браузерів, і видає їм HTTP-відповіді, як правило, разом з HTML-сторінкою, зображенням, файлом, медіа-потоком або іншими даними.

Веб-сервером називають як програмне забезпечення, яке виконує функції веб-сервера, так і безпосередньо комп'ютер (див. Сервер (апаратне забезпечення)), на якому це програмне забезпечення працює.

8. Що таке web додаток?

Веб-додаток - клієнт-серверний додаток, в якому клієнтом виступає браузер, а сервером - веб-сервер. Логіка веб-додатки розподілена між сервером і клієнтом, зберігання даних здійснюється, переважно, на сервері, обмін інформацією відбувається по мережі.

9. Що таке application server?

Сервер додатків (англ. Application server) - це програмна платформа (фреймворк), призначена для ефективного виконання процедур (програм, скриптів), на яких побудовані додатки. Сервер додатків діє як набір компонентів, доступних розробнику програмного забезпечення через API (інтерфейс прикладного програмування), певний самої платформою.

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

10. Чим відрізняються web server і application server?

Сервер додатків (англ. Application server) - сервер, виконуючий деякі прикладні програми. Сервер-додатків - об'єкт, який обробляє запити, пов'язані з додатками, точніше для виконання прикладних процесів (вибірка даних, пошук даних, робота з терміналами). За ідеєю ця технологія спочатку взагалі не була пов'язана з Web'om, однак, зараз частіше говорять сервер web додатків. Практично використовується для роботи з базами даних.

Веб-сервер - це сервер, що приймає HTTP-запити від клієнтів, зазвичай веб-браузерів, і видає їм HTTP-відповіді. Web-сервер - об'єкт, який обробляє запити, зокрема http-запити. Браузер в даному випадку клієнт, який робить запити (POST, GET).

11. Які методи передачі даних ви знаєте?

Основними є методи POST і GET.

12. Чим відрізняються методи get і post?

Метод GET.
Метод GET зручний тим, що простий в експлуатації. Але у нього є недоліки. По-перше, методом GET не можна передавати великі обсяги інформації, тому що передача даних цим методом входять до складу URL, довжина якої обмежена. Так як дані, що передаються методом GET входять до складу URL документа, їх може підглянути будь-який бажаючий. У цього є переваги і недоліки. Перевага полягає в тому, що можна послати посилання разом з даними одного. Недолік у тому, що в рядку браузера відображається і ваш, тільки що введений пароль. Це одна з причин, чому дані, що представляють цінність, завжди потрібно передавати методом POST.

Метод POST.
Як і метод GET, метод POST служить для передачі даних на сервер. Однак, дані, передані таким чином, йдуть не в URL документа, а в тілі запиту, після заголовків. Ці дані можуть бути сприйняті CGI-програмою.

Коли дані відправляються методом POST, сервера приходить щось на кшталт:

Плюси методу POST очевидні: можна передавати необмежені обсяги інформації, причому, ніхто не побачить цю інформацію після того, як ви її відправили (мається на увазі, в рядку браузера).

Але є і недоліки:

13. Що таке html?

14. Що таке xml?

XML, або Мова розширює Маркування - eXtensible Markup Language, - спроектований для того, щоб надати Web-розробникам можливість визначення змісту більш складних документів, причому з більш коректним "відображенням даних", ніж раніше. XML розроблявся як мова з простим формальним синтаксисом, зручний для створення і обробки документів програмами і одночасно зручний для читання і створення документів людиною, з підкресленням націленості на використання в Інтернеті. Мова називається розширюваним, оскільки ним не фіксується розмітку, яка використовується в документах: розробник вільний створити розмітку відповідно до потреб конкретної області, будучи обмеженим лише синтаксичними правилами мови.

15. Що таке css?

CSS (Cascading Style Sheets - каскадні таблиці стилів) - одна з базових технологій в сучасному Інтернеті. Нечасто можна зустріти сайт, зверстаний без застосування CSS. CSS-код - це список інструкцій для браузера, - як і де відображати елементи веб-сторінки, написаний особливим чином.

16. Що таке MIME type?

MIME (Multipurpose Internet Mail Extensions, багатоцільові розширення інтернет-пошти) - стандарт Інтернет, є частиною протоколу HTTP. Завдання MIME це ідентифікація типу вмісту документа по його заголовку. Наприклад, текстовий файл має тип text / plain, а HTML-файл - text / html. Відправка заголовка зазвичай відбувається на основі розширення файлу веб-сервером.
Internet Media Types - типи даних, які можуть бути передані за допомогою мережі інтернет із застосуванням стандарту MIME. Нижче наведено список MIME-заголовків і розширень файлів.

Згідно RFC 2045, RFC 2046, RFC 4288, RFC 4289 і RFC 4855 [2] виділяються наступні базові типи даних, що передаються: application, audio, example, image, message, model, multipart, text, video.

17. Що таке cookies?

Кукі (від англ. Cookie - печиво) - невеликий фрагмент даних, відправлений веб-сервером і зберігається на комп'ютері користувача. Веб-клієнт (зазвичай веб-браузер) всякий раз при спробі відкрити сторінку відповідного сайту пересилає цей фрагмент даних веб-сервера в складі HTTP-запиту. Застосовується для збереження даних на стороні користувача, на практиці зазвичай використовується для:

аутентифікації користувача;
зберігання персональних переваг та установки можуть бути;
відстеження стану сеансу [en] доступу користувача;
ведення статистики про користувачів.

18. Що таке сесія?

Аутентифікація - процедура перевірки автентичності, наприклад:

20. Що таке Ajax? Як принципово влаштована ця технологія?

  • Можливість створення зручного Web-інтерфейсу
  • Активна взаємодія з користувачем
  • Часткова перезавантаження сторінки, замість повної
  • Зручність використання

AJAX використовує два методи роботи з веб-сторінкою: зміна Web-сторінки без перезавантаження її, і динамічне звернення до сервера. Друге може здійснюватися кількома способами, зокрема, XMLHttpRequest, про що ми і будемо говорити, і використання техніки прихованого фрейма. Для того, щоб здійснювати обмін даними, на сторінці повинен бути створений об'єкт XMLHttpRequest, який є своєрідним посередником між браузером користувача та сервером. За допомогою XMLHttpRequest можна відправити запит на сервер, а також отримати відповідь у вигляді різного роду даних.

21. Що таке ORM, як це перевести і як це повинно працювати?

ORM (англ. Object-Relational Mapping, рус. Об'єктно-реляційне відображення) - технологія програмування, яка зв'язує бази даних з концепціями об'єктно-орієнтованих мов програмування, створюючи «віртуальну об'єктну базу даних». Існують як пропрієтарні, так і вільні реалізації цієї технології.

3638 Total Views 3 Views Today