Средства разработки сайтов

Автор работы: Пользователь скрыл имя, 10 Июля 2013 в 11:48, реферат

Краткое описание


В данной работе рассказывается о создании сайтов в интернете.
Тема «Средства разработки сайтов» объединяет огромный пласт технологий и программных продуктов, направленных на создание сетевых приложений, таких как языки программирования, библиотеки, фреймфорки, интегрированные среды разработки, поэтому она всегда будет актуальна ,пока будут востребованы информационные технологии.
Одна из важных целей создания сайта - это предоставление информации посе-тителям сайта.
В связи с тем, что целью большинства сайтов является донесение какой-либо тематической информации посетителям, именно информационная составляющая явля-ется основной целью посещения таких сайтов

Содержание


Введение 3
1. Подходы к созданию web-сайтов 1
1.1. Статические сайты 1
1.2. Динамические сайты 1
2. Среды разработки 3
2.1. Редакторы HTML 3
2.3. Интегрированные среды разработки 5
3. Системы управления контентом (CMS) 6
3.1. 1С-Битрикс 7
3.2. Joomla 9
3.3. Drupal 12
4. Фреймворки для web-приложений 15
4.1. Wt C++ Web Toolkit 16
Заключение 19
Список используемых источников 20

Вложенные файлы: 1 файл

Средства разработки сайтов.docx

— 827.67 Кб (Скачать файл)

Полная локализация содержимого  поддерживается сторонними модулями, которые не входят в поставку Drupal, но могут быть скачаны с сайта разработчиков.

В «Drupal» предлагается гибкая схема организации структуры сайта на основе таксономии. Таксономия — механизм, позволяющий создавать произвольное количество тематических категорий для содержимого сайта и ассоциировать их с модулями, обеспечивающими ввод и вывод информации. Категории могут представлять плоские или иерархические списки, либо сложные структуры, где элемент может иметь несколько «родителей» и несколько дочерних элементов. С помощью подобной схемы одними и теми же модулями возможна организация различных вариантов структуризации содержимого. Например, легко создаётся сквозной список «ключевых слов» для всех документов сайта и т. п.

Другая парадигма появилась  с созданием в «Drupal» расширения «Content Construction Kit» . CCK позволяет дополнять документы новыми полями различных типов — от полей ввода URL и email, до полей хранения и отображения мультимедийных файлов. Также посредством дополнительных модулей к CCK (например ,Node reference) можно организовать связи между документами, не используя механизм таксономии.

 

4. Фреймворки для web-приложений

Фреймворк – структура программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. Употребляется также слово «каркас», а некоторые авторы используют его в качестве основного, в том числе не базируясь вообще на англоязычном аналоге. Можно также говорить о каркасном подходе как о подходе к построению программ, где любая конфигурация программы строится из двух частей: первая- постоянная часть — каркас, не меняющийся от конфигурации к конфигурации и несущий в себе гнезда, в которых размещается вторая, переменная часть— сменные модули или точки расширения [14].

Фреймворк отличается от понятия  библиотеки тем, что библиотека может  быть использована в программном  продукте просто как набор подпрограмм  близкой функциональности, не влияя на архитектуру программного продукта и не накладывая на нее никаких ограничений. В то время как фреймворк диктует правила построения архитектуры приложения, создавая на начальном этапе разработки каркас с поведением по умолчанию, который нужно будет расширять и изменять согласно требованиям этого фреймворка. Пример программного фреймворка— CMF (Content Management Framework), а пример библиотеки— модуль электронной почты. Также, в отличие от библиотеки, которая объединяет в себе набор близкой функциональности, каркас содержит в себе большое число разных по тематике библиотек [14].

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

 

Рисунок 4.1 – Традиционная модель web-приложения.

 

Чаще всего используются языки ,«доминирующие» в разработке веб-приложений, такие как Java, PHP, Python, Perl. За исключением PHP, который был специально спроектированным для разработки веб-приложений, для языков программирования предлагаются различные фреймворки, облегчающие разработку веб-приложений. Например, J2EE и Struts для Java, Perl::CGI для Perl, или Zope для Python. Рассмотрим наиболее популярные фреймворки для основных типов языков программирования.

На каждом шаге браузер запрашивает новую страницу на сервере и может передать данные HTML формы в запросе. На стороне сервера, веб-приложение обрабатывает запрос, определяет сессии, выполняет бизнес-логику, и наконец, генерирует страницу ответа. Кроме этого, страница может содержать не только HTML, но и JavaScript для повышения интерактивности. Однако, JavaScript имеет различного рода причуды при работе в различных браузерах, что требует больших усилий для написания кроссбраузерного кода.

Весьма успешные приложения, такие как GMail, Google Map компании Google, не следуют этой парадигме. Вместо этого они используют сочетание JavaScript и серверных методов, часто упоминаемых, как AJAX, для динамического обновления веб-страницы с новым содержанием, получаемым от сервера без перезагрузки всей страницы. Технология AJAX использует JavaScript, чтобы выполнить HTTP запрос к серверу в фоновом режиме (например, Есть новая почта?). Cервер генерирует соответствующий ответ, (например, «Да, 2 письма. 1..., 2...) в XML формате. Наконец, на стороне клиента JavaScript анализирует ответ и выполняет обновление веб-страницы ,модифицируя Document Object Model (DOM) (например, добавляя два новых почтовых сообщения в папку «Входящие»).

Эта технология вызвала много  шума в 2005 году, причина которого –  фундаментальные изменения в подходах к тому, как может быть построено веб-приложение. Больше не требуется передачи новой веб-страницы в ответ на каждое событие. AJAX представил новые возможности для веб, следовательно, иногда ассоциируется с совершенно новой и более интерактивной версией интернета WEB 2.0. В тоже время использование этих технологий порождает много проблем. Разработчик приложений должен освоить ряд новых технологий, чтобы использовать AJAX. В дополнение к фреймворку ,используемому на стороне сервера и HTML/CSS, разработчик должен освоить Dynamic HTML (DHTM), который позволяет выполнить модификацию Document Object Model (DOM) с помощью JavaScript, некоторую дополнительную информацию о протоколе HTTP, чтобы создавать корректные GET/POST запросы с помощью JavaScript, и, наконец, использование XMLHttpRequest API. Так же следует учесть различия между браузерами и желание обеспечить поддержку более старых версий, не поддерживающих данную технологию.

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

4.1. Wt C++ Web Toolkit

В отличии от традиционной модели веб-приложений, модель библиотеки Wt, как и традиционных GUI библиотек, основывается на виджетах, рисунке 4.2.

Рисунок 4.2 – Событийная модель

 

Концептуально виджеты организованы в виде дерева, а функции обратного вызова связаны с конкретными событиями. В ответ на событие вызывается метод, выполняющий определенное действие или модифицирующий виджет. Wt является молодой С++ библиотекой для разработки веб-приложений. Модель Wt во многом похожа на модели существующих библиотек GUI (таких как MFC или Qt). Wt скрывает от разработчика многие детали технологий (HTML, Forms/CGI, JavaScript, AJAX, и т.д.), мало чем, отличаясь от того, как библиотека Qt скрывает детали лежащих в основе библиотек X Window System или Microsoft Windows GUI. Так как Wt API реализует абстракцию для базовых технологий (Forms, JavaScript или AJAX), Wt выбирает способ взаимодействия с веб-браузером в зависимости от технической поддержки со стороны браузера. Таким образом, ответственность за работу веб-приложения в джунглях веб-браузеров передается от разработчиков приложения к разработчикам библиотеки.

Основные компоненты. Пользовательский интерфейс организован в виде иерархического дерева виджетов, объектов WWidget. WWidget соответствует таким визуальным элементам, как, например, текст (WText), таблица (WTable), строка ввода (WLineEdit) или более сложным составным виджетам. Каждому WWidget соответствует прямоугольная область, для которой реализуется управление содержимым и обработка событий. Библиотека предоставляет ряд основных виджетов, которые непосредственно соответствуют элементам HTML, все они являются потомками WWebWidget (WText, WTable, WImage, ...). Эти виджеты непосредственно управляют модификацией HTML DOM. Более сложные составные виджеты являются потомками WCompositeWidget, они не производят непосредственной модификации HTML DOM, но могут использовать открытие вызовы API составляющих их виджетов. Каждое приложение Wt начинается с создания экземпляра объекта WApplication. Таким образом, каждая новая сессия имеет свой соответствующий экземпляр WApplication. WApplication содержит ссылку на корневой элемент дерева виджетов, информацию о возможностях браузера, обеспечивает поддержку локализации.

Управление сессиями. Подобно тому, как несколько экземпляров обычного приложения могут быть запущены одновременно, Wt запускает отдельное веб-приложение для каждой отдельной веб-сессии. Каждая новая сессия представляет новый путь исполнения, который начинается с wmain, точки входа в приложение. Таким образом, программисту необходимо лишь реализовать однопользовательское приложение, если только, не планируется использовать общие ресурсы (например, базы данных, в данном случае должны применяться стандартные методы совместного использования данных). Текущая версия Wt реализует различные пути исполнения за счет использования различных процессов. Таким образом, для каждой новой сессии, Wt порождает новый процесс. Это главное преимущество, обеспечивающееся уровнем защиты памяти между различными сессиями на уровне процессов. Недостатком такого подхода является то, что может потребоваться некоторое количество невыгружаемой памяти для каждого процесса. В будущем Wt сможет предложить другой вариант разделения, в том числе на потоках.

Сигналы и слоты. Библиотека Wt использует механизм сигналов и слотов для осуществления передачи событий. События пользовательского интерфейса, такие как щелчки мыши или изменение текста, Wt представляет как сигналы, связанные с конкретным виджетом. Любой метод объекта, имеющий сигнатуру совместимую с сигналом, может быть использован в качестве слота. Всякий раз, когда посылается сигнал, все слоты, которые были связаны с сигналом, вызываются. Парадигма сигналов и слотов представляет собой типизированную и управляемую альтернативу обратным вызовам.

Локализация. С учетом масштабов глобальной паутины одно из важнейших свойств сайта - интернационализация и локализация. Wt обеспечивает поддержку наборов ресурсов сообщений. Объект WMessage представляет фрагмент текста, который зависит от текущей локали, переводы сообщей для каждого языка хранятся в XML формате. При изменении локали используется WApplication::SetLocale() при этом приложение автоматически обновит соответствующие виджеты с локализованным текстом.

Время жизни сессии. Wt использует подтверждающий активность протокол между клиентом и сервером для определения активности сессии. Пока веб-страница отображается в браузере пользователя, сессия продолжает оставаться активной, в противном случае сессия завершается. Кроме того приложение может выполнить завершение до конца сессии, вызвав WApplication::quit(). В любом случае, когда сессия завершается, корневой виджет будет уничтожен, что позволяет приложению освободить любые ранее выделенные ресурсы.

Wt реализует две основные задачи:

  • рендеринг и управление деревом HTML DOM в браузере;
  • обработка событий, таких как ввод данных или щелчки мыши.

Все события, которые могут  быть захвачены для обработки  отображаются на сигналы соответствующих виджетов. Когда происходит событие (например, нажатие кнопки "Ok"), браузер связывает целевой объект и соответствующий сигнал (например, OkButton->clicked) передавая данные на сервер (с использованием AJAX или же формы HTML). На сервере соответствующий экземпляр приложения Wt обрабатывает полученные данные для изменения дерева виджетов. Далее, события распространяются путем проецирования сигнала целевого объекта на все связанные слоты. При этом они могут выполнять бизнес-логику приложения, а так же модификацию дерева виджетов. Все изменения дерева виджетов отслеживаются библиотекой Wt и преобразовываются в изменения серверной модели HTML DOM. Наконец, в зависимости от метода установки связи данные передаются обратно в браузер.

 

Заключение

Одна из наиболее примечательных технологических революций, произошедших за последние десять лет, связана с появлением Web-сервисов. В этом можно убедиться, вспомнив ,какими были приложения и интеграция данных в конце 1990-х.

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

Прошли те дни, когда сайты  и приложения могли взаимодействовать  только с одним Web-браузером и только с одной операционной системой.

В настоящее время сайт способен не только донести информацию о чем-либо, но и продать услугу или товар посетителям сайта.

По итогам моего реферата можно выявить следующее-у интернет-сайта есть три основные важные задачи:

    • имиджевая;
    • информационная ;
    • маркетинговая.

Рассмотрев их подробнее  мы узнаем, что :

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

Одна из важных целей сайта - это предоставление информации посетителям  сайта. За что и отвечает информационная задача в разработке сайтов.

И наконец маркетинговая  задача ,основой которой является не только предоставление и донесение информации до потенциальных клиентов, различных посетителей, а также её реклама в различных сферах общественной жизни.

Основные технологии создания Web-приложений следующего поколения в большинстве своем значительно упрощают соблюдение как давно существующих, так и находящихся в процессе становления стандартов Интернета. Выше уже отмечалось, что язык AJAX сам по себе основан на общепринятых стандартах Всемирной паутины. Наиболее совершенные приложения, созданные с помощью AJAX, должны функционировать абсолютно одинаковым образом независимо от используемых браузеров или платформ.

 

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

 

1.

С.Г. Фадюшин – Информатика  для менеджеров. Курс лекций. Владивосток, 2010. http://library.fentu.ru/book/iu/386/index.html

2.

А. Лебедев – Ководство. М.: Студия Артемия Лебедева, 2000.

http://www.artlebedev.ru/kovodstvo/sections/54/

3.

ARPAnet – Статья из Википедии.

http://ru.wikipedia.org/wiki/ARPANET

4.

Интернет – Статья из Википедии.

http://ru.wikipedia.org/wiki/Internet

5.

HTTP – Статья из Википедии.

http://ru.wikipedia.org/wiki/HTTP

6.

Джон Коггзолл – PHP 5. Полно Символ-Плюс е руководство. М.: Вильямс, 2006.

7.

Марк Саммерфилд – Программирование на Python 3. М.: Символ-Плюс, 2009.

8.

Дэвид Флэнаган – JavaScript. Подробное руководство. М.: Символ-Плюс, 2008.

9.

Герберт Шилдт. Java Руководство для начинающего. М: Вильямс, 2012

10.

Apache – Статья из Википедии.

http://ru.wikipedia.org/wiki/Apache

11.

Internet Explorer – Статья из Википедии.

http://ru.wikipedia.org/wiki/IE

12.

Савельева Н. Системы управления контентом (рус.) Открытые системы. — 2004.

13.

Колисниченко Д. Движок для  вашего сайта. CMS Joomla!, Slaed, PHP-Nuke. — Петербург: БХВ, 2008.

14.

Фреймворк – Статья из Википедии. http://ru.wikipedia.org/wiki/framework

15.

Статья: Веб-редактор  
http://wiki.webimho.ru

16.

Текстовой редактор Sublime Text – Статья из Википедии.  
http://ru.wikipedia.org/wiki/Sublime_Text

17.

Content management system – Статья из Википедии.  
http://ru.wikipedia.org/wiki/IDE

18.

Что есть «Битрикс»  http://www.webdebug.ru/stati/1c-bitrix/bitrix/

19.

Архитектура 1С Битрикс

http://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=2817

20.

Django – Справочное руководство http://djbook.ru

21.

Колисниченко Д. Н. Joomla! 1.5. Руководство пользователя. — М.: «Диалектика», 2009. 

22.

Хаген Граф Создание веб-сайтов с помощью Joomla! 1.5— М.: «Вильямс», 2009.

23.

Бэрри Норт Joomla! Практическое руководство.— М.: «Символ-Плюс, 2008.

24.

Колисниченко  Денис Николаевич Drupal 7. Руководство пользователя. — М.: «Диалектика», 2011. 

25.

Дэвид Мерсер Drupal 6. — М.: «Вильямс», 2009.

26.

Джон Вандюк CMS Drupal 6: система для создания сайтов — М.: «Вильямс», 2009.

Информация о работе Средства разработки сайтов