В настоящее время большим спросом пользуются веб-приложения, будь то визитная карточка фирмы или большой развернутый портал для крупной компании. Веб-приложения — это лучшее средство для предоставления потенциальным потребителям товаров, например, предоставление комплексной информации об образовательных услугах по средством образовательного портала, на котором расположена вся необходимая информацию о ВУЗе для абитуриента, работодателя, преподавателя. В сфере веб-приложений существуют большое количество средств разработки веб-приложений, которые подразделяются в зависимости от функционального назначения веб-приложений. Сейчас как никогда распространена разработка динамических веб-приложений.
Веб-приложение — клиент-серверное приложение, где клиентом выступает браузер, а сервером — веб-сервер. Работа веб-приложения происходит между сервером и клиентом, хранение данных осуществляется на сервере, обмен информацией происходит по сети. Преимуществом веб-приложений является то, что клиенты не зависят от операционной системы пользователя, поэтому веб-приложения являются межплатформенными сервисами.
Инструментальные средства создания веб-приложений подразделяются на языковые средства и программные средства создания веб-приложений.
Языковые средства создания веб-приложений делятся на две группы: клиентские и серверные.
Клиентские языки необходимы со стороны пользователя, то есть они обрабатываются браузерами. Недостатком является то, что пользователь сам должен настраивать и обновлять свой браузер, и иногда пользователь настраивает браузер так, что он игнорирует обработку скриптов. Скрипты – исполняемые процедуры, которые запускаются на выполнение со стороны сервера по запросу поступившему с конкретно определенной веб-приложения. Пользователь должен обновлять свой браузер, так как устаревшие браузеры не поддерживают тот или иной язык и версию языка, на котором писал разработчик. Языки программирования почти не меняются и самые известные и распространенные уже известны. Код клиентского скрипта может просмотреть каждый пользователь в любом браузере. Достоинство клиентского языка – обработка скриптов, на таком языке может выполняться без отправки документа на сервер. Программа сразу проверит код на наличие ошибок.
Самым распространенными клиентскими языками является JavaScript, VBScript, AJAX, Microsoft Silverlight.
Серверные языки необходимы для того чтобы пользователь мог получить результат своих изменений на сайте. Когда пользователь переходит на какую-нибудь Интернет-страницу, то этот переход вначале обрабатывается на сервере, то есть выполняются все необходимые запрограммированные действия, связанные с этой страницей, и только затем возвращается к пользователю итоговым файлом. Этот файл может быть написан на любом языке программирования предназначенный для веб-приложения: HTML, PHP, ASP, Perl, SSI, XML, DHTML, XHTML. Необходимо учитывать, что все зависит от самого сервера и версии самого языка. Преимущество серверных языков заключается в то, что они поддерживают работу с системой управления базами данных (или СУБД) — сервером, где упорядоченно хранится информация, которая используется при необходимости. Популярными среди систем управления базами данных являются: Microsoft SQL Server; Microsoft SQL Server Express; mSQL; MySQL; Firebird; IBM DB2; IBM DB2 Express-C; Oracle; SQLite.
Серверные языки не имеют недостатки, так как при правильном выборе ядра и при не перенасыщения различными утилитами веб-приложений, то работе на сайте ничего не угрожает. Но необходимо изначально правильно продумать структуры данных в БД, так как при имении структуры данных, нужно изменять и само приложение.
Создание веб-приложений, их поддержка и развитие осуществляется с помощью специализированного ПО. Программные средства разработки веб-приложений подразделяются на: IDE (Интегрированная среда разработки), CMS (Система управления содержимым), языки сценариев (или скриптовые языки) и WYSIWYG-редакторы.
Программные средства создания веб-приложений подразделяются на: ИСР (Интегрированная среда разработки или IDE), СУС (Система управления содержимым или CMS), WYSIWYG и языки скриптов (языки сценариев).
Интегрированная среда разработки, ИСР (англ. IDE, Integrated development environment или integrated debugging environment) — система программных средств, используемая программистами для разработки программного обеспечения.
Обычно среда разработки включает в себя: текстовый редактор, компилятор и/или интерпретатор, средства автоматизации сборки, отладчик, но современные среды разработки включают в себя браузер классов, инспектор объектов и диаграмму иерархии классов —при объектно-ориентированной разработке ПО.
Разновидность ИСР — среды визуальной разработки, которые имеют возможность визуального редактирования интерфейса программы.
Самые распространенные ИСР:
- Универсальные: Visual Studio, NetBeans, Eclipse, KDevelop, Xcode, Geany, MonoDevelop, Aptana, Open Watcom, Komodo, Kylix;
- Си/C++: Anjuta, Borland C++, C++ Builder, Code::Blocks, CodeLite, wxDev-C++, Pelles C, Sun Studio, Qt Creator, Ultimate++, Microsoft QuickC;
- Бейсик: PowerBASIC, Turbo Basic, Visual Basic, QBasic, QuickBASIC, PureBasic;
- Java: WebLogic, BlueJ, DrJava, Greenfoot, JCreator, JDeveloper, IntelliJ IDEA, JBuilder, JGRASP;
- Паскаль: Delphi, Lazarus, NET, MIDletPascal, PocketStudio, Morfik, Turbo Pascal, QuickPascal, Visible Pascal;
- PHP: Aptana Studio with PHP plugin, Delphi for PHP, Eclipse PDT, Zend Studio, NuSphere PhpED, PHP expert editor.
Можно привести несколько примеров самых распространенных IDE:
- ECMAScript— это встраиваемый расширяемый не имеющий средств ввода/вывода язык программирования, используемый в качестве основы для построения других скриптовых языков. Диалекты: ActionScript, Caja, JavaScript / LiveScript, JScript, JavaScript OSA, JScript .NET, QtScript.
Движки: ECMAScript InScript, JavaScriptCore, JScript, KJS, futhark, linear_b, Carakan, Narcissus, QtScript, Rhino, SpiderMonkey, SunSpider, Tamarin, TraceMonkey, V8, SquirrelFish
- Основанныена JavaScript (встраиваемыеввеб-страницу): TinyMCE, FCKeditor, CKeditor, NicEdit, ,elRTE, Spaw, Xinha, dijit.Editor — виджет javascript-фрэймворка Dojo Toolkit.
Система управления содержимым (контентом) (англ. Content management system, CMS) — компьютерная программа или система, используемая для обеспечения и организации совместного процесса создания, редактирования и управления текстовыми и мультимедиа документами (содержимым или контентом). Обычно это содержимое рассматривается как неструктурированные данные предметной задачи в противоположность структурированным данным, обычно находящимися под управлением СУБД. Система управления — программа, предоставляющая инструменты для добавления, редактирования, удаления информации на сайте. Существуют разнообразные системы управления сайтом, среди которых встречаются платные и бесплатные, построенные по разным технологиям. Каждый сайт имеет панель управления, которая является только частью всей программы, но достаточна для управления им.
В общем случае CMS делятся на:
— ECMS (бизнес) —- Enterprise Content Management System, система управления контентом масштаба предприятия. Означает «системы управления неструктурированным содержанием предприятий».
— WCMS — Web Content Management System (Система управления веб-контентом)
В силу того, что ECMS имеют глубокую внутреннюю классификацию по предметным областям (HRM, DMS, CRM, ERP и т. д.) термин CMS заместил собой WCMS, превратившись в синоним системы управления сайтами. Подобные CMS позволяют управлять текстовым и графическим наполнением веб-сайта, предоставляя пользователю интерфейс для работы с содержимым сайта, удобные инструменты хранения и публикации информации, автоматизируя процессы размещения информации в базах данных и её выдачи в HTML.
Основные задачи CMS:
— собрать в единое целое и объединить на основе ролей и задач все разнотипные источники знаний и информации, доступные как внутри организации, так и за ее пределами;
— обеспечить взаимодействие сотрудников, рабочих групп и проектов с созданными ими базами знаний, информацией и данными так, чтобы их легко можно было найти, извлечь и повторно использовать привычным для пользователя образом.
Системы управления содержимым: 1С-Битрикс, Amiro.CMS, Atilekt.CMS, B2evolution, CMS Made Simple, CMSimple, Concrete5, DataLife Engine, Danneo, DotNetNuke, Drupal, E107, e2, ExpressionEngine, eZ publish, FluxBB, Ikonboard, InSales, Joomla, MODx, Mambo Open Source, MediaWiki, Movable Type, NPJ, Nucleus CMS, OpenCms, PHP-Fusion, PHP-Nuke, phpBB, Plone, Prestashop, S.Builder, Sapid, SharePoint, Site Sapiens, TYPO3, Textpattern, Typolight, TikiWiki, uCoz, UMI.CMS, WikkaWiki, WordPress, XOOPS, Xaraya, Zikula.
Можно привести несколько примеры самых распространенных CMS:
- Joomla!— система управления содержимым, написанная на языках PHP и JavaScript, использующая в качестве хранилища базу данных MySQL. Является свободным программным обеспечением, распространяемым под лицензией GNU GPL.
CMS Joomla! включает в себя различные инструменты для изготовления веб-сайта. Важной особенностью системы является минимальный набор инструментов при начальной установке, который дополняется по мере необходимости. Это снижает загромождение административной панели ненужными элементами, а также снижает нагрузку на сервер и экономит место на хостинге.
Joomla! позволяет отображать интерфейс фронтальной и административной части на любом языке. Каталог расширений содержит множество языковых пакетов, которые устанавливаются штатными средствами администрирования. Доступны пакеты русского, украинского и ещё некоторых языков стран СНГ.
- Mambo (полное название Mambo Open Source или MOS) — это свободная система управления содержимым. Она поставляется с различными встроенными модулями, WYSIWYG редактором, сайтом статистики, интерфейсом администратора, многоязыковой поддержкой, поддержкой пользовательских модулей и многим другим.
- WebLogic— семейство продуктов от компании BEA Systems. В платформу WebLogic входят сервер приложений J2EE, портал, Integration — продукт для интеграции бизнес-процессов, Workshop — «мастерская» для разработки приложений для WebLogic, и JRockIt — собственная JVM BEA. Поддерживает Oracle, Sybase, Microsoft SQL Server, DB2 и другие базы данных. Также поддерживает следующие стандарты и технологии: HTTP, J2EE 1.3 и 1.4, Веб-сервис, Microsoft .NET, JMS, JDBC, EJB, J2EE Connectors, Сервлет.
- JBoss Seam— основанный на JavaServer Faces (JSF) каркас для разработки web приложений. Разрабатывается в JBoss Labs и распространяется под лицензией LGPL (GNU Lesser General Public License). Призван упростить программирование бизнес приложений на JSF путем реализации следующих возможностей:
- WebSphere— семейство программных продуктов фирмы IBM. Часто WebSphere употребляется в качестве названия одного конкретного продукта: WebSphere Application Server (WAS). WebSphere относится к категории middleware— промежуточного программного обеспечения, которое позволяет приложениям электронного бизнеса (e-business) работать на разных платформах на основе веб-технологий.
WebSphere использует открытые стандарты XML и веб-службы, реализованные на J2EE. В России доступна локализованная версия WebSphere, то есть это версия разработана полностью на русском языке, которая не отличается от оригинальной версии.
- CleverPath Portal (Computer Associates, СА). CleverPath Portal (ранее — Jasmineii Portal) представляет собой одно из наиболее мощных в отрасли средств создания корпоративных порталов, а также персонализированного представления информации из разнообразных источников в Web. С помощью CleverPath Portal IT-отделы предприятий могут быстро разрабатывать и внедрять защищенные Web-порталы, предоставляющие как внешним, так и внутренним пользователям все данные, необходимые для принятия решений и способствующие улучшению взаимодействия между организациями, а также повышению эффективности деловых операций.
CleverPath Portal открывает доступ ко всему спектру информации, существующей в корпоративных сетях и в Internet, в том числе к таким ее формам, как Web-страницы, данные реального времени, документы Microsoft Office, сообщения электронной почты, данные корпоративных приложений, другие структурированные данные, например хранящиеся в базах данных.
- Enterprise Information Portal (Hummingbird). Компания Hummingbird разрабатывает системы для предприятий более 15 лет. Ee продукт Enterprise Information Portal является настраиваемой информационной системой, представляющей собой узел доступа к корпоративным приложениям и данным, информации и знаниям внутри и за пределами предприятия.
- uCoz— это бесплатная система управления сайтом и хостинг для сайтов, созданных с её использованием. Модули uCoz могут использоваться как в единой связке для создания полнофункционального сайта, так и по отдельности, например, в качестве блог-платформы, веб-форума и др. На данный момент в системе создано более миллиона сайтов. uCoz.ru находится на 16-м месте самых популярных сайтов среди российских сайтов по данным Alexa Internet. Вот первые 20 самых популярных сайтов в России по мнению Alexa Internet: yandex.ru, vkontakte.ru, mail.ru, google.ru, google.com, youtube.com, odnoklassniki.ru, livejournal.com, wikipedia.org, rambler.ru, vk.com, liveinternet.ru, facebook.com, rutracker.org, narod.ru, ucoz.ru, twitter.com, yahoo.com, ya.ru, blogspot.com.
Скриптовый язык (англ. scripting language, или язык сценариев) — язык программирования, разработанный для записи «сценариев», последовательностей операций, которые пользователь может выполнять на компьютере. Сценарии обычно интерпретируются, а не компилируются (хотя часто сценарии компилируются каждый раз перед запуском). В прикладной программе, сценарий (скрипт) — это программа, которая автоматизирует некоторую задачу, которую без сценария пользователь делал бы вручную, используя интерфейс программы.
Для написания пользовательских расширений могут использоваться как скрипты (в терминологии некоторых программ «макросы»), так и плагины (независимые модули, написанные на компилируемых языках; в некоторых программах они могут называться «утилитами», «экспортёрами», «драйверами»).
Скриптовый язык удобен в следующих случаях:
— Если нужно обеспечить программируемость без риска дестабилизировать систему, то есть неправильно написанный скрипт выведет диагностическое сообщение, а не приведёт систему к краху;
— Если важен выразительный код. Во-первых, чем сложнее система, тем больше кода. Во-вторых, в скриптовом языке может быть совсем другая концепция программирования, чем в основной программе — например, игра может быть монолитным однопоточным приложением, в то время как управляющие персонажами скрипты выполняются параллельно. В-третьих, скриптовый язык имеет собственный проблемно-ориентированный набор команд, и одна строка скрипта может делать то же, что несколько десятков строк на традиционном языке. Как следствие, на скриптовом языке может писать программист очень низкой квалификации — например, геймдизайнер своими руками, не полагаясь на программистов, может корректировать правила игры;
— Если требуется кроссплатформенность. Хорошим примером является JavaScript — его исполняют браузеры под самыми разными ОС.
У плагинов же есть три важных преимущества.
- Готовые программы, оттранслированные в машинный код, выполняются значительно быстрее скриптов, которые интерпретируются из исходного кода динамически при каждом исполнении. Поэтому скриптовые языки не применяются для написания программ, требующих оптимальности и быстроты исполнения. Но из-за простоты они часто применяются для написания небольших, одноразовых («проблемных») программ.
- Полный доступ к любому аппаратному обеспечению или ресурсу ОС (в скриптовом языке для этого должен существовать написанный на машинном коде API). Плагины, работающие с аппаратным обеспечением, традиционно называют драйверами.
Если предполагается интенсивный обмен данными между основной программой и пользовательским расширением, для плагина его обеспечить проще.
- Также в плане быстродействия скриптовые языки можно разделить на языки динамического разбора (sh, command.com) и предварительно компилируемые (Perl). Языки динамического разбора считывают инструкции из файла программы минимально требующимися блоками, и исполняют эти блоки, не читая дальнейший код. Предкомпилируемые языки транслируют программу в байт-код и затем исполняют его. Некоторые скриптовые языки имеют возможность компиляции программы «на лету» в машинный код.
Существуют следующие типы скриптовых языков:
— универсальные скриптовые языки: AngelScript, Forth, Perl, Python, PHP, Squirrel, Tcl (Tool command language), REBOL, Ruby, Lua, AutoIt,
— встроенные в прикладные программы: UnrealScript, Emacs Lisp, AutoLISP, VBA, MQL4 script, Game maker language, ERM,
— командные оболочки: AppleScript, sh, bash, csh, JCL, ksh, COMMAND.COM и cmd.exe, Visual Basic Script, REXX,
— встраиваемые: Браузерные языки (JavaScript, JScript), ActionScript, Lingo — использующийся в редакторе Director, называют скриптовым, Guile, Io, Lua, Sleep, Script.NET,
— также в приложение может быть встроена возможность расширения сценариями на любом из универсальных скриптовых языков.
Многие консольные утилиты поддерживают выполнение последовательности команд, заранее записанной в файл. Такие файлы тоже называют скриптами. Примеры таких утилит: SQLPlus — выполняет команды SQL и PL/SQL в СУБД Oracle.
WYSIWYG (от англ. What You See Is What You Get, «что видишь, то и получишь») — различные прикладных программ, в которых содержание отображается в процессе редактирования и выглядит макcимально близко похожим на конечную продукцию.
HTML-документ, можно создавать в любом текстовом редакторе, например, в «блокноте» (MS NotePAD в составе Windows). При использовании такого методов следует учесть следующее:
— создание различных эффектов в простом текстовом редакторе — громоздкая и сложная задача;
— документ подготовленный с помощью какой-либо программы проще конвертировать, чем создавать заново;
— текстовые редакторы можно использовать для очистки от «мусора» HTML-документов, созданных с помощью специализированных программ;
— при создании эффектов с помощью специальных программ следует предусмотреть поддержку этих эффектов на web-сервере.
Список WYSIWYG-редакторов HTML-кода: Adobe GoLive, Adobe (Macromedia) Dreamweaver, Microsoft FrontPage, Microsoft SharePoint Designer, Microsoft Expression Web, Mozilla Composer, Quanta Plus, Kompozer (основан на Nvu), WYSIWYG Web Builder 5, Web Page Maker и др.
Список WYSIWYG-редакторов текста: AbiWord (пакет GNOME Office), KWord (пакет KOffice), Microsoft Word (пакет Microsoft Office), OpenOffice.org Writer (пакет OpenOffice.org), Pages (пакет iWork) и др.
Одним из лидеров в области разработки программного обеспечения для подготовки web-публикаций является компания Macromedia. Очень популярны пакеты Macromedia: Dreamweaver, HomeSite (до версии 5 этот пакет выходил под названием Allaire HomeSite), а также специализированные пакеты для создания компьютерной графики и анимации.
Список программных средств предназначенные для разработки веб-приложений: Microsoft FrontPage, Macromedia Flash 5, Macromedia Dreamweaver MX 2004, Macromedia Fireworks 3, Allaire HomeSite 4.5, Macromedia DreamWeaver UltraDev 4, Macromedia ColdFusion 4.5. UltraDev 4 Studio.
Список литературы
- Прохорова (Воробьева) А.М. Методы продвижения образовательных услуг с помощью образовательного портала // Вопросы современной науки и практики. Университет имени В.И. Вернадского. – 2011. — № 3(34). – с. 96-102.[schema type=»book» name=»Инструментальные средства создания веб-приложений на примере образовательного портала» author=»Прохорова Анна Михайловна» publisher=»БАСАРАНОВИЧ ЕКАТЕРИНА» pubdate=»2017-05-30″ edition=»ЕВРАЗИЙСКИЙ СОЮЗ УЧЕНЫХ_ 30.01.2015_01(10)» ebook=»yes» ]