Технологія AJAX на основі інформаційної системи обміну даних
Основна інформація що стосувалась теми дипломного проектування сфокусована у пошукових системах таких як google та Wikipedia. Користуючись пошуковими інтерфейсами було знайдено безліч публікацій та матеріалів щодо теми дипломного проектування. Теоретичні основи та спекти теми дипломного проектування були доступні сервісом Wikipedia, що дало змогу розглянути сучасний стан публікацій щодо теми… Читати ще >
Технологія AJAX на основі інформаційної системи обміну даних (реферат, курсова, диплом, контрольна)
Зміст Вступ
1 ХАРАКТЕРИСТИКИ ОБЄКТУ ПРОЕКТУВАННЯ
1.1 Постановка завдання
1.2 Характеристики предметної області
1.3 Складові частини об'єкту проектування
1.4 Підхід до побудови користувацького інтерфейсу об'єкту проектування
1.5 Оцінка якостей проектного рішення
1.5.1 Переваги технології AJAX
1.5.2 Недоліки технології AJAX
1.6 Опис функціональності об'єкту проектування
1.7 Вибір бази даних
2. ОГЛЯД ЛІТЕРАТУРНИХ ДЖЕРЕЛ
2.1 Суть AJAX підходу
2.2 Інтернет проекти на основі AJAX технології
2.3 Публікації на тему систем спілкування
3. СИСТЕМНИЙ АНАЛІЗ
3.1 Аналіз проблеми
3.2 Побудова дерева цілей
3.3 Побудова дерева завдянь
3.4 Обгрунтування та агрегування критеріїв
3.5 Готові альтернативні рішення
3.6 Прийняття рішення системного аналізу Висновок
4. КОНЦЕПТУАЛЬНА МОДЕЛЬ
4.1 Модель роботи веб додатку на ajax
4.2 Використання бази даних
4.3 Використання мови html
4.4 Використання php
4.5 Використання javascript
4.6 Побудова діаграми сценаріїв користування (use case діаграма)
Висновок
5. ОБГРУНТУВАННЯ АПАРАНИХ РІШЕНЬ
5.1 Формулювання вимог апаратного рішення
5.2 Оцінка програмного забезпечення веб сервера
5.3 Швидкодія веб ужитку
5.4 Спосіб використання
5.5 Характеристики апаратних рішень
5.6 Доцільний варіант апаратного забезпечення
6. ДЕТАЛІЗАЦІЯ ТЕХНІЧНОГО РІШЕННЯ
6.1 Структура роботи веб ужитку
6.2 Програмна реалізація ужитку
6.2.1 Побудова структури файлів
6.2.2 Структура таблиць бази даних
6.2.3 Створення таблиць бази даних
6.2.4 Програмування головного виконавчого файлу
6.2.5 Програмування авторизації користувачів
6.2.6 Програмування реєстрації користувачів
6.2.7 Програмування профільної частини користувача
6.2.7.1 Програмування функціоналу відправки повідомлень
6.2.7.2 Програмування функціоналу видалення повідомлень
6.2.7.3 Програмування функціоналу редагування повідомлень
6.2.7.4 Програмування оновлення статусу користувачів та індикаторів Повідомлень
6.2.7.5 Програмування функціоналу розлогінення користувачів
6.3 Оцінка працездатності
7. ЕКОНОМІЧНА ЧАСТИНА Вступ
7.1 Розрахунок витрат на розробку та впровадження проектного рішення
7.2 Визначення комплексного показника якості
7.3 Визначення експлуатаційних витрат
7.4 Розрахунок ціни споживання проектного рішення
7.5 Визначення показників економічної ефективності
Висновки по економічній частині
Висновки
Resume
Список використаної літератури та джерел Додатки ВСТУП
Інтернемт всесвітня система взаємосполучених комп’ютерних мереж, що базуються на комплекті Інтернет-протоколів. Інтернет також називають мережею мереж. Інтернет складається з мільйонів локальних і глобальних приватних, публічних, академічних, ділових і урядових мереж, пов’язаних між собою з використанням різноманітних дротових, оптичних і бездротових технологій. Інтернет становить фізичну основу для розміщення величезної кількості інформаційних ресурсів і послуг, таких як взаємопов'язані гіпертекстові документи Всесвітньої павутини (World Wide Web WWW) та електронна пошта. В повсякденній мові слово Інтернет найчастіше вживається в значенні Всесвітньої павутини і доступної в ній інформації, а не у значенні самої фізичної мережі. Також вживаються терміни Всесвітня мережа, Глобальна мережа чи навіть одне слово Мережа, Інемт, Тенета, Міжмережжя, Інтернемтрі або Немтрі. Все частіше Інтернет вживається з малої літери, що можна пояснити паралелями з термінами «радіо», «телебачення», які пишуть з малої. 1]
Інтернет не має централізованого управління, правил використання чи доступу. Кожна складова мережа встановлює свої власні стандарти. Централізовано визначаються правила використання адресного простору Інтернет-протоколу та Системи доменних імен. Керує цим Інтернет корпорація з присвоєння імен та номерів (англ. Internet Corporation for Assigned Names and Numbers, або ICANN) — міжнародна некомерційна організація з головним офісом у США. Технічне обґрунтування і стандартизацію основних протоколів (IPv4 та IPv6) проводить Internet Engineering Task Force (IETF), некомерційна організація, відкрите міжнародне співтовариство проектувальників, учених, мережевих операторів і постачальників послуг.
Мережа побудована на використанні протоколу IP і маршрутизації пакетів даних. В наш час Інтернет відіграє важливе значення у створенні інформаційного простору глобального суспільства, слугує фізичною основою доступу до веб-сайтів і багатьох систем (протоколів) передачі даних.
Інтернет складається з багатьох тисяч корпоративних, наукових, урядових та домашніх мереж. Об'єднання різнорідних за архітектурою мереж стало можливо завдяки протоколу IP (англ. Internet Protocol) і принципу маршрутизації пакетів даних. Протокол ІР був спеціально створений агностичним у відношенні до фізичних каналів зв’язку. Тобто будь-яка мережа передачі цифрових даних може передавати інтернет-трафік. На стиках мереж спеціальні маршрутизатори займаються сортуванням та перенаправленням пакетів даних, базуючись на ІР-адресах одержувачів цих пакетів. Протокол ІР утворює єдиний адресний простір у масштабах всього світу, але в кожній окремо взятій мережі може існувати свій власний адресний підпростір. Така організація ІР-адрес дозволяє маршрутизаторам однозначно визначати подальший напрямок для кожного, навіть найменшого, пакету даних. У результаті між різними мережами Інтернету не виникає конфліктів і дані точно, без перешкод передаються від мережі до мережі по всій планеті.
На сьогоднішній день сучасне уявлення про інтернет значно змінилося із тих пір, коли почала широко розвиватись сфера інформаційних технологій. На сьогоднішній день розвиток всесвітньої мережі інтернет набув великих змін, які у свою чергу дають змогу будувати принципово нові уявлення про інтернет технології та їх застосування. На даний час кожний веб-ресурс, який є у мережі інтернет побудований на інноваційних принципах. Існує багато веб-технологій, які використовуються для побудови та сворення вебресурсів (сайтів). Іноваційним підходом до створення веб-додатків є технологія асинхронної передачі даних — ajax. На основі ajax зараз будуються практично всі інтернет сайти, мало не в кожному веб-проекті зустрічаються принципи асинхронності передачі даних у зв’язку з тим, що це вирішує і впливає на розвиток потужних ресурсів та їх застосування. Ajax перекладається як асинхронний javascript and XML. Це по суті є взаємодія двох веб-технологій таких як javascriptмова програмування для створення динаміки сайтів та xml — розширений язик розмітки документів. Суть цього полягає в тому, що користувач продовжує роботу із веб-ресурсом надсилаючи дані і запити на веб сервер без перевантаження сторінки у вікні браузера, в той час як при класичній моделі обміну даних без використання AJAX технології відбувається перевантаження веб сторінки при відправці чи оновленні даних отриманих у результаті взаємодії веб сервера та клієнта.
Використовуючи поєднання javascript та xml, можна створювати сучасні додатки, які змінюють уявлення про класичну модель поведінки веб ресурсу.
Це дає змогу досягнути нових рішень і вирішення складних завдань, в яких потрібно реалізувати асинхронний принцип передачі даних. Технологія яка досить недавно почала впроваджуватись та використовуватись досить проста у програмуванні, програмістам дається можливість використовувати готові рішення у вигляді фреймворка, тобто бібліотеки функцій, і це значно спрощує використання коду та дає змогу писати простий та зрозумілий для програміста програмний код.
У даному дипломному проекті докладно розглянуто та продемонстровано технологію AJAX на основі інформаційної системи обміну даних. Було поставлене завдання створити веб ресурс, який надає можливість обміну повідомлення між користувачами, які зареєстровані або аутентифіковані у системі, завдяки технології асинхронного обміну даних (AJAX), що дозволить відправляти, редагувати та видаляти повідомлення у асинхронному вигляді без перевантаження сторінки. Це дозволить використати інноваційний спосіб побудови веб-ужитків у моєму дипломному проекті та створити сучасний програмний продукт, систему обміну повідомленнями між користувачами.
1. ХАРАКТЕРИСТИКА ОБЄКТУ ПРОЕКТУВАННЯ
1.1 Постановка завдання Обєктом мого проектування є інформаційна система обміну даних між користувачами в мережі інтернет на основі асинхронного обміну даних веб застосунку, тобто технології AJAX. Предметною областю об'єкту проектування є сукупність та поєднання декількох сучасних технологій розробки програмного забезпечення для створення інтерактивних веб сайтів. Особливістю предметної області є те що розглядається поєднання сучасних методів програмування, які дають змогу значно простіше та швидше створювати сучасні інтерактивні веб сайти та програмний код який є значно продуктивніший і кращий.
1.2 Характеристики предметної області
Предметною областю проектування є сукупність сучасних технологій проектування веб сайтів, які дозволяють будувати функціональні та новітні ресурси, при цьому використовуючи дуже прості у використанні та зручні з точки зору програміста технології. Ключовою технологією яка дуже поширено використовується при створенні серйозних проектів є технологія асинхронної передачі даних увб системах — ajax. Цей підхід використали у сучасних інтернет сервісах, як Google Suggest — підказки в рядку пошукового запиту. Яндекс повторив досвід. Google Maps — інтерактивні карти. А особливо Gmail — інтерактивний інтерфейс для пошти. Facebook, VKontakte і т.п. активно використовують Ajax. Отже це свідчить про те що AJAX — це актуальна технологія на сьогоднішній день, що все більше широко використовується. Якщо такі відомі компанії, як Google, Facebook, використовують в своїх проектах техноголії AJAX то це свідчить про те, що передовою умовою розвитку веб ресурсів буде саме використання технології асинхронної передачі даних, тобто AJAX. Візьмемо до уваги той факт, що на сьогоднішній день важко відшукати який — небудь веб ресурс без використання асинхронних запитів.
До появи технології AJAX, веб сайти були досить динамічними та потужними, але користувач зміг відправляти дані на веб сервер лише із перевантаженням веб сторінки на якій він знаходився, це викликало певні незручності у користуванні тому технологія AJAX дала змогу відсилати дані без перевантаження сторінки і користувач далі продовжував роботу не зважаючи на відправлені запити.
1.3 Складові частини об'єкту проектування Обєкт проектування в кінцевому результаті це веб сайт який дає змогу користувачам обмінюватись інформацією тобто повідомленнями як наприкладі соціальної мережі.
Структурою нашого об'єкту будемо розуміти сукупністю певних частин, що складають цілісність системи. Об'єктом нашого проектування є інформаційна система обміну даних, отже окремі блоки проектованої системи є програмованими частинами (модулями) що взаємодіють один з одним спільно та синхронно. Загальну структуру нашого об'єкту проектування розділено на такі частини: автентифікація, реєстрація, обмін повідомленнями, та профільна частина користувача. Автенфікація та реєстріція слугують механізмом доступу користувача до контенту та його особистого профіля, обмін повідомленнями та профільна частина користувача відлповідають за основний функціонал обєкта проектування — оперування інформацією користувача. Користувач має можливість відправляти, редагувати видаляти повідомлення у своїй профільній частині.
Частина автентифікації у нашому проектуванні являється процедура встановлення належності користувачеві інформації в системі пред’явленого ним ідентифікатора. Ця частина об'єкту проектування відповідає за достовірність наданої інформації користувача, яка є у системі. З позицій інформаційної безпеки автентифікація для нашого об'єкта проектування є частиною процедури надання доступу для роботи в інформаційній системі.
Частина реєстрації являє собою процес надання прав доступу користувачам до контенту які ще не є зарєестровані у системі. Користувачі що раніше пройшли реєстрацію мають змогу виконати процес автентифікації у системі тому, що їх облікові дані вже існують та їх потрібно лише перевірити на правдивість, в іншому випадку всі користувачі для доступу до належного їм контенту повинні пройти процес реєстрації оскільки у базі даних немає їхніх облікових даних. Реєстрація є необіхдим кроком у системі для нових користувачів щоб в подальшому мати можливість доступу до вого особистого профіля.
Обмін даними представляє собою головну складову частину обєкту проектування. В цьому полягає суть правильної роботи всієї системи. Відбувається функціональна частина обміну даними у системі, тобто головні транзакції інформаційних потоків відбуваються саме у частині обміну даних. Для функціонування та правильної роботи системи потрібна злагоджена взаємодія всіх її складових частин. Обмін даними представляє в собі структуру яка складається із декількох внутрішніх складових таких, як відправка інформації, видалення інформації, редагування інформації. Ця частина проектування аключає викоористання технології AJAX. Робота цієї частини веб сайту буде виконуватись у фоновому режимі у той час користувач буде продовжувати роботу із веб сайтом коли дані будуть передаватись на веб сервер без перевантаження сторінки з якою працює користувач у системі.
Відправка інформації.
Внутрішня складова структури частини обміну даних яка відповідає за передачу інформації між користувачами що є у системі.Це внутрішня складова частини яка відповідає за обмін даними. Основна функція цієї структури проектування це відправка даних певному адресату у системі, тобто користувач відправляє повідомлення іншому користувачеві у системі. В даній частині буде впроваджено технологію ajax, що дозволить створити зручну інтерактивність обміну даних, власне і на цьому грунтується баховий підхід цієї частини проектування. Інформація буде відправлятись у фоновому режимі що дозволить продовжувати роботу із веб сайтом не пережавантажуючи веб сторінки на якій хнаходиться користувач.
Видалення інфомації
Ця структура проектування відповідає за вилалення непотрібної інформації користувачмем, тобто повідомлення яке для користувача є неактуальне можливо видалити. Вся інформація яка отримала запит на видалення очичається без можливості відновлення. У цій частині проектування впроваджено технологію Ajax яка відповідає за синхроний.
Редагування інформації
Будь яке повідомлення яке користувач надсилає іншому кристувачеві можна відредагувати. Це означає що старе повідомлення яке було відправлено раніше можливо змінити та відправити нову версію повідомлення.
Профільна частина користувача відповідає за відображення стану активності користувачів, ідентифікатор стану повідомлення. Основні функції цієї частина це стеження за приходом нових повідомлень для користувача та статуси активності користувачів на на веб сайті. Використовуючи технологію ajax ця частина проектування на веб сайті буде пррацювати з підтримкою технології ajax. Користувач зможе бачити прихід нових повідомлень та користувачів які зявились на сайті у фоновому режимі тобто без перевантаження веб сторінки. Проектна структура профільної частини користувача розділена на такі 2 розділи: ідентифікатор повідомлення та статус користувачів.
Ідентифікатор повідомлення слугує для сповіщення користувача про прихід нових повідомлень які йомі надсилались. Цей процес здійснюється у фоновому режимі за допомогою технології AJAX без перевантаження веб сторінки на якій знаходиться користувач. Не потрібно виконувати оновлення веб сторінки як при класичній моделі веб застосунків оповіщення висвітляться автоматично через ajax механізми.
Статус користувачів повідомляє нам про стан нового користувача у ситемі який щойно авторизувався або аутенфікувся. Ця функція виконується у фоновому режимі із використанням ajax технології, тобто оповіщення про стан користувачів автоматично оновлються без перевантаження веб сторінки.
1.4 Підхід до побудови користувацького інтерфейсу об'єкту проектування Використовуючи технологію ajax користувацький інтерфейс нашого об'єкта проектування буде працювати у фоновому режимі, тобто веб за стосунок, за яким веб-сторінка, не перезавантажуючись, у фоновому режимі надсилає запити на сервер і сама звідти довантажує потрібні користувачу дані. Це основна ідея побудови користувацьких інтерфейсів проектуваня на сьогоднішній день.
Використання взаємодії з користувачем у нашому веб ресурсі являється основною проблемою, для цього користувацький інтерфейс будемо розглядати як окремі модулі у яких є за стосунок ajax підходу для створення зручного інтерфейсу взаємодії. Отже користувацький інтерфейс умовно умовно розглядаємо як модуль обміну даних та модуль профільної частини користувача.
Модуль обміну даних відповідає за обмін даними користувачів сайту. Тут реалізовано ajax підхід, тобто вся інтерактивність та інтерфейс користувача що стосується обміну частини даних працює без перевантаження веб сторінки.
Модуль профільної частини користувача працює у фоновому режимі і теж використовує технологію ajax що дозволяє бачити прихід нових користувачів на веб сайті і ідентифікатори стану повідомлень що приходять адресату та бачити статуси користувачі на сайті.
1.5 Оцінка якостей проектного рішення
1.5.1 Переваги технології AJAX
· Інтерактивність веб-інтерфейсу;
Інтерактивність веб-інтерфейсу займає ключову позицію в проектуванні веб ресурсу. Інтерактивність зумовлюється використанням мультимедійних форм, сучасними шаблонами проектування, принципом спілкування користувача із інтерфесом сайту. Наприклад, користувач зробив запит на сервер з певними даними і має очікувати результати. На сайтах з класичними методами перед користувачем білий екран доти, доки не завантажиться вся сторінка. За звичай, в класичних сайт користувач після заповнення, наприклад, форми, мав наживати кнопку «Підтвердити» і очікувати на відповідь сервера, яка в свою чергу може містити попередження. Часто користувач змушений наново заповнювати все. Ajax дозволяє так спроектувати сторінку, що запит робитиметься після будь-якій зміни зі сторони користувача. А також ехнологія Ajax дозволяє залишатись користувачеві на сайті, і можна розробити заставку, яка буде з’являтись під час завантаження даних. У Додатках, А є приклад, які можна запрограмовувати заставки.
· Зменшення трафіку;
Якщо в класичних моделях реалізації взаємодії клієнт-сервер, якщо користувач хоче зробити запит на сервер, то для цього в об'єкті-запиту передавалась вся сторінка, яка після оновлення завантажувалась в браузері, що вимагало збільшення використаного трафіку. Тепер «витрати» трафіку можна зменшити, завантажуючи тільку ту частину, яка змінилась. Це можна реалізовується завдяки тому, що створюється HTTP запити, які відсилаються на сервер у фоновому режимі і модифікуються тільки окремі частини web-сторінки за допомогою JavaScript, коли приходить відповідь з серверу.
· Динамічні і більш якісні веб сайти.
Ми можемо створювати нові та більш цікаві сайти для користувачів. Йдеться про функціонал для користувачів сайту. Сучасні веб сайти дають безліч можливостей для функцій якими користувач може користуватись безпосередньо не використовуючи перевантаження веб сторінки як при класичній моделі проектування веб ресурсу. Користувачі зможуть працювати з мультимедійними сайтами, здійснювати різноманітні операції із своїми завантаженими об'єктами у інтерфейсі бев ресурсу, все це будує принципово новий рівень якості веб сайтів і динаміки поведінки інтерфейсу, яки створюється для взаємодії користувача із веб сайтом.
Наприклад, створюється форма, в якій потрібно ввести дані користувачем. Для полегшення задачі можна запрограмувати скрипт, який миттєво реагує, посилаючи запит на сервер і повертає підказки. Підказка показує тільки ті, дати, які можна обрати, тобто з урахуванням реальної дати, місяця, року. Наприклад, сьогодні 19 травня, і дату народження в майбутньому обрати неможна.
· Зменшення навантаження на веб сервер.
При використанні технології AJAX, зменшується навантаження на веб сервер. Це зумовлюється тим, що непотрібно кожного разу оновлювати веб сторінку користувача коли відбулась передача даних на сервер. Зменшення трафіку зумовлює зменшення навантаження на веб сервер, тобто відбувається оновлення лише певного блоку на веб сторінці, який потрібний користувачу, а не сієї сторінки як при класичній моделі. Користувач отримує дані які йому потрібні без оновлення всіє сторінки, а лише певної частини. 2]
1.5.2 Недоліки технології AJAX
· Відсутність інтеграції із стандартними користувацькими інструментами браузера;
· Кнопка переходу між сторінками «Назад»;
· Не буде працювати кнопка «Назад» у браузері. Динамічні сторінки не реєструються браузером в історії перегляду сторінок, тому не працює кнопка «Назад». Але більшість програмістів створюють спеціальні скрипти для усунення недоліку;
· Закладки.
Оскільки динамічно генерує сторінки Javascript, а не сервер тому адреса сторінки вирізається з циклу і вже ніяк не можу бути використана у майбутньому. Тому для вирішення цієї проблеми в AJAX широко використовують конструктивні посилання (prermalinks) таких випадках. Ця проблема використовується за рахунок міток # в URL.
· Проблема індексації пошуковими системами;
Динамічний вміст веб сторінки пошукові роботи не можуть побачити, тому що він генерується динамічним скриптом на стороні клієнта. Коли створюється потужний сайт потрібно потрібно створювати аналогічні методи доступу до контенту, тобто можна розробити статистичний сайт.
· Ускладнення проекту;
Звичайно при створенні потужних веб ресурсів впровадження технології AJAXпотребує складного опрацюапння та інтеграції у сам код. Збільшується проблема передачі даних у великих розмірах. Це вирішується за допомогою cookies.
· Проблеми відвідуваності сайтів;
Багато веб серверів ведуть облік відвідуваності нових сторінок веб сайту. Але коли ці сторінки генеруються AJAX запитами то ця статистика стає неактуальною на сьогоднішній день.
· Безліч браузерів не є крос суміснини із javascript тому деякі функції можуть не працювати коректно, а також це впливає на формування сторінко чрез запит javascript.
1.6 Опис функціональності об'єкту проектування Функціональна складова об'єкту проектування визначає його основні можливості та функції використання які він матиме в собі. Інформаційна система обміну даних реалізовує функцію авторизації та реєстрації користувачів у системі, відправка, редагування та видалення повідомлень у системі в синхронному режимі за допомогою технології AJAX.
Реєстрація користувачів.
Багато веб сайтів примушують користувачу надати про себе деяку інформацію. Здійснивши запит і отримавши інформацію про відвідувача, потрібно якимось чином її зберегти та поєднати із відвідувачем при його наступних спробах використання веб сайту. Оскільки існує безліч методів використання реєстрації на сайті, мною був реалізований класичний метод за допомогою якого здійснюється реєстрація користувача зі його іменем та особистим паролем. Пароль вказується символами латинського алфавіту. Логін, тобто імя користувача, яке буде використовуватись у системі, повинно містити латинські літери згідно стандартів проектування веб за стосунків. Реєстрація є основним кроком який повинні пройти всі користувачі, яким надається доступ до тих чи інших даних у системі веб застосунку. Потужні та сучасні веб проекти неможутьі снувати без системи контролю користувачів.
Для реєстрації користувача в системі потрібно заповнити поля вводу, тобто поле де потрібно вказати імя користувача та поле де потрібно вказати пароль.
Реєстрація потрібна для того щоб запам’ятати користувача який у подальшому буде авторизуватись у системі використовуючи дані реєстрації що збережені у базі даних. Реєстрація у системі проводиться кожного разу для нових користувачів. Після того, коли користувач заповнив всі необхідні дані, здійснюється його реєстрація у зв’язку з чим в базі даних створюється нові поля із інформацією про нового користувача.
Після того як було зареєстровано нового користувача у системі, є можливість надати йому відповідний статус та інформацію по його власному профілю.
Авторизація користувачів.
Авторизація користувачів у системі здійснюється на основі достовірності користувача у тому числі його логіна та паролю. Перш ніж користувач буде мати змогу використовувати інформацію на сайті йому потрібно авторизуватись. У будь яких сучасних веб сайтів авторизація є основною складовою частиною проектування ресурсу. Потужні веб ресурси просто не можуть існувати без авторизації своїх користувачів оскільки це призведе до несанкціонованого доступу до інформації. Авторизація дуже подібна за своєю структурою до реєстрації користувачів у системі. Авторизація зумовлює перевірку прав та наявність певного правила доступу користувача до того чи іншого інформаційного ресурса, за рахунок перевірки введених даних користувачем на сайті. Тобто перевіряється відповідність логіну та паролю, який користувач ввів, у базі даних зареєстрованих користувачів.
Відправка повідомлень.
Для того щоб було здійснено обмін повідомленнями між користувачами, у системі повинна відбутись авторизація або реєстрація користувача. Після цього користувач має можливість відправляти повідомлення іншим користувачам які є також зареєстровані у системі. Відправка повідомлень реалізується асинхронним методом, без перевантаження сторінки на якій знаходиться користувач, а не, як при класичному методі. Відправка повідомлень може здійснюватись багатьом користувачам, але послідовно. Кожний користувач може відправляти повідомлення багатьом користувачам і отримувати повідомлення від багатьох користувачів. Про новий стан повідомлення користувачу буде оповіщено асинхронно, тобто не потрібно перевантажувати веб сторінку на якій знаходиться користувач. В процесі роботи, для того щоб користувач міг бачити прихід йому нових повідомлень буде використано асинхронний запит до бази даних де містяться нові повідомлення для користувача. Це зумовлюється принципом «AJAX» які забезпечують у таких випадках безперервний процес роботи користувача і в той же час обробку користувацького запиту.
Редагування повідомлень.
Редагування повідомлень це функція зміни вмісту повідомлення із відповідним збереженням його в базі даних, тобто заміни старого повідомлення новим і відсилання користувачу уже нового відредагованого повідомлення на місце минулого повідомлення, яке ми змінили відповідно.
Редагування можливе лише надісланих повідомлень. Звичайно для того щоб мати можливість редагувати повідомлення потрібно пройти етап авторизації або реєстрації, тобто увійти у свій профіль у системі. Після цього всі наші надіслані повідомлення ми будемо мати можливість редагувати і відправляти користувачеві. Нове повідомлення замінюється автоматично замість старого яке ми редагували і надсилається у асинхронному вигляді, без перевантаження сторінки.
1.7 Вибір бази даних Збереження даних «інформаційної системи обміну даних на основі ajax технології будуть зберігатись у базі даних. База даних буде зручним та простим способом для оперування даними. Головне завдання на цьому етапі проектування — створити механізм гарантованого збереження значних обсягів інформації (так звані записи даних) та надання доступу до неї користувачеві або ж прикладній програмі. Таким чином, БД складається з двох частин: збереженої інформації та системи керування нею. Для збереження нам всіх даних буде використовуватись Структурована БД, тобто структурований опис типу фактів за допомогою схеми даних, більш відомої як модель даних.
Оперування всією інформацією у системі буде відбуватись безпосередньо через базу даних. База даних є у вигляді спроектованих таблиць реляційної моделі, тобто це масив даних, яка буде містити всі дані що мають обіг у системі.
База даних складається із двох таблиць, які відповідають за збереження всієї інформації що стосується роботи веб ресурсу. Весь інформаційний потік даних, тобто збереження, редагування, видаленя відбувається безпосередньо через веб інтерфейс за допомогою запитів.
Таблиця register
Для збереження інформації про всіх користувачів у системі буде використовуватись таблиця бази даних user. Реєстрація авторизація користувачів у системі заздалегідь потребує перевірки внесених даних користувачем на валідність та співставлення із базою даних, щоб уникнути нелегітимних транзакцій що можуть зіпсувати профіль користувача. Таблиця user відповідає за запис нових даних що стосуються реєстрації користувача у системі та повірки вже існуючих готових профілів на правдивість даних. Отже при реєстрації авторизації та перевірці даних таблиця user є основною таблицею для особистого профілю користувача.
Таблиця message
У базі даних таблиця message є ключовою таблицею і головним масивом для оперування даними. Через цю таблицю відбувається обмін даними між користувачами, тобто відправка, видалення, редагування повідомлень. Дана таблиця представляє собою масив даних де будуть зберігатись інформація про повідомлення, його час відправки та отримання, інформація про учасників між якими відбувався обмін повідомленнями.
Повна робота і функціонування системи без бази даних неможливе оскільки вся інформація яка потрібна користувачеві, тобто повідомлення і його особистий профіль, збережені в таблицях бази даних.
Загальний принцип роботи системи із базою даних виглядає наступним чином:
· Звернення до таблиці user;
Першочергово користувачу надається інтерфейс для авторизації або реєстрації у системі. Під час цього процесу здійснюється внесення нових даних користувача у базу даних таблиці user, або перевірка вже існуючих даних на правильність вводу.
· Звернення до таблиці message;
Після авторизації або реєстрації у системі користувача буде пере направлено на його особистий профіль, тобто він зможе бачити всі свої нові повідомлення та відправляти власні. Для функціонування цієї частини системи існує у базі даних таблиця message. Ця таблиця відповідає за інформацію що стосується окремих повідомлень користувачів ,їхніх статусів та всієї інформації про транзакцію повідомлення у системі.
· Синхронізація запитів бази даних.
Для правильної роботи системи має відбуватись синхронне використання даних які є у базі. Тобто користувач одночасно може відправляти повідомлення та стежити за приходом нових, використовувати запити на оновлення даних і при цьому стежити за всіма користувачами що є у системі.
2. ОГЛЯД ЛІТЕРАТУРНИХ ДЖЕРЕЛ
Інформаційні технології сьогодення дозволяють нам створювати надсучасні системи обміну інформацією в мережі інтернет при цьому заощаджуючи значні зусилля програмістів. Інформаційна система обміну інформацією це сукупність різноманітних web технологій що дозволяють оперувати значними обсягами даних використовуючи при цьому зручний інтерфейс для користувачів. Для оцінки сучасного стану інформаційних джерел за темою дипломного проекту використано інтернет сервіси такі як google.com, Wikipedia.org. У результаті загальної оцінки сучасного стану щодо публікацій по темі дипломного проекту, усі веб ресурси надали актуальну і достовірну інформацію сьогодення, зокрема інформація постійно оновлювалась останніми роками, що свідчить про активне використання ресурсів по даній темі дипломного проекту та актуальність цієї теми. Для оцінки актуальності даної теми було здійснено пошук веб ресурсів які активно впроваждують та використовують ajax підхід у своєму проектуванні. Головною проблемою мого дипломного проекту є ajax технологія яку я впроваджував у розробку свого власного веб сайту, тому для порівняння власного проектування я розглянув готові рішення які повністю підтримуються ajax підхід.
Для того щоб краще зрозуміти суть мого дипломного проектування розглянемо головне визначення технології ajax із інформаційного ресурсу Wikipedia. JAX (Asynchronous JavaScript And XML) — підхід до побудови користувацьких інтерфейсів веб-застосунків, за яких веб-сторінка, не перезавантажуючись, у фоновому режимі надсилає запити на сервер і сама звідти довантажує потрібні користувачу дані. AJAX — один з компонентів концепції DHTML. 3]
Про AJAX заговорили після появи в лютому 2005;го року статті Джесі Джеймса Гарретта (Jesse James Garrett) «Новий підхід до веб-застосунків». AJAX — не самостійна технологія. Отже як бачимо ajax досить широко застосовується у сфері програмування веб ресурсів і це свідчить про значне вдосконалення, а сама концепція використання є дуже простою з точки зору програміста.
2.1 Суть ajax підходу
AJAX — це не самостійна технологія, а швидше концепція використання декількох суміжних технологій. AJAX підхід до розробки призначених для користувача інтерфейсів комбінує кілька основних методів і прийомів:
· Використання DHTML для динамічної зміни змісту сторінки;
· Використання XMLHttpRequest для звернення до сервера «на льоту», не перезавантажуючи всю сторінку повністю;
· альтернативний метод — динамічне підвантаження коду JavaScript в тег