В прошлом инструментальные средства разработки программного обеспечения были практически одинаковы, и отличались, в основном, способностью обмена информацией с другими инструментальными средствами. Системы программирования можно было рассматривать как острова, изолированные друг от друга. При создании приложений использовались методы структурного программирования.
В последнее время тенденция такова, что все программное обеспечение, ориентированное, большей частью, на бизнес, переносится в веб. Веб-разработка — процесс создания веб-сайта или веб-приложения. Основными этапами процесса являются веб-дизайн, вёрстка страниц, программирование для веб на стороне клиента и сервера, а также конфигурирование веб-сервера.
Разработка порталов и сложных сайтов.
Портал предоставляет пользователю различные интерактивные сервисы, которые работают в рамках одного веб-проекта. Веб-разработка не предполагает использование готового коробочного решения, создание портала зачастую требует разработки собственных систем для реализации индивидуальных требований.
Разработка информационного портала имеет следующие характерные черты:
- большой объем информации с удобной классификацией и механизмами поиска;
- модульная архитектура;
- единовременная авторизация пользователей на разных сервисах;
- разноуровневый доступ к разделам и сервисам;
- наличие коммуникационных сервисов;
- возможность корректирования информации пользователями;
- постоянная доработка и развитие.
Web-разработка предполагает создание порталов различной тематики. Существует несколько типов порталов:
Model-view-controller (MVC, «модель-представление-контроллер», «модель-вид-контроллер») — схема использования нескольких шаблонов проектирования, с помощью которых модель приложения, пользовательский интерфейс и взаимодействие с пользователем разделены на три отдельных компонента таким образом, чтобы модификация одного из компонентов оказывала минимальное воздействие на остальные. Данная схема проектирования часто используется для построения архитектурного каркаса, когда переходят от теории к реализации в конкретной предметной области.
Концепция MVC была описана Трюгве Реенскаугом в 1979 году, работавшим в то время над языком программирования «Smalltalk» в научно-исследовательском центре «Xerox PARC». Оригинальная реализация описана в статье «Applications Programming in Smalltalk-80: How to use Model-View-Controller». Затем Джим Алтофф с командой разработчиков реализовали версию MVC для библиотеки классов Smalltalk-80.
В оригинальной концепции была описана сама идея и роль каждого из элементов: модели, представления и контроллера. Но связи между ними были описаны без конкретизации. Кроме того, различали две основные модификации:
- Пассивная модель — модель не имеет никаких способов воздействовать на представление или контроллер, и используется ими в качестве источника данных для отображения. Все изменения модели отслеживаются контроллером и он же отвечает за перерисовку представления, если это необходимо. Такая модель чаще используется в структурном программировании, так как в этом случае модель представляет просто структуру данных, без методов их обрабатывающих;
- Активная модель — модель оповещает о произошедших в ней изменениях те представления, которые подписались на получение таких оповещений. Это позволяет сохранить независимость модели от контроллеров и представлений.
Классической реализацией концепции MVC принято считать версию именно с активной моделью.
С развитием объектно-ориентированного программирования и понятия о шаблонах проектирования — был создан ряд модификаций концепции MVC, которые при реализации у разных авторов могут отличаться от оригинальной. Так, например, Эриан Верми в 2004 году описал пример обобщённого MVC.
Платформа ASP.NET MVC представляет собой фреймворк для создания сайтов и веб-приложений с помощью реализации паттерна MVC.
Концепция паттерна (шаблона) MVC (model - view - controller) предполагает разделение приложения на три компонента:
Контроллер (controller) представляет класс, обеспечивающий связь между пользователем и системой, представлением и хранилищем данных. Он получает вводимые пользователем данные и обрабатывает их. И в зависимости от результатов обработки отправляет пользователю определенный вывод, например, в виде представления.
Представление (view) - это собственно визуальная часть или пользовательский интерфейс приложения. Как правило, html-страница, которую пользователь видит, зайдя на сайт.
Модель (model) представляет класс, описывающий логику используемых данных.
Общая схема взаимодействия этих компонентов представлена на рисунке 2.1.
На сегодняшний день существуют несколько этапов разработки веб-сайта:
В зависимости от текущей задачи, какие-то из этапов могут отсутствовать, либо быть тесно связаны один с другим.
- Создание технического задания. Составлением технического задания для специалистов занимается менеджер проекта. Работа с заказчиком начинается с заполнения брифа, в котором заказчик излагает свои пожелания относительно визуального представления и структуры сайта, указывает на ошибки в старой версии сайта, приводит примеры сайтов конкурентов. Исходя из брифа, менеджер составляет техническое задание, учитывая возможности программных и дизайнерских средств. Этап заканчивается после утверждения технического задания заказчиком. Важно сразу отметить, что этапы проектирования веб-сайтов зависят от многих факторов, таких как объём сайта, функциональность, задачи, которые должен выполнять будущий ресурс и многое другое. Однако, есть несколько этапов, которые в обязательном порядке присутствуют в планировании любого проекта.
- Дизайн основной и типовых страниц сайта. Начинается работа с создания дизайна, обычно в графическом редакторе. Дизайнер создаёт один или несколько вариантов дизайна, в соответствии с техническим заданием. При этом отдельно создаётся дизайн главной страницы, и дизайны типовых страниц (например: статьи, новости, каталог продукции). Собственно «дизайн страницы» представляет собой графический файл, слоеный рисунок, состоящий из наиболее мелких картинок-слоев элементов общего рисунка. При этом дизайнер должен учитывать ограничения стандартов HTML (не создавать дизайн, который затем не сможет быть реализован стандартными средствами HTML). Исключение составляет Flash-дизайн. Количество эскизов и порядок их предоставления оговаривается с проект-менеджером. Также менеджер проекта осуществляет контроль сроков. В больших веб-студиях в процессе участвует арт-директор, который контролирует качество графики. Этап также заканчивается утверждением эскиза заказчиком.
- HTML-верстка Утверждённый дизайн передаётся HTML-верстальщику, который «нарезает» графическую картинку на отдельные рисунки, из которых впоследствии складывает HTML-страницу. В результате создаётся код, который можно просматривать с помощью браузера. А типовые страницы впоследствии будут использоваться как шаблоны.
Интерфейс – совокупность технических, программных и методических средств сопряжения в вычислительной системе пользователей с устройствами и программами, а также устройств с другими устройствами и программами.
Различают: интерфейс пользователя – набор методов взаимодействия компьютерной программы и пользователя этой программы; программный интерфейс - набор методов для взаимодействия между программами; физический интерфейс - способ взаимодействия физических устройств.
Рассмотрим более подробно пользовательский интерфейс – совокупность программных и аппаратных средств, обеспечивающих взаимодействие пользователя с компьютером.
Современными видами пользовательских интерфейсов являются: командный интерфейс, реализованный в виде технологии командной строки; GUI – интерфейс, где диалог с пользователем ведется с помощью графических образов - меню, окон, других элементов; SILK - интерфейс (Speech - речь, Image - образ, Language - язык, Knowlege - знание),где компьютер находит для себя команды, анализируя человеческую речь.
Графический интерфейс пользователя (англ. Graphical user interface, GUI) – разновидность интерфейса в котором элементы интерфейса представлены на дисплее, исполнены в виде графических изображений.[5]
В GUI пользователь имеет произвольный доступ ко всем видимым экранным объектам (элементам интерфейса) и осуществляет непосредственное манипулирование ими.
Графический интерфейс пользователя является частью интерфейса, в котором одна сторона представлена пользователям, другая – машиной или устройством и определяет взаимодействие с пользователем на уровне визуализированной информации [5]. Это означает, что GUI интерфейс позволяет осуществлять взаимодействие человека с компьютером в форме диалога с использованием окон, меню и элементов управления (диалоговых панелей, кнопок и так далее).
В результате выполненной работы разработано и реализовано веб-приложение с GUI интерфейсом и применением Razor-движка, а также Bootstrap, в среде программирования Microsoft Visual Studio Express.
Данное приложение предназначено для черчения отрезков по заданным координатам вершин, создания изображения и его загрузки. При этом при запуске форма очищается, координаты инициализируются в стартовые значения. Также есть специальная кнопка, которая, таким образом, очищает поля. Информация, предназначенная для помощи пользователю присутствует, а также имеется раздел «о программе».
В разработанном приложении данные передаются по протоколу HTTP. Если данные необходимо получить – используется метод GET, если же отправить на сервер – используется метод POST.
В приложении отключена возможность кеширования, т.к. браузеры кешируют статический контент, такой как изображение. Поэтому рекомендовано очищать поле с помощью кнопки «Х».
В приложении используются следующие графические образы элементов GUI интерфейса: Button, Ol, Label, меню, ActionLink.
Недостатком данного приложения является то, что не все документы для создания личного дела есть возможность создать в приложении, и нет возможности при необходимости вывести их на печать. Это означает, что данная программа имеет перспективы развития.
Таким образам в данном приложении реализованы возможности использования OLE контейнера в графическом интерфейсе MDI приложения.
Скриншоты программы

