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




МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

 

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Глазовский государственный педагогический институт им.В.Г.Короленко»

Кафедра информатики, теории и методики обучения информатике

Курсовая работа по информатике

Есенеев Р. Р.

студент 3 курса факультета информатики, физики и математики

специальность 010500.62 – «Математическое обеспечение и администрирование информационных систем»

Разработка web-портала научно-исследовательской лаборатории

Научный руководитель:

кандидат педагогических

наук, доцент О.Е.Данилов

 

 

Работа защищена "____"_______________2013г.

с оценкой ________________

Глазов 2013

Содержание

Введение.......................................................................................................................3

Обзор современных CMS.........................................................................................5

Общие сведения о Drupal....................................................................................... 7

Создание web-портала............................................................................................13

Заключение.................................................................................................................16

Литература..................................................................................................................17

Приложение................................................................................................................18


Введение

В 1989 году выходит первая версия языка HTML (Hyper Text Markup Language). Уже тогда в развитии интернета стали выделяться две тенденции: во-первых, HTML стал фундаментом интернета, без которого немыслимо создание Web-документов. Как следствие, HTML стал развиваться. Во-вторых, несмотря на развитие HTML, уже в 90-х годах стало ясно, что создание полноценных документов, публикуемых в интернете, только средствами HTML невозможно. Решить эту проблему должен был отказ от ориентирования исключительно на HTML и обращение к так называемым объектно-ориентированным языкам программирования, появление которых обусловлено как закономерным итогом развития программирования в целом, так и реальными нуждами в первую очередь интернета. Интеграция HTML с языками объектно-ориентированного программирования позволила создавать сайты, предназначенные не только для предоставления информации пользователям, но и для организации взаимодействия с ними,

Следующим витком эволюции разработки интернет- приложений стало появление CMS(Content Management System) - программного комплекса, предоставляющий функции создания, редактирования, контроля и организации веб-страниц. CMS часто используются для создания блогов, личных страниц иинтернет-магазинов и нацелены на пользователей, мало знакомых с программированием.

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

В процессе выполнения курсовой работы необходимо решить следующие задачи:

· Сделать обзор на современные CMS

· Ознакомится с CMS Drupal;

· Создать web-портал научно-исследовательской лаборатории института;


Обзор современных CMS

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

Сotonti

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

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

 

Joomla

Важной особенностью системы является минимальный набор инструментов при начальной установке, который дополняется по мере необходимости.
Особенности:

· Функциональность можно увеличивать с помощью дополнительных расширений (компонентов, модулей и плагинов).

· Имеется модуль безопасности для многоуровневой аутентификации пользователей и администраторов (используется собственный алгоритм аутентификации и «ведения» сессий).

· Система шаблонов позволяет легко изменять внешний вид сайта или создать свой уникальный. В сети существует огромный выбор готовых шаблонов, как платных, так и бесплатных.

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

· Начиная с версии 1.6 встроена многоязычность.

· Начиная с версии 2.5 расширена поддержка баз данных. Реализована поддержка Microsoft SQL Server, а с версии 3.0 — PostgreSQL

 

WordPress

WordPress — это мощная платформа для персонального блоггинга. Она содержит набор возможностей для того, чтобы максимально упростить процесс создания онлайн-публикаций, сделать его приятным и удобным. Платформа для персонального блоггинга с практичными настройками и свойствами по умолчанию и с чрезвычайно гибким и настраиваемым ядром.

PhpBB

phpBB- популярный бесплатный веб-форум со свободным исходным кодом, разработанный на языке PHP, поддерживающий различные СУБД, включая MySQL, PostgreSQL, MS SQL Server, MS Access, SQLite, а также Oracle.
Кроме поддержки различных СУБД достоинствами phpBB являются:

· Несложная в использовании система шаблонов.

· Многоязычный интерфейс: языковые файлы переведены на более чем 50 языков и доступны для свободного скачивания с официального сайта phpBB.

· Большое сообщество пользователей.

· Большое количество доступных и обновляемых модификаций.

Помимо базовых функций форума в phpBB 3 реализованы возможности создания подфорумов, прикрепления к сообщениям файлов, управления поисковыми ботами и нагрузкой на сервер, полное управление правами доступа, мастер обновления.

Для своей курсвой работы я выбрал CMS Drupal, о которой я подробно расскажу в следующей главе.

Общие сведения о Drupal

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

Концепции Drupal:

· Механизмы рубрикации. Каждый документ сайта может входить в одну или несколько рубрик. Сами же рубрики могут составлять списки или сложные иерархические структуры произвольной вложенности (с множественными предками и перекрестными ссылками элементов).

· Интеграция всех компонентов. Возможна сквозная рубрикация по всем типам документов сайта (например список ключевых слов, общий для форумов и блогов). Форум с выводом интересных новостей на главную страницу или новостной сайт с блогами и видеопрезентациями - все это можно уложить в единый рубрикатор (или несколько рубрикаторов) и это будет выглядеть частями единого сайта, а не разрозненными страничками объединенными лишь общим дизайном.

· Готовые решения типовых задач. Новостной сайт, сайт-визитка компании, блог или форум — такие сайты можно построить пользуясь только модулями движка идущими в поставке, вам нужно только включить соответствующие модули, настроить их по своему вкусу и перенести сайт на хостинг.

· Навигация и поиск. Для удобства доступа к архивным материалам служат рубрикация контента и поиск с учётом видов контента, рубрик и содержимого. Документы сохраняют неизменные ссылки все время своей жизни (т.н. перманентные ссылки). Также с помощью коротких ссылок и псевдонимов сайт приобретает запоминающиеся имена разделов и отдельных страниц, не использующие специальных символов и поэтому хорошо индексируемые поисковыми системами. На сайте Drupal вы не увидите длинных неудобоваримых ссылок типа modules.php?op=modload&name=News&file=article&sid=166&mode=&order=0&thold=0 (пример с реального сайта), которыми по сию пору страдает немало CMS.

Подробнее о функционале:

  • Таксономия (taxonomy) — оригинальная методика присущая Drupal для задания структуры сайта, способ отделить структуру от представления. С помощью таксономии можно определить произвольное число рубрик, в которых будут в дальнейшем помещаться материалы сайта. Эти рубрики могут быть представлены как плоские списки или иерархические структуры произвольной вложенности (как древовидные, когда элемент имеет только одного родителя в иерархии, так и произвольные, когда элемент может иметь сразу нескольких родителей). В результате получаем такую схему: документы (nodes) различных типов (node types) ассоциируются с рубриками (terms), рубрики в свою очередь разбиваются на принадлежность к словарям (vocabularies). Такая схема позволяет выстраивать на сайте несколько независимых структур, ассоциируя одни и те же документы (как бы листья на структурном "дереве" сайта) с различными структурами. Пример: словарь "Форумы" задаёт дерево форумов/подфорумов произвольно вложенности и применяется только к документам типа "форумный топик", словарь "Новости" -- плоский список рубрик для новостных публикаций (документы типа "статья"), а словарь "Ключевые слова" ассоциируется с обоими типами и по выбранному ключевому слову можно найти как форумные топики так и новости. И т.д.
  • Темы оформления — содержимое сайта в Drupal отделено от дизайна, сейчас это уже традиционно для любой порядочной CMS. С помощью сменных тем можно очень значительно изменять дизайн не трогая при этом содержимое и структуру сайта. Drupal не привязан к какому-то одному "единственно верному" механизму реализации тем, разработчик сайта может выбирать наиболее удобные ему способы формирования дизайна сайта. Но Drupal предлагает ряд готовых решений в виде движков тем (theme engines), таких как например xtemplate (темы с шаблонами в XML) или phptemplate (темы с шаблонами на PHP). Однако значительных изменений дизайна можно порой добиться манипуляцией стилями.
  • Комментарии — любой документ сайта посетители могут комментировать. Конечно, если в настройках им разрешена эта возможность - можно ограничивать возможность комментариев для отдельных документов или целиком для типов документов, а также настраивать их представление (нитевое или плоское, рейтинг и фильтрация по нему и т.п.). Для анонимных посетителей предусмотрены поля для их идентификации (имя, email, адрес сайта), но эта возможность также отключаема.
  • Дневники (blogs) — популярное в интернете развлечение, известное как "блоги" доступно в Drupal "из коробки". Ведение дневников, возможность комментировать их другим пользователям, а также поддержка через XML-RPC внешних программ-клиентов для помещения заметок в дневники.
  • Подборка сайта (collaborative book) — идея в чем-то похожая на Wiki, когда каждый пользователь может вносить свои дополнения и исправления в текст. В реализации Drupal документы могут проходить через очередь модерации. Большинство документов сайта могут быть включены как страницы книги. Это можно использовать например для архивации обсуждений форумов, когда из наиболее интересных обсуждений можно составить книгу-архив. При этом включенные в книгу материалы по прежнему остаются доступными в своих разделах (т.е. форумное обсуждение будет видно на форуме, но также будет являться страницей книги сайта).
  • Форум — имеется встроенный движок форума, удачно вписывающийся в структуру всего сайта. Поскольку структура форумов строится на таксономии, возможно создание категорий и форумов произвольной вложенности. Включены основные форумные функции, однако отсутствуют средства массовой модерации, поэтому в случае построения активных форумных сайтов, содержащих сотни тысяч или миллионы сообщений форум Drupal не будет удобен - лучше в этом случае посмотреть в сторону специализированных форумных движков (phpbb например).
  • Новости в оффлайн (content syndication) — Drupal экспортирует большинство материалов в формате RDF/RSS, Atom и некоторых других, удобных для просмотра в оффлайн с помощью внешних программ, либо для автоматизированной публикации на других сайтах.
  • Сбор новостей — новости предоставляемые в RDF/RSS с других сайтов могут собираться Drupal и отображаться на сайте.
  • Разграничение прав доступа — основано на присвоении одной или нескольких ролей пользователям, непосредственно права доступа к различным функциям сайта закрепляются за ролями. Подключаемые модули сами определяют к каким из своих функций дать доступ определённым ролям. Понятная и логичная схема, входящая в стандартную поставку Drupal, достаточна для большинства задач. Для случаев, когда подобной схемы недостаточно, Drupal предоставляет более мощный механизм, основанный на присвоении прав (на просмотр, создание, изменение и удаление) каждому отдельному документу. Но интерфейс для управления этим механизмом в текущей версии CMS отсутствует, для его использования предлагаются дополнительные модули.
  • Встраиваемые скрипты — в Drupal возможно включение PHP-скриптов в любых документах сайта (разумеется это ограничено в целях безопасности и доступно не всем пользователям). В скриптах можно обращаться к функциям API Drupal — это позволяет оперативно создавать динамические странички с функциональностью не предусмотренной движком, не прибегая к написанию отдельных модулей.
  • Интернационализация — Drupal предоставляет различные механизмы для интернационализации и локализации интерфейса (не содержимого) сайта. В том числе возможность правки переводов "на лету" через вебинтерфейс (для переводов хранящихся в БД). Также удачной особенностью архитектуры Drupal является повсеместное использование в нем Unicode — все тексты хранятся в UTF-8, в этой же кодировке отдаются новости и почтовые сообщения. Такая унификация позволяет публиковать на сайте материалы на различных языках не требуя переключения кодировок в браузере - на одной страничке мирно уживутся тексты на русском, немецком и китайском. Следует отметить, что для получения полной многоязычности (синхронное ведение содержимого сайта, а не только интерфейсных надписей на многих языках) встроенного решения нет (но предлагается доп. модуль i18n, либо для сайтов не требующих синхронизации разноязычного содержимого можно использовать возможности мультисайтинга Drupal).

Есть у Drupal и недостатки. Например, обучение и достижение полного понимания Drupal требует достаточно много времени и усилий, но это лишь нужно, если вы собираетесь создать очень серьезный проект. Тем не менее, как только вы привыкнете к этой системе, она будет казаться вам чрезвычайно удобной по сравнению с другими CMS.

 

Создание web-портала

Создавать сайт мы начнем не с нуля, используя стандартную тему(шаблон), а воспользуемся бесплатным шаблоном Business, взятым с https://drupal.org/project/business. После успешной установки, выберем модули, которые понадобятся нам для создания портала, и также их установим. Перечислим и коротко опишем каждый используемый нами модуль:

Views – модуль, который позволяет изменить алгоритмы вывода информации на сайте, а также создавать свои собственные (например, вывод списка пользователей можно сделать на свое усмотрение, подтянув туда необходимые поля из профиля).

Advanced Forum – модуль, который улучшает встроенный форум Drupal, придавая ему вид обычного форума, в котором сообщения и комментарии отображаются одинаково, а информация об авторе представлена слева.

Email Registration – быстрая регистрация с помощью электронной почты.

Variable – реализует реестр для мета-данных переменных и расширяет API переменных. Это сервисный API-модуль, который предназначен для разработчиков и его установка требуется только в том случае, если этого требует какой-либо другой модуль.

Chaos tool suite – представляет из себя АПИ и набор инструментов, которые позволяют облегчить работу разработчика. Он также управляет страницами панелей и другими элементами.

Russian Easy Translateручной перевод элементов сайта.

Internationalization – позволяет переводить содержание сайта (документов и терминов), интерфейс для анонимных посетителей (с использованием стандартного модуля Locale) и определять язык при помощи браузера.

В шаблоне есть втроенное слайд-шоу, заменяем в нем первоначальные изображения на фотографии нашей лаборатории: для этого находим файл page--front.tpl.php находящийся в папке по адресу: ...\home\drupal\www\sites\all\themes\business и меняем

<div class="image_reel">

<a href="<?php print url($url1);?>"><img src="<?php print base_path(). drupal_get_path('theme', 'business'). 'адрес изображения1 ’;?>"></a>

<a href="<?php print url($url2);?>"><img src="<?php print base_path(). drupal_get_path('theme', 'business'). ' адрес изображения2 ';?>"></a>

<a href="<?php print url($url3);?>"><img src="<?php print base_path(). drupal_get_path('theme', 'business'). '/ адрес изображения3';?>"></a>

</div>

Дальше добавляем через панель администратора форум, для этого включаем модуль Advanced Forum и создаем разделы форума в структуре панели администратора.

С помощьюEmail Registration делаем регистрацию. Так как у нас сайт находится в разработке и нет возможности отправки e-mail, активируем пользователей через администратора в разделе people.

Переводим сайт на русский язык с помощью Internationalization, а что не переводится – переводим вручную с Russian Easy Translate.

В настройках шаблона(Appearance) мы можем изменить логотип сайта, слоган, настройки изображений(например, показывать аватар пользователя в комментариях) и так далее.

Скриншоты получившегося сайта приведены в приложении к курсовой работе.


Заключение

В данной курсовой работе были рассмотрены:

· Различные виды CMS;

· Подробный разбор CMS Drupal;

· Создание собвстенного web-портала;

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

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


Литература

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: