Технічне створення Web-додатків за допомогою Ajax

 

Зміст


Список умовних позначень та скорочень

Вступ

. Розробка інтерактивного інтерфейсу web-додатків засобами бібліотеки Codeigniter та технології Ajax

.1 Загальнi вiдомостi про Ajax

.2 Переваги технології Ajax

.3 Недоліки технології Ajax

.4 Взаємодія у Web за допомогою Ajax

.5 Суть Ajax-підходу

.6 Інтернет-проекти на основі AJAX-технології

. Загальна інформація про програмні бібліотеки підтримки розробки Web - додатків

.1 Каркас додатків CodeIgniter

.2 Асинхронний обмін даними засобами Ajax

. Ініціалізація проекту та обробка запиту засобами Codeigniter

.1 Ініціалізація обробки запиту засобами CodeIgniter

.2 Приклад застосування CodeIgniter для задачі аутентифікації користувача

.3 Приклад використання бібліотеки CodeIgniter для обміну даними засобами Ajax

. Економічна частина

. Частина з охорони праці

Висновки

Список використаних джерел

Список умовних позначень та скорочень

- Asynchronous JavaScript And XML (Асинхронний JavaScript і XML)- Всесвітня павутина- Extensible Markup Language (Розширювана мова розмітки)- HyperText Markup Language (Мова розмітки гіпертексту)- JavaScript Object Notation (Об'єктний запис JavaScript)- Comma-Separated Values- HyperText Transfer Protocol (Протокол передачі гіпертексту)- Document Object Model (Об'єктна модель документа)- Dynamic HyperText Markup Language- Hypertext Preprocessor (Гіпертекстовий препроцесор)

JAVA - Об'єктно-орієнтована <#"justify">ОС - Операційна система

ПЗ - Програмне забезпечення

ПК - Персональний компютер


Вступ


Швидкий розвиток інформаційного Web - середовища призвів до того, що вимоги до Web-додатків суттєво змінилися. Зокрема спостерігається тенденція до створення багатих Web-додатків, тобто додатків, інтерфейс яких надає можливості, що не відрізняються від можливостей звичайного додатку, який призначений для настільної системі. Але при роботі програм, що підтримують мережеву взаємодію, усунути затримку відповіді, повязану з передачею даних через мережу Інтернет, принципово неможливо. Помякшити негативний ефект від затримки даних дозволяє технологія Ajax. Але застосування цієї технології повністю змінило структуру та принципи роботи Web-додатків. В сучасних мережевих програмах все більше функцій виконується на клієнтському боці, тому обсяг коду клієнтської частини Web-додатку суттєво збільшується і робота над нею виконується групою розробників. В результаті виявилося, що мова JavaScript, яка застосовується для написання Ajax-додатків, має специфічне застосування і не відповідає вимогам до інструментальних засобів розробки та налагодження програм.

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

Запропонований підхід реалізований у вигляді набору базових засобів для написання Ajax-додатків.

Метою дипломного проекту є розглянути технічне створення Web- додатків за допомогою Ajax.

Предметом дослідження є додаток.

Для реалізації поставленої мети слід вирішити наступні завдання:

-Детальніше ознайомитися з технологією Ajax;

-Ознайомитися принципи роботи Web-додатків;

-Детальніше ознайомитися з інформацією про програмні бібліотеки підтримки розробки Web-додатків.

-Ек

-Ох.


1. Розробка інтерактивного інтерфейсу web-додатків засобами бібліотеки codeigniter та технології Ajax


.1 Загальнi вiдомостi про Ajax

- група методів Web-розробки, що використовуються для створення Web-програм з багатими можливостями та мережевою взаємодією, що базується на «фоновому» обміні даними браузера з Web-сервером. В результаті сторінка не перезавантажується повністю і Web-програма стає швидкою та зручною.це не самостійна технологія, а скоріше концепція використання декількох суміжних технологій. Ajax базується на двох основних принципах: використання технології взаємодії із сервером за допомогою JavaScript обєкта XMLHttpRequest без перезавантаження усієї сторінки використання - для динамічної зміни вмісту сторінки та реагування на дії користувача

Для передачі даних від сервера до клієнта використовуються формати XML або JSON. Класична модель web-програм повязана не лише з використанням базових web-технологій, а і з специфічним способом роботи з web-програмою, при якому web-браузер є лише низькорівневим терміналом. Він не має інформації про те, який етап роботи виконується користувачем. Він лише отримує готову сторінку в форматі HTML і відображає її користувачу.

У web-програмах, побудованих за допомогою технології Ajax, частина функціональних можливостей переноситься з сервера на клієнт. На деякі дії користувача така web-програма може реагувати самостійно. Якщо наявних можливостей не вистачає для виконання ініційованих користувачем дій то відбувається взаємодія із сервером, при цьому користувач може виконувати інші дії. Оскільки HTML документ присутній на стороні клієнта протягом всьго часу роботи з web-програмою, то він здатний зберігати всю інформацію про її стан.

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

Засоби, що використовуються в рамках технології Ajax не єдиний спосіб забезпечити асинхронний обмін даними з сервером. Наприклад Macromedia Flash (починаючи з 4 версії) може завантажувати дані в форматі XML або CSV з серверу без перезавантаження сторінки. Але цю технологію не можна використовувати для створення багатих web-програм бо вона в основному використовується для роботи з мультимедійними даними і малопридатна для динамічної зміни вмісту сторінки.

Пізніше Microsoft створила обєкт XMLHttpRequest в Internet Explorer 5, що і став основою Ajax.


.2 Переваги технології Ajax


Інтерактивність веб-інтерфейсу займає ключову позицію в проектуванні веб ресурсу. Інтерактивність зумовлюється використанням мультимедійних форм, сучасними шаблонами проектування, принципом спілкування користувача із інтерфейсом сайту. Наприклад, користувач зробив запит на сервер з певними даними і має очікувати результати. На сайтах з класичними методами перед користувачем білий екран доти, доки не завантажиться вся сторінка. За звичай, в класичних сайт користувач після заповнення, наприклад, форми, мав наживати кнопку «Підтвердити» і очікувати на відповідь сервера, яка в свою чергу може містити попередження. Часто користувач змушений наново заповнювати все. Ajax дозволяє так спроектувати сторінку, що запит робитиметься після будь-якій зміни зі сторони користувача. А також технологія Ajax дозволяє залишатись користувачеві на сайті, і можна розробити заставку, яка буде зявлятись під час завантаження даних. У Додатках А є приклад, які можна запрограмовувати заставки.

Зменшення трафіку;

Якщо в класичних моделях реалізації взаємодії клієнт-сервер, якщо користувач хоче зробити запит на сервер, то для цього в обєкті-запиту передавалась вся сторінка, яка після оновлення завантажувалась в браузері, що вимагало збільшення використаного трафіку. Тепер «витрати» трафіку можна зменшити, завантажуючи тільки ту частину, яка змінилась. Це можна реалізовується завдяки тому, що створюється HTTP запити, які відсилаються на сервер у фоновому режимі і модифікуються тільки окремі частини web-сторінки за допомогою JavaScript, коли приходить відповідь з серверу.

Динамічні і більш якісні веб-сайти;

Ми можемо створювати нові та більш цікаві сайти для користувачів. Йдеться про функціонал для користувачів сайту. Сучасні веб сайти дають безліч можливостей для функцій якими користувач може користуватись безпосередньо не використовуючи перевантаження веб сторінки як при класичній моделі проектування веб ресурсу. Користувачі зможуть працювати з мультимедійними сайтами, здійснювати різноманітні операції із своїми завантаженими обєктами у інтерфейсі веб-ресурсу, все це будує принципово новий рівень якості веб сайтів і динаміки поведінки інтерфейсу, яки створюється для взаємодії користувача із веб сайтом.

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

Зменшення навантаження на веб-сервер;

При використанні технології AJAX, зменшується навантаження на веб сервер. Це зумовлюється тим, що непотрібно кожного разу оновлювати веб сторінку користувача коли відбулась передача даних на сервер. Зменшення трафіку зумовлює зменшення навантаження на веб сервер, тобто відбувається оновлення лише певного блоку на веб сторінці,який потрібний користувачу, а не сієї сторінки як при класичній моделі. Користувач отримує дані які йому потрібні без оновлення всіє сторінки а лише певної частини.


.3 Недоліки технології Ajax


Відсутня інтеграція із стандартними інструментами браузера - не працює кнопка «Назад», сторінку, згенеровану за допомогою Ajax не можна додати в закладки.

Проблема з індексуванням сайту пошуковими роботами - у них відсутня підтримка JavaScript.

Використання JavaScript та DOM, що мають різну реалізацію в різних браузерах та навіть різних версіях браузерів.- назва реалізація мови програмування ECMAScript. Найпоширеніше і найвідоміше застосування мови - написання сценаріїв для Web-сторінок, але вона також використовується для впровадження сценаріїв керування об'єктами вбудованими в інші програми.за назвою дуже схожа на мову Java. Але це зовсім різні мови з різними сферами застосування. Права на назву JavaScript належать Sun Microsystems (розробник Java) але JavaScript розробляла зовсім інша компанія - Netscape для власного браузера Netscape Communications.

Зараз JavaScript підтримують всі основні двигунці браузерів - Trident (Internet Explorer), Presto (Opera), Gecko (Firefox, Mozilla, Netscape) та KHTML/WebKit (Konqueror, Safari).має низку властивостей об'єктно-орієнтованих мов, але завдяки концепції прототипів підтримка об'єктів в ній відрізняється від традиційних мов ООП. JavaScript має ряд властивостей, спільних з функціональними мовами, що додає мові додаткову гнучкість.має подібний синтаксис, але має з нею відмінності:

-об'єкти, з можливістю інтроспекції і динамічної зміни типу через механізм прототипів

-функції як об'єкти першого класу

-обробка винятків

-автоматичне приведення типів

-автоматичне прибирання сміття

-анонімні функції

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

При використанні в рамках технології DHTML JavaScript код включається в HTML-код сторінки і виконується інтерпретатором, вбудованим в браузер. Код JavaScript вставляється в теги <script></script> з обов'язковим за специфікацією HTML 4.01 атрибутом type="text/javascript", хоча в більшості браузерів мова сценаріїв по замовчуванюю саме JavaScript.

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

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

Також JavaScipt має обмеження часу на завершення свого виконання (це може бути як фіксоване число у випадку браузерів з двигунцем Gecko або інше обмеження, наприклад максимальне число елементарних операція у випадку браузерів з двигунцем Trident).


1.4 Взаємодія у Web за допомогою Ajax


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

сторінка

Обєкт

скрипт

При певних діях користувача (наприклад при активізації кнопки в складі користувацького інтерфейсу) браузер генерує запит і за допомогою JavaScript-обєкта XMLHttpRequest відправляє його на сервер. При цьому метод доступу може бути DHTML. Користувацький інтерфейс під час відправлення запиту і отримання відповіді не блокується і користувач може продовжувати виконувати певні дії, результатом яких можуть бути нові запити до сервера - Ajax підтримує декілька одночасних взаємодій сторінки з сервером. Користувацький інтерфейс виглядає і реагує на дії користувача як звичайна програма, що полегшує роботу з ним.

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

Браузер, за допомогою JavaScript, обробляє отриману відповідь і модифікує сторінку без перезавантаження за допомогою DHTML.

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

Недоліки методу:

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

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

-на сторінку, згенеровану за допомогою Ajax, не можна поставити пряме посилання - при модифікації сторінка не змінює адреси.

Для подолання вказаних недоліків потрібно:

-Обмежити використання мови сценаріїв JavaScript і використати технологію Java Апплетів. Повністю відмовитись від використання JavaScript не можна (це єдиний спосіб динамічної зміни сторінки, що, хоч і з недоліками, але функціонує в більшості сучасних браузерів) але якщо перенести більшу частину функціональних можливостей з сценарію JavaScript до Java Апплету і використовувати JavaScript лише для звязку HTML сторінки з Апплетом то складність розробки та налагодження такої системи буде на порядок нижча.

-Створювати окремі статичні сторінки, що матимуть той самий вміст, що і динамічні сторінки, але їх зможуть прочитати та обробити пошукові системи а також переглянути ті користувачі, що використовують застарілі браузери або браузери із відключеними або заблокованими додатковими можливостями (JavaScript, Java, Flash і т.п.). Також ці статичні сторінки користувач може зберегти на свій компютер для перегляду оффлайн або редагування за допомогою HTML-редакторів.

-Створити спеціальний елемент користувацького інтерфейсу - «посилання на цю сторінку», що міститиме спеціально сформоване посилання, перейшовши за яким відкривається сторінка з таким самим вмістом, як і згенерована динамічно. Це потребує модифікації серверної частини (в більшості випадків ця модифікація є незначною), але подолання цього недоліку є дуже важливим для комфортної роботи з Web-сторіками, що побудовані динамічно.


.5 Суть Ajax-підходу


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

Для того щоб краще зрозуміти суть мого дипломного проектування розглянемо головне визначення технології Ajax із інформаційного ресурсу Wikipedia. АJAX (Asynchronous JavaScript And XML) - підхід до побудови користувацьких інтерфейсів веб-застосунків, за яких веб-сторінка, не перезавантажуючись, у фоновому режимі надсилає запити на сервер і сама звідти довантажує потрібні користувачу дані. AJAX - один з компонентів концепції DHTML.

Про AJAX заговорили після появи в лютому 2005-го року статті Джесі Джеймса Гарретта (Jesse James Garrett) «Новий підхід до веб-застосунків». AJAX - не самостійна технологія. Отже як бачимо Ajax досить широко застосовується у сфері програмування веб ресурсів і це свідчить про значне вдосконалення а сама концепція використання є дуже простою з точки зору програміста.- це несамостійна технологія, а швидше концепція використання декількох суміжних технологій. AJAX підхід до розробки призначених для користувача інтерфейсів комбінує кілька основних методів і прийомів:

Використання DHTML для динамічної зміни змісту сторінки;

Використання XMLHttpRequest для звернення до сервера «на льоту», не перезавантажуючи всю сторінку повністю;

альтернативний метод - динамічне підвантаження коду JavaScript в тег <SCRIPT> з використанням DOM, що здійснюється із використанням формату JSON);

динамічне створення дочірніх фреймів.

Використання цих підходів дозволяє створювати набагато зручніші веб-інтерфейси користувача на тих сторінках сайтів, де необхідна активна взаємодія з користувачем. AJAX - асинхронний, тому користувач може переглядати далі контент сайту, поки сервер все ще обробляє запит. Браузер не перезавантажує web-сторінку і дані посилаються на сервер без візуального підтвердження (крім випадків, коли ми самі захочемо показати процес зєднання з сервером). Використання AJAX стало найпопулярніше після того, як компанія Google почала активно використовувати його при створенні своїх сайтів, таких як Gmail, Google Maps і Google Suggest. Створення цих сайтів підтвердило ефективність використання даного підходу.

Порівняння класичного підходу та AJAX

Класична модель веб-застосування:

Користувач заходить на веб-сторінку і натискає на який-небудь її елемент;

Браузер надсилає запит серверу;

У відповідь сервер генерує повністю нову веб-сторінку і відправляє її браузеру і т. д.;

З боку сервера можлива генерація не всієї сторінки наново, а тільки деяких її частин, з подальшою передачею користувачу.

Модель AJAX

Користувач заходить на веб-сторінку і натискає на який-небудь її елемент.

Браузер відправляє відповідний запит на сервер.

Сервер віддає тільки ту частину документа, яка змінилася.


.6 Інтернет-проекти на основі AJAX-технології


Технологію Ajax широко використовують провідні Інтернет гіганти такі як Google, Wikipedia, yahoo, meta. Це свідчить про те що інноваційний підхід до створення потужних Інтернет проектів не обходиться без використання технології Ajax. Нижче наведені основні проекти провідних компаній, що активно розвивають та використовують Ajax підхід.suggest та Google Maps - проекти, які показали можливості Ajax;- гарний приклад сайту на Ajax (особисті замітки);- online - робочий стіл на Ajax;- online-аггрегатор новин на Ajax;

Браузер по Wikipedia.org - оболонка для навігації по Wikipedia.org на Ajax.Suggest (suggest - пропоную) це сучасний сервіс пошукового запиту який автозаповнює рядок запиту на основі декількох введених символів. Коли користувач для прикладу вводить декілька букв у рядковому запиті Google тоді автоматично за допомогою фонових запитів із бази даних підставляється готове слово яке відповідає умові запиту користувача. Даний сервіс повністю працює на основі технології AJAX..

Хороший приклад сайту оновлення новин, що активно використовує Ajax технологію для динамічного інтерфейсу користувача є проект Protopage. Даний сайт створений як rss система оновлення, тобто користувач у фоновому режимі без перевантаження веб сторінки бачить список свіжих новин для свого профілю.- веб-десктоп з відкритим кодом що будується на концепції хмарних обчислень що дозволяє співпрацю та зв'язок між користувачами. Більша частина проекту написана на PHP, XML, та JavaScript. Працює як платформа для веб-застосунків написаних з використанням Eyeos Toolkit. Включає в себе середовище робочого стола з 67 застосунками та системними утилітами. Доступна для портативних пристроїв через мобільний фронт-енд. Для розробників Eyeos надає Eyeos Toolkit - набір бібліотек для розробки застосунків для цієї ОС. Використовуючи інтегроване систему eyeSoft, що базується на Portage, кожен може створити власний репозиторій для eyeOS та поширювати застосунки через нього. Кожна частина робочого столу - це окремий застосунок, що активно використовує технологію AJAX для відправки команд користувача в форматі XML на сервер. На сервері Eyeos теж використовує XML для зберігання інформації. Кожному користувачу на сервері виділяється окремий XML файл. Отже як бачимо даний веб за стосунок повністю побудований на основі технології Ajax..

Потужний та сучасний он-лайн генератор інформації. Використовується як генератор новин для сайту. Активно використовує технологію фонового за стосунку Ajax. Веб-сайт сервісу.

Браузер по Wikipedia.org

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

На сьогоднішній день сучасні та потужні веб сервіси у мережі Інтернет проектуються із використанням останніх тенденцій інформаційних технології у сфері веб програмування. Технологія що дозволяє користувачам користуватись надсучасним і зручним інтерфейсом взаємодії це AJAX. За допомогою цієї концепції вдалось значно просунути практично до інноваційного рівня веб ресурси та проектування інформаційних систем.


2. Загальна інформація про програмні бібліотеки підтримки розробки Web - додатків


Останнім часом основною тенденцією при розробці Web-додатків є використання різноманітних програмних бібліотек, які прискорюють процес створення кінцевого продукту, а також надають можливості систематизувати програмний код за рахунок застосування шаблонів проектування, зокрема, «Модель-Подання-Контролер» (MVC). Існує велика кількість подібних бібліотек, найбільш універсальні та потужні часто називають каркасами розробки або фреймворками (frameworks). Серед них для мови PHP слід відзначити такі, як Zend Framework, Symfony, Cake PHP, CodeIgniter та інші. Деякі з них, наприклад Zend Framework або Symfony, надають максимальні 3 можливості порівняно з іншими, але є складними у вивченні та мають меншу швидкодію; інші - простіші у застосуванні, але надають менший набір функціональних можливостей. Узагальнена характеристика таких бібліотек наведена нижче.

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

. Використання шаблону MVC, який надає можливості розділити програмний код взаємодії з даними (model), візуальне подання у вигляді шаблонів сторінок (view), та узагальнений алгоритм (бізнес-логіку) обробки запиту користувача (controller), який безпосередньо використовує моделі та подання проекту.

. Наявність уніфікованого програмного інтерфейсу до реляційних баз даних, що надає можливість використовувати різні СУБД єдиним способом.

. Наявність мови шаблонів, що надає можливості максимально розділити HTML-шаблон сторінки від даних, які наповнюють її інформаційним змістом.

. Використання вбудованого механізму кешування, що забезпечує прискорення завантаження вже переглянутих сторінок.

. Використання засобів валідації даних, переданих від користувача з HTML-форм.

. Застосування механізму зручної для користувача адресації сторінок Web-додатку з можливістю відсікання небажаних або хибних адресів.

. Автоматичне шифрування Cookie-змінних, які надсилаються з сервера, а також управління сесіями.

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


2.1 Каркас додатків CodeIgniter


В CodeIgniter (www.codeigniter.com) реалізовано більшість можливостей, наведених вище, але, на відміну від інших каркасів, він має ряд переваг, які полягають у високій швидкості генерування серверної відповіді, простоті розробки, конфігурування та ініціалізації додатку, а також у наявності великої кількості бібліотечних функцій.

Схема виконання додатку з використанням CodeIgniter

Виконання програми засобами CodeIgniter відбувається через єдиний інтерфейс - програмний файл index.php, який виконує ініціалізацію та застосовує налаштування проекту з конфігураційних файлів, перетворює вхідні дані від користувача на внутрішні структури даних CodeIgniter та передає управління засобам маршрутизації. Останній модуль аналізує вхідні дані HTTP-запиту, а саме: метод HTTP, URL-адресу та заголовки. Якщо сторінка з такими ж вхідними даними вже існує у внутрішньому кеші CodeIgniter, то її вміст повертається без подальшої обробки безпосередньо користувачеві (через Web-сервер). В іншому випадку наступним кроком є фільтрація вхідних даних з метою уникнення несанкціонованих дій з боку можливого зловмисника: екранування даних, вилучення небажаних тегів тощо. Після цього в залежності від URL запит надходить до визначеного контролера додатку. Контролер, в свою чергу, обмінюється даними з моделями (виконує запити до бази даних, файлів тощо), за необхідності викликає бібліотечні та допоміжні функції і, наприкінці, передає дані у подання, де формується кінцева HTML-сторінка, яка передається користувачеві. Графічно дану схему ілюструє (Рисунок 2.1), на якому напівжирним шрифтом виділено ті елементи структури проекту, які кодуються програмістом, при цьому решта - вбудовані модулі CodeIgniter.


Рисунок 2.1 Схема виконання програми Codeigniter


Комплект файлів Codeigniter обєднується в групи ієрархічно поєднаних каталогів в залежності від функціонального призначення. Головним каталогом додатку є Application. Ядро системи відповідно розташоване у System (рисунок 2.2).


Рисунок 2.2 - Файлова структура проекту Codeigniter


Файл іndex.php Модуль маршрутизації Модуль кешування Модуль безпеки вхідних даних Подання додатку Контро- лер додатку Моделі додатку Бібліотеки Допом. функції Розширення HTTP-запит HTTP-відповідь (рисунок 2.1) Схема виконання програми CodeIgniter

Файлова структура проекту CodeIgniter

Комплект файлів CodeIgniter обєднується в групи ієрархічно поєднаних каталогів в залежності від функціонального призначення. Головним каталогом додатку є Application. Ядро системи відповідно розташоване у System (рисунок 2.2).

Конфігураційні файли проекту Контролери проекту Моделі проекту Подання проекту Файли Web-додатку Налаштування зєднань з БД Налаштування маршрутизації URL Загальні параметри конфігурації Власні бібліотеки розробника Файли перекладу текстових фрагментів Файли ядра CodeIgniter.

З рисунока 2.2 видно, що різноманітні налаштування проекту групуються в окремі файли php, зокрема, налаштування бази даних зберігаються у database.php, маршрутизація URL - у routes.php тощо. Це дозволяє змінювати різноманітні лаштунки безпосередньо в процесі функціонування Web-додатку, не змінюючи склад файлової системи та не запускаючи додаткових командних файлів, що часто буває критичним при використанні орендованого дискового простору на сервері для Web-проектів. Крім того, на рисуноку 2.2 напівжирним шрифтом виділено блоки проекту, які реалізовує безпосередньо програміст. Найголовнішими з них є:

-контролери (controllers), які є точками входу при виконанні обробки відповідного запиту;

-моделі (models), які уніфікують доступ до зовнішніх даних (баз даних, файлів, мережних служб тощо);

-подання (views), які зберігають шаблони Web-сторінок, відокремлюючи дизайн від інформаційного вмісту HTML-документу.

Контролери

Вибір контролера, якому передається управління при обробці запиту користувача, визначається URL-адресою запиту. Типова структура URL-адреси має наступний вигляд (рисунок 2.3):


Рисунок 2.3. Формат URL-адреси, що застосовується в CodeIgniter

адреса має фіксований формат, як показано на рисуноку 2.3. Першим параметром є назва контролера проекту, якому передається управління, далі метод у класі контролера, і остання частина - параметри, які отримає метод контролера.

Приклади:

-#"justify">-#"justify">Слід зауважити, що на рисуноку 2.3 після назви сайту не вказано index.php. Як правило, на практиці позбуваються використання index.php засобами Web-сервера. Наприклад, для Web-сервера Apache необхідно в кореневому каталозі проекту (див. рисунок.2.2) створити файл.htaccess і вписати в цей файл наступні інструкції: on $1 !^(index\.php|images|robots\.txt) ^(.*)$ /index.php/$1 [L]

При цьому завдяки використанню модулю mod_rewrite встановлюються правила обробки запиту перед передачею його Web-додатку (тут CodeIgniter). А саме: RewriteCond вказує, які файли пропускати без обробки (index.php, images, robots.txt), а RewriteRule задає правило, що будь-який запит, крім вказаного в RewriteCond необхідно модифікувати шляхом додавання перед ним рядку index.php. Таким чином, CodeIgniter розпізнає вірний формат URL.

Моделі

Моделі призначені для обєднання функцій взаємодії із зовнішніми даними (файлами, базами даних) у єдиний клас. Для використання моделі необхідно створити файл PHP визначеної структури (рисунок 2.4) в каталозі /application/models. При чому назви файлу та класу мають співпадати, а назва класу записується з великої літери. Структура класу включає назву класу, ознаку успадкування від універсальної моделі (CI_Model), а також конструктор __constructor(), в якому викликається код батьківського класу. Завантаження моделі з контролера відбувається за допомогою команди:

$this->load->model('Testmodel'); де Testmodel - назва класу моделі.

Лістинг Приклад коду файлу моделі проекту

<?phpTestmodel extends CI_Model {__construct()

{

// Call the Model constructor ::__construct();

}get_data($id)

{

$sql = "SELECT fieldl FROM tablel WHERE id = ?"; $q = $this->db->query($sql, array(id));

$row = $q->row(); $row->field1;

}


В подальшому виклик методів класу моделі відбувається наступним чином:

$this->Testmodel->get_data(10);, тобто модель стає обєктом базового класу CodeIgniter. Для автоматичного завантаження моделі при старті проекту необхідно у конфігураційному файлі /application/config/autoload.php вписати назву моделі в відповідний масив:

$autoload['model'] = array(„testmodel?);

Подання

Подання у CodeIgniter - це повна HTML-сторінка або її фрагмент (наприклад: заголовок, меню, основний вміст, нижня частина). Основне призначення подання - відділити логіку отримання даних від візуального вигляду. Як правило, подання містить мінімум PHP-коду: лише той, що призначено для виведення даних (echo, print тощо). Крім того, допустимим є використання циклів PHP (for, foreach тощо) для виведення даних, що мають вигляд списків, дерев та інших складних структур.

Практичне застосування контролера, моделі та подання наведено нижче.


.2 Асинхронний обмін даними засобами Ajax

(асинхронний Javascript) - це підхід до створення інтерактивних Web-додатків, згідно з яким обмін даними між Web-браузером та Web-сервером відбувається у фоновому режимі, що надає можливості оновлювати лише частину Web-сторінки. Такий підхід зменшує мережний трафік та дозволяє будувати додатки, наближені до «віконних», які є більш звичними для користувача. Головним чином підхід базується на використанні засобів мови JavaScript. При цьому з серверного боку жодних змін виконувати не потрібно у порівнянні з традиційним підходом. На клієнті за Ajax відповідає обєкт Javascript XMLHttpRequest. Передача даних за допомогою цього обєкта може відбуватись як у синхронному, так і у асинхронному режимі. Складність безпосереднього використання цього обєкта зумовлена неповною сумісністю реалізації різними браузерами. Тому, як правило, використовують крос-платформні бібліотеки, які уніфікують доступ до даного обєкта. Однією з таких бібліотек є JQuery. Серед її особливостей можна відзначити широкий спектр можливостей щодо пошуку та модифікації елементів Web-сторінки із застосуванням синтаксису мов XPath та CSS, наявність засобів управління подіями елементів сторінки, візуальні ефекти тощо. З огляду на задачі Ajax JQuery пропонує наступні можливості:

. Завантаження даних з сервера безпосередньо у елемент сторінки (наприклад, у параграф).

. Завантаження та виконання програмного коду мовою Javascript.

. Завантаження даних із сервера у форматі JSON, що спрощує перетворення даних у обєкти Javascript.

. Відправлення даних на сервер.

. Обробка помилок, що виникли при передачі даних.

. Серіалізація даних HTML-форми для подальшої передачі на сервер.


3. Ініціалізація проекту та обробка запиту засобами Codeigniter


.1 Ініціалізація обробки запиту засобами Codeigniter


Інсталяційний пакет CodeIgniter містить усі необхідні файли проекту, які необхідно розгорнути у кореневий каталог htdocs Web-сервера Apache, попередньо очистивши його вміст. Файлова структура при цьому буде мати вигляд як на рисунку 2.2. За замовчуванням каталоги controllers та views містять тестові файли controllers.php та welcome.php відповідно. Ці файли можна використовувати як зразок для створення власного проекту. Розглянемо детальніше хід виконання програми на прикладі даного зразка. Надрукувавши в браузері рядок запиту #"justify">

Рисунок 3.1 - Результат обробки стартової сторінки проекту-зразка


Алгоритм обробки полягає у наступному. Web-сервер, отримавши запит, передає його на виконання файлу index.php, який знаходиться безпосередньо в htdocs. Оскільки в URL не міститься жодного уточнення після index.php, то застосовуються налаштування за умовчанням, вказані в конфігураційному файлі routes.php:

$route['default_controller'] = 'welcome';

Завдяки цьому, управління передається у контролер Welcome з файлу application/controllers/welcome.php (за домовленістю назва файлу і класу має співпадати, але назва класу записується з великої літери). Код файлу welcome.php представлено:


Рисунок 3.2. Код файлу-контролера welcome.php


Основу файлу welcome.php складає клас Welcome, успадкований від CI_Controller - базового класу для всіх контролерів проекту. Суттєвим методом в ньому є index(), оскільки саме цей метод викликається за замовчуванням у випадку, коли URL не містить додаткових елементів, крім …/index.php. В цьому методі записано код: $this->load->view('welcome_message');

-який означає, що необхідно передати управління компоненту подання (view) з назвою файла welcome_message.php з метою генерації сторінки HTML. Як правило, файли подання містять код HTML з найпростішими вставками мовою PHP: операторами та функціями виведення (echo, print тощо), а також циклів (for, foreach та іншими). Це обумовлено власне метою подання - обєднання статичного коду HTML та динамічних даних, отриманих в результаті взаємодії програми з базою даних, файлами тощо.


.2 Приклад застосування CodeIgniter для задачі аутентифікації користувача


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

. Підготовка бази даних: створення таблиці, занесення даних, налаштування конфігурації проекту.

. Реалізація контролеру проекту з функціями виведення форми уведення даних про користувача та виведення результату аутентифікації.

. Створення моделі з функцією перевірки імені/паролю користувача.

. Створення подання сторінки форми уведення даних про користувача та сторінки результату аутентифікації.

Підготовка бази даних

Підготовка структур бази даних складається зі створення бази даних (команда create database userdb), вибору бази даних (команда use userdb), створення таблиці users із полями id, uname та upwd), а також внесення рядка даних у таблицю (команда insert into). Приклад виконання наведених команд зображено на рисунку 3.3.


Рисунок 3.3. Протокол команд підготовки бази даних


Реалізація контролера проекту

Як відзначалось вище, контролер виконує функцію управління ходом обробки запиту від користувача. В прикладі необхідно реалізувати два метода класу контролера: виведення форми уведення імя користувача та його паролю, а також вікна результату аутентифікації. Програмний код контролера показано на рисунку 3.4. Клас контролера містить два відповідних методи: index() та login_result(). Перший метод викликає подання login для виведення форми. Другий метод більш складний: відбувається завантаження обєкта взаємодії з базою даних та обєкта моделі usermodel. Після цього викликається у обєкті моделі метод login, який порівнює передані у якості параметрів дані про користувача з вмістом бази даних. Якщо порівняння виконано успішно, формується масив $data для передачі у подання та викликається обробка подання afterloginOK. Інакше - у масив $data записується поточний час і імя користувача.

Рисунок 3.4. Програмний код контролера User


Створення моделі проекту

Моделі традиційно відповідають за взаємодію із базою даних, тому відповідний клас прикладу містить функцію порівняння даних про користувача із вмістом бази даних. Слід зауважити, що CodeIgniter виконує підєднання автоматично під час завантаження обєкта database, тому код класу моделі містить лише команди доступу до таблиць бази даних (див. рисунку 3.5).

Рисунок 3.5. Реалізація класу моделі проекту


Зазначимо, що оскільки CodeIgniter є обєктно-орієнтованою бібліотекою, то результати, що повертаються з бази даних, мають вигляд обєктів класу запиту (у прикладі: $row->cnt), де члени класу відповідають полям, визначеним у запиті select.

Створення подання даних

Проект містить 3 форми: уведення даних про користувача, успішної та неуспішної аутентифікації користувача. Код відповідних файлів містить HTML-шаблон та фрагменту PHP. Вміст відповідних файлів наведено на


Рисунок 3.6. HTML-шаблон та візуальна форма сторінки уведення даних про користувача


Рисунок 3.7. HTML-шаблон та візуальна форма сторінки успішної аутентифікації (файл afterloginOK.php)


На рисунку 3.7 міститься фрагмент мовою PHP <?=$uname?>, яка вказує, що необхідно вставити значення змінної $uname, яка була передана з контролера ($data[„uname?]).


Рисунок 3.8. HTML-шаблон та візуальна форма сторінки неуспішної аутентифікації (файл afterloginBAD.php)


Аналогічно файлу afterloginOK.php на рисунку 3.8 проілюстровано HTML-шаблон із фрагментами PHP виведення змінних з іменем користувача та поточного часу, значення яких встановлено у контролері додатку.


.3 Приклад використання бібліотеки CodeIgniter для обміну даними засобами Ajax


Серед застосувань бібліотеки CodeIgniter найбільш поширеним є динамічне завантаження інформації у елементи сторінки HTML. Як приклад розглянемо задачу виведення підказки в залежності від набраного користувачем тексту в поле форми (рисунок 3.9). Для реалізації даної задачі необхідно створити три файли і розмістити їх на сервері:

. HTML-сторінка (hint.html).

. Програма мовою Javascript із використанням CodeIgniter (hint.js).

. Текстовий файл, який містить можливі підказки (hint.txt).

Рисунок 3.9. Результат роботи асинхронного завантаження даних у HTML-сторінку

сторінка містить код, який задає структуру документа (рисунок 3.10):


Рисунок 3.10. HTML-код сторінки


З рисунка 3.10 видно, що для виконання задачі включено підтримку бібліотеки CodeIgniter, а також зовнішній файл hint.js, який здійснює операції уведення-виведення. Крім того, задаються мінімально необхідні налаштування стилів (тег <style>), а також власне форма HTML із елементом city - текстовим полем та контейнером div з id=hint для виведення підказки.

Код програмного файлу hint.js наведено на рисунку 3.11. Особливостями роботи даної програми є використання засобів CodeIgniter для завантаження списку даних (назв міст) з сервера в асинхронному режимі (.get()).


Рисунок 3.11. Код програми мовою Javascript


Функція.ready() виконується в момент завантаження сторінки, функція cl() викликається, коли необхідно приховати та очистити підказку (наприклад, при виборі зі списку), а функція show_hint() виконується при натисканні користувачем клавіші клавіатури. Крім того, використовуються засоби пошуку елементів HTML із використанням синтаксису мови CSS, зокрема #hint>div означає «знайти усі елементи div всередині елемента з id=hint.

Для прикладу файл hint.txt, який містить підказки має наступний вигляд (риcунок 3.12):


Рисунок 3.12. Вміст файлу hint.txt, який містить можливі підказки


Для спрощення реалізації у прикладі серверна частина складається лише з простого текстового файлу. В реальних умовах це може бути програма будь-якою мовою, що використовується у Web-технологіях, в тому числі з залученням різноманітних бібліотек, зокрема, CodeIgniter. При цьому обробка відбувається таким же чином, як і в традиційній моделі (з використання Ajax).


4. Економічна частина


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

Додаткові витрати на співробітника іноді можуть перевищувати його заробітну плату.

Розрахунок:

.Розрахунок заробітної плати

Оклад системного адміністратора - 2602,6 грн.

Прибутковий податок (12%) - 312,31 грн.

Пенсійний фонд (1%) - 26,03 грн.

ЗП до видачі на руки - 2264,27 грн.

Зарплата за 14 робочих днів складає: 1320,90 грн.

.Розрахунок амортизації

Амортизбція (погашення, сплата боргів) - теж що і амортизаційні відрахування <#"justify">-Компютер: 6100 грн.

-Стіл: 450 грн.

-Стілець: 235 грн.

-Принтер: 640 грн.

Амортизацію розраховуємо за 3 групою, тобто відсоток повернення складає 25%.

С = 7425 грн. (Витрати на обладнання).

А = 7425 * 0,25 = 1856,25 грн. (Амортизація за рік роботи)

Так як робота над проектом тривала 14 робочих днів, маємо розрахувати відповідно і амортизацію:

Маємо умову:

1856,25 - 251(робочі дні)

х - 1

Тобто за один робочий день амортизація складає - 7,39 грн.

А(14 днів) = 14 * 7,39 = 103,53 грн.

.Витрати на сировину

Витрати на сировину і матеріали займають у собівартості промислової продукції в середньому більше 50-60 %, але мають значні відхилення залежно від галузі. Найвищі вони в галузях обробної промисловості. Економія цих витрат має вирішальне значення для зниження собівартості продукції.

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

Під час роботи над проектом не було потреби використовувати додаткові кошти на сировину, так як всі додаткові програми і саме середовище розробки на даються безкоштовно. Тому Всир дорівнюють нулю.

.Норма витрат

Норма витрат - гранично допустима величина витрат <#"justify">До норм витрат віднесемо:

-Світло;

-Опалення;

-Оренда робочого місця.

Плата за світло в місяць складає 35 грн. (31 день), тобто за день 1,13 грн. а за 14 робочих днів - 15,80 грн.

Опалення розрахуємо за тим же принципом:

Місяць - 235 грн. (31 день);

День - 7,58 грн.;

днів - 106,13 грн.;

Оренда - 400 грн. в місяць, 14 робочих днів складає 180,64 грн.

В сумі отримуємо:

НВ = 15,80 + 106,13 + 180,64 = 303,8 грн.

Тепер додомо всі витрати і отримаємо собівартість проекту.

Ва?ртість (собівартість, англ. Cost) - Вартість факторів виробництва, які необхідно витратити на виробництво продукції, та її збут.

Відображаючи рівень витрат на виробництво <#"justify">5. Частина з охорони праці


Загальні положення

. До самостійної роботи на персональних комп'ютерах (прийом та введення інформації коректування, читання з екрану) допускаються особи віком більше 18 років, які пройшли навчання з безпечних методів виконання робіт та інструктаж на робочому місці.

. Працюючий на компютері повинен мати не нижче І-ІІ кваліфікаційної групи з електробезпеки.

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

. Розташування компютера:

а) компютер встановлюють на відстані не менше 1 м від стін, між собою на відстані не менше як 1,5 м;

б) виключають можливість прямого засвічування екрану джерелом природного освітлення;

в) поверхня екрану повинна знаходитись на відстані 400-700 мм, від очей користувача;

г) висота робочої поверхні столу повинна становити 680-800 мм, ширина - не менше 500 мм;

д) стілець повинен мати висоту 280-320 мм, ширину - не менше як 380 мм;

є) повинна бути стійка підставка для ніг шириною не менше 300 мм.

. Особам, які працюють на комп'ютерах забороняється:

-торкатися обірваних та оголених електричних проводів;

-користуватися пошкодженими розетками та вилками;

працювати при знятому кожусі на моніторі чи системному блоці;

працювати на комп'ютерах, монітори яких розташовані один проти другого в межах кімнати (приміщення).

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

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

. Особи, які працюють на компютері повинні дотримуватися наступного режиму праці:

-при введенні даних, читанні інформації з екрану безперервна тривалість роботи не повинна перевищувати 4-х годин при 8-ми годинному робочому дні;

-через кожну годину роботи необхідно робити перерву на 5-10 хвилин, а через 2 години - 15 хвилин;

перерви використовувати для зорового та фізичного розвантажування:

а) стоячи або сидячи робити похитування головою ліворуч-праворуч (темп швидкий);

б) стоячи або сидячи робити нахили голови уперед-назад (темп помірний);

в) масаж лоба, злегка його погладжуючи, а також погладжуючи ділянки над бровами у напрямку до скронь;

г) стоячи або сидячи здійснюємо самомасаж шиї та потилиці,погладжуючи потилицю та шию у напрямку до торса;

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

Вимоги безпеки перед початком роботи

. Перед початком роботи перевірити:

-розміщення складових частин компютера (монітор, принтер, та інших блоків);

-монітор слід розташовувати таким чином, щоб кут зору на екран монітора становив 10-15 градусів, а відстань до екрана 400-800 мм.

цілісність, з'єднувальних кабелів.

підключення складових частин компютера згідно схеми зєднання.

наявність передбачених захисних екранів.

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

забезпечити освітлення робочого місця таким чином, щоб не утворювались відблиски від клавіатури та екрану відеомонітора в напрямку очей працюючого;

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

Вимоги безпеки під час роботи

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

Вимоги безпеки по закінченні роботи

. Виключити компютер в послідовності згідно з інструкцією по експлуатації.

. Доповідати особі,яка відповідає за технічний стан компютера, про всі зауваження і несправності в роботі компютера, якщо вони риси місце.

. Привести в порядок робоче місце, прибрати зайві предмети та сміття.

. Покласти носії інформації до місць збереження.

Вимоги безпеки в аварійних ситуаціях

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

. При необхідності надати першу медичну допомогу потерпілим.

програмування інтернет бібліотека ajax

Висновки


У ході проектування завдання розглянуто основні принципи та підходи щодо розробки автоматизації вирішення проблем поставленого завдання. Основною метою проектування було використання системного аналізу, декомпозиції проблеми, знаходження оптимальних шляхів вирішення проблеми а також використання Аjax при створені веб додатків такого типу. Судячи із кінцевого результату проектування, вирішення проблеми за темою дипломного проектування було здійснено в повному обсязі. Засвоєно принцип інтеграції технології AJAX у веб-ресурс та основні програмні реалізації роботи Аjax на стороні клієнтської машини, методи декомпозиції проблем та складних ємкісних завдань, основні підходи до побудови програмних структур мовою php, а також javascript, розглянуто сервісні функції роботи веб-браузерів в різних операційних системах для побудови кросбраузерності веб-ресурсу. Для використання бази даних освоєно синтаксис mysql та основні функціональні можливості реляційних таблиць. Для перевірки роботи системи вивчив підхід до створення тестового алгоритму для веб додатку.

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

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

Дипломний проект надає можливість вивчити новітні технології програмування Інтернет сайтів та освоїти сучасні методи та підходи до проектування веб-додатків високо рівня складності.


Список використаних джерел


1.Upton, D. CodeIgniter for Rapid PHP Application Development [Текст] / D. Upton. - Packt Publishing, 2007. - 244 с. - ISBN 978-1847191748.

.www.ganzh.blog.net.ua/2008/03/15/ajax-tehnolohiya-velycheznyh-mozhlyvostej/

.www.ua.wikipedia.org/wiki/JSON

.www.w3.org/DOM/

.Бретт Маклафлин. Изучаем Ajax. - С-П.: Питер, 2008. - 448 с.

.Дейв Крейн, Бер Бибо, Джордон Сонневельд. Ajax на практике. - М.: Вильямс, 2008. - 464 с.

.Дейв Крейн, Эрик Паскарелло, Даррен Джеймс. Ajax в действии. - М.: Вильямс, 2006. - 640 с.

.Крейн, Д. Ajax в действии [Текст] / Д. Крейн, Э. Паскарелло, Д. Джеймс. - М.: Вильямс, 2008. - 640 с. - ISBN 978-5-8459-1034-9.

.Марина Дмитриева. JavaScript. - С-П.: БХВ-Петербург, 2004. - 336 с.

.Николай Прохоренок. HTML, JavaScript, PHP и MySQL. Джентльменский набор Web-мастера, 2010

.Николас Закас, Джереми Мак-Пик, Джо Фосетт. Ajax для профессионалов. - С-П.: Символ-Плюс, 2007. - 488 с.

.Теория систем и системный анализ в управлении организациями: Справочник. / Под ред. В.Н. Волковой и А.А. Емельянова. - М.: Финансы и статистика, 2006 - 848 с.


Зміст Список умовних позначень та скорочень Вступ . Розробка інтерактивного інтерфейсу web-додатків засобами бібліотеки Codeigniter та технології A

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ