Автор: Пользователь скрыл имя, 15 Января 2012 в 22:00, дипломная работа
У нашій епосі всесвітня павутина має дуже велике значення. Великі корпорації, маленькі фірми, навіть фізичні особи мають свої власні сайти. Сучасні сайти знатно відрізняються від сайтів, які створювались декілька років тому – нові веб-технології з’являються майже з кожним роком та доповнюють існуючі сайти. Кожен, хто вирішив створити собі власний сайт, хоче зробити його, використовуючи останні новинки веб-індустрії. Однак не всі можуть створювати сайти взагалі.
Вступ 5
Постановка завдання 7
1. Огляд існуючих технологій 8
1.1 Веб-розробка 8
1.1.1 Серверні мови 8
1.1.2 Клієнтські мови 17
1.2 Системи керування вмістом 21
1.3 HMTL5 26
2. Вибір технологій розробки 30
2.1 Мова програмування 30
2.2 Система керування базами даних 32
2.3 JavaScript фреймворк 32
2.4 WYSIWYG редактор 33
3. Опис роботи 34
3.1 Абстрактна модель програми 34
3.2 Проектування бази даних 34
3.3 Створення структури програми 36
3.4 Розробка ядра програми 37
Висновки 39
Література 40
Додаток А 41
Додаток Б 44
Стратегія Open Source, і розповсюдження початкових текстів програм в масах, безсумнівно справили благотворний вплив на багато проектів, в першу чергу — Linux хоч і успіх проекту Apache сильно підкріпив позиції прихильників Open Source. Сказане відноситься і до історії створення РНР, оскільки підтримка користувачів зі всього світу виявилася дуже важливим чинником в розвитку проекту РНР.
Ухвалення стратегії Open Source і безкоштовне розповсюдження початкових текстів РНР надало неоціниму послугу користувачам. Додатково, користувачі РНР в усьому світі є свого роду колективною службою підтримки, і в популярних електронних конференціях можна знайти відповіді навіть на найскладніші питання.
Ефективність є дуже важливим чинником при програмуванні для середовищ розрахованих на багато користувачів, до яких належить і web. Важливою перевагою PHP є те, що ця мова належить до інтерпретованих. Це дозволяє обробляти сценарії з достатньо високою швидкістю. За деякими оцінками, більшість PHP-сценаріїв (особливо не дуже великих розмірів) обробляються швидше за аналогічні їм програми, написані на Perl. Проте, щоб не робили розробники PHP, виконувані файли, отримані за допомогою компіляції, працюватимуть значно швидше — в десятки, а іноді і в сотні разів. Але продуктивність PHP цілком достатня для створення цілком серйозних веб-застосунків.
PHP
– одна з найпопулярніших скриптових
мов веб-програмування. Основними перевагами
PHP є: простота синтаксису, висока продуктивність,
крос-платформеність (і, як наслідок, підтримка
багатьма хостингами).
Як випливає з назви, програми на клієнтських мовах обробляються на стороні користувача, як правило їх виконує браузер. Це і створює головну проблему клієнтських мов - результат виконання програми (скрипта) залежить від браузера користувача. Тобто якщо користувач заборонив виконувати клієнтські програми, то вони виконуватися не будуть, як би не бажав цього програміст. Крім того, може статися таке, що в різних браузерах або в різних версіях одного і того ж бразуер один і той же скрипт буде виконуватися по-різному. З іншого боку, якщо програміст покладає надії на серверні програми, то він може спростити їх роботу і знизити навантаження на сервер за рахунок програм, що виконуються на стороні клієнта, оскільки вони не завжди потребують перезавантаження (генерацію) сторінки.
Поширеними кліентксімі мовами веб-програмування є:
JavaScript
- об'єктно-орієнтована
Розроблена
в компанії Netscape. На теперішній час
підтримується більшістю
JavaScript
має низку властивостей об'
JavaScript має C-подібний синтаксис, але в порівнянні з мовою Сі має такі корінні відмінності:
JavaScript містить декілька вбудованих об'єктів: Global, Object, Error, Function, Array, String, Boolean, Number, Math, Date, RegExp. Крім того, JavaScript містить набір вбудованих операцій, які, строго кажучи, не обов'язково є функціями або методами, а також набір вбудованих операторів, що управляють логікою виконання програм. Синтаксис JavaScript в основному відповідає синтаксису мови Java (тобто в кінцевому рахунку успадкований від C), але спрощений порівняно з ним, щоб зробити мову сценаріїв легкою для вивчення. Так, приміром, декларація змінної не містить її типу, властивості також не мають типів, а декларація функції може стояти в тексті програми після неї.
Як
і багато інших мов програмування,
JavaScript має фреймворки, що дозволяють
легко реалізовувати деякі можливості,
які важко або довго реалізовувати самостійно.
Порівняємо деякі з них.
jQuery
Цей фреймворк являється досить простим в освоєнні і дуже ефективним за можливостями. Підходить для реалізації невеликих і середніх веб-додатків. Має досить докладну документацію. Включає в себе можливості, що дозволяють зручно працювати з DOM-моделлю, подіями, AJAX-запитами, анімацією. Підтримує систему додатків, що дозволяє стороннім розробникам писати власні плагіни. База плагінів дуже велика, можна знайти плагін практично для будь-якої задачі. Існує також проект jQuery UI, що дає можливість реалізувати графічний користувальницький інтерфейс, використовуючи даний фреймворк. Рекомендується в якості першого фреймворку для вивчення.
jQuery
Використовується більш ніж 31% від 10,000
найбільш відвідуваних сайтів. jQuery є найбільш
популярною бібліотекою JavaScript, яка потужно
використовується на сьогоднішній день.
jQuery є вільним, відкритим програмним забезпеченням
з подвійним ліцензуванням під MIT License
та GNU General Public License другої версії. Синтаксис
jQuery розроблений, щоб зробити орієнтування
у навігації зручнішим завдяки вибору
елементів DOM, створенню анімації, обробки
подій, і розробки AJAX-застосувань. Основне
завдання jQuery — це надавати розробнику
легкий та гнучкий інструментарій кросбраузерної
адресації DOM об'єктів за допомогою CSS та
XPath селекторів.
Dojo
Toolkit
Дуже
сильний фреймворк, підходить для
реалізації веб-додатків середньої
складності. Включає в себе Dojo Base
(базові кроссбраузерну скрипти, що володіють
широким функціоналом), Dojo Core (розширені
можливості), Dijit (UI складова фреймворку)
і Dojox (бібліотека розширень, плагіни, які
працюють, але не внесені до Core і Dijit).
ExtJS
Вважається
самим потужним, стабільним і профессійним
JavaScript-фреймворком. Ідеально підходить
для великих веб-додатків. Важкий в освоєнні.
Распространяеться за подвійною ліцензією
- комерційною і opensource.
Система керування вмістом (СКВ; англ. CMS (Content Management System)) — програмне забезпечення для організації веб-сайтів чи інших інформаційних ресурсів в Інтернеті чи окремих комп'ютерних мережах.
Перші CMS були розроблені на великих корпораціях для організації роботи з документацією. У 1995-му р. від компанії CNET відокремилася окрема компанія Vignette, яка започаткувала ринок для комерційних CMS. З часом діапазон продукції розширювався і все більше інтегрувався у сучасні мережеві рішення аж до популярних веб-порталів.
Багато сучасних CMS поширюються як безкоштовні і легкі у встановленні (інсталяції) програми, які розробляються групами ентузіастів під так званою ліцензією GNU/GPL.
Системи
управління веб-сайтом часто розраховані
на роботу у певному програмному
середовищі. Наприклад, система MediaWiki,
під управлінням якої працює Вікіпедія,
написана мовою програмування PHP і зберігає
зміст і налаштування у базі даних типу
MySQL або PostgreSQL; тому для її роботи потрібно,
щоб на сервері, де вона розміщена, були
встановлені веб-сервер (Apache, IIS чи інший),
підтримка PHP та системи керування базами
даних MySQL або PostgreSQL, а також, в разі необхідності,
додаткові програми для обробки зображень
чи математичних формул. Такі вимоги є
досить типовими для open-source CMS.
Різновиди
CMS
На
даний момент існує велика кількість
професійних CMS, що дозволяють створювати
сайти досить великого обсягу.
Для
порівняння візьмемо три самих популярних
на даний момент безкоштовних CMS - Drupal,
Joomla та WordPress
Drupal
Ця
CMS є однією з найбільш стабільних.
На ній створено корпоративні сайти
деяких компаній зі світовими іменами,
тому розробники дуже сильно стежать за
стабільністю та безпекою своєї розробки.
У Drupal'і є можливість вбудувати один з
двох WYSIWYG-редакторів (What You See Is What You Get
англ., Що бачиш те й отримуєш) - TinyMCE або
FCKEditor. Обидва являються досить потужними
і гнучкими засобами редагування змісту.
Робота з зображеннями не є сильною стороною
цієї CMS. У базовий пакет не входить функція
вставки зображень. Для реалізації подібної
функції можна скористатися редактором
TineMCE спільно з медіаменеджером IMCE. У цілому
робота з зображеннями не ергономічна.
Шаблони є сильною стороною цієї CMS. Можливості
редагування тем і шаблонів дуже великі.
З інтеграцією власних шаблонів зможе
впоратися навіть починаючий PHP-програміст.
Joomla
Досить
поширена CMS. Має цілком стабільне
ядро, проте більшість додатків,
написаних сторонніми розробниками,
дуже критикуються через проблеми з
безпекою. Є можливість вбудувати
більшість сучасних WYSIWYG-редакторів,
проте найбільш зручним з безкоштовних
вважається JCE, який був розроблений спеціально
для Joomla. Версії 1.0.x не підтримують шаблони,
проте досить зручно влаштована система
роботи з CSS а також є зручні специфічні
особливості розміщення компонентів і
модулів на сторінці. По розширюваності
функціоналу Joomla стоїть попереду інших
розглянутих CMS. Існує три типи розширень
- компоненти, модулі та Мамботи. По суті
ця CMS в основному побудована на розширеннях.
WordPress
Стандартно
в WordPress'і використовується трохи
урізаний TinyMCE та поряд з ним - простий
текстовий редактор (перемикання
між ними «на льоту»). При бажанні
можна встановити і повну версію
TinyMCE. Якщо TinyMCE не влаштовує, то можна
встановити замість нього інший редактор,
наприклад FCKMonkey. У WordPress'і цілком зручно
можна додавати картинки в редактор. При
завантаженні файлу можна відразу вказати
його назву, підпис. Автоматично буде зроблена
мініатюра. Тобто розрахунок на те, щоб
з цим завданням впорався недосвідчений
користувач. Якщо ж скористатися окремим
плагіном, то можна додатково вказати
розміри картинки, мініатюри та інші параметри.
Для WordPress'а створені тисячі шаблонів і
багато з них виконані на дуже хорошому
дизайнерському рівні. Пристрій WordPress
такий, що під нього нескладно переробити,
скажімо, html-шаблон. У шаблонах використовуються
звичайні PHP-функції, тому ніяких складнощів
з вивченням так званих мов шаблонів немає.
Про створення шаблонів існує досить багато
статей, навіть є он-лайн генератор. WordPress
можна розширити за рахунок плагінів -
це різні php-скрипти, які автоматично підключаються
до основного «ядра». Таким чином можна
не просто додати потрібну функціональність,
а й змінити вже існуючу. Створити плагін
не дуже складно, все залежить від рівня
знання PHP.
HTML5 — наступна версія мови HTML, що перебуває у стані розробки у W3C. До складу робочої групи з HTML 5 увійшли AOL, Apple, Google, IBM, Microsoft, Mozilla, Nokia, Opera і кілька сотень інших виробників.
Робота над HTML5 почалася вкінці 2003 року, як доказ концепції, що можна розширити форми HTML4 багатьма можливостями з XForms 1.0, не вимагаючи змін несумісних із існуючими веб-сторінками. На цій ранній стадії, хоча проект уже був доступний для громадськості, і приймав критичні зауваження, специфікація була захищена авторськими правами Opera.
Информация о работе Розробка середовища для управління сайтами на основі HTML5