Автор: Пользователь скрыл имя, 22 Ноября 2011 в 20:06, курсовая работа
Целью данной работы является осветить все аспекты проектирования Интернет-магазина, и в качестве примера создать такой магазин с несложной структурой (см. Приложение).
Для достижения поставленной цели необходимо решить следующие задачи:
- дать понятие электронного магазина и рассказать о его особенностях;
- спроектировать архитектуру электронного магазина;
Введение ……………………………………………….……………….…………..3
Глава 1. Постановка задачи проектирования
1.1. Электронная коммерция ……………………………………..……….. 6
1.2. Понятие электронный магазин и его особенности …...……..7
1.3. Классификация электронных магазинов ………………………..11
Глава 2. Проектирование интернет магазина
2.1. Архитектура электронного магазина ……………………………… 13
2.2. Разработка системы оплаты и доставки ………………………… 17
2.3. Разработка интерфейса интернет магазина …………………...21
2.4. Алгоритм работы электронного магазина ……………………… 25
Глава 3. Программная часть интернет магазина
3.1. Cреда разработки ……………………………………………………...…27
3.2. Безопасность в ASP.NET …………………………………………….…. 27
3.3. Управление состоянием …………………………………………….….37
Заключение …………….………………………………………………………... 42
Список использованной литературы……………………………………..43
API-интерфейс Membership
API-интерфейс
Membership — это завершенная система
управления пользователями. Она помогает
вам создавать, редактировать и удалять
пользователей, а также включает функциональность
восстановления паролей. Этот АРI-интерфейс
можно применять для программной реализации
этих управленческих задач, или же, использовать
Web-ориентированный инструмент конфигурирования
ASP.NET для графического администрирования
ваших пользователей. Благодаря данной
инфраструктуре, вы можете сэкономить
много времени, поскольку более нет необходимости
создавать свой собственные приложения
администрирования пользователей, потому
что они уже существуют в каркасе ASP.NET
2.0, Более того, он включает также функциональность
проверки комбинаций имен и паролей, вводимых
пользователями.
API-интерфейс Roles
Во многих
случаях авторизация
API-интерфейс Profiles
Конечно,
если ваше Web-приложение аутентифицирует
пользователей, эти пользователи могут
пожелать сохранить настройки на
вашем Web-сайте для последующих визитов.
Обычно для таких прецедентов использования
вы создаете так называемые пользовательские
профили, которые сохраняют настройки
отдельно для каждого пользователя между
их визитами на сайт. Большая разница между
пользовательскими профилями и состояниями
сеанса состоит с том, что профили сохраняются
между многими сеансами.
3.3.
Управление состоянием
Ни одна среда для разработки Web-приложений, какой бы совершенной она не была, не может изменить тот факт, что HTTP является протоколом, который не сохраняет никакой информации о состоянии. После первого Web-запроса клиент отключается от сервера, и механизм ASP.NET очищает объекты страницы. Такая архитектура позволяет Web-приложениям обслуживать одновременно тысячи запросов, не истощая полностью ресурсы памяти сервера. Недостатком является то, что код должен использовать другие технологии для хранения информации между Web-запросами и ее извлечения в случае необходимости.
ASP.NET включает
целый ряд опций для
Состояние сеанса (Session) | Состояние приложения
(Application) | |
Допустимые
типы данных |
Все типы данных .NET,
которые поддаются |
Все типы данных .NET |
Место хранения | В памяти сервера | В памяти сервера |
Время жизни | Истекает по прошествии предопределенного периода времени (который как правило длится 20 минут, но может быть изменен глобально или программно) | Совпадает со временем жизни приложения (которое обычно длится до перезагрузки сервера) |
Контекст | Охватывает всё ASP.NET приложение целиком | Охватывает всё ASP.NET-приложение целиком. В отличие от большинства других типов методов, данные приложения являются глобальными для всех пользователей |
Безопасность | Является безопасным, потому что данные никогда не передаются клиенту. Однако подвержено атакам типа перехвата сеанса, если не используется SSL | Является очень безопасным, потому что данные никогда не передаются клиенту |
Сложности, влияющие на производительность |
Хранение большого количества информации может значительно замедлить работу сервера, особенно в случае, когда к нему подключается одновременно большое количество пользователей, потому что для каждого пользователя будет создаваться отдельная копия данных сеанса | Хранение большого количества информации может замедлить работу сервера, потому что срок жизни этих данных никогда не будет заканчиваться и они никогда не будут удаляться |
Обычно применяется для | Хранения элементов в корзине для покупок | Хранения глобальных данных любого типа |
Состояние
сеанса (Session)
Состояние сеанса — это самая сложная технология для управления состояниями. Она позволяет сохранять информацию на одной странице и затем получать к ней доступ с другой страницы, а также поддерживает объекты любого типа, включая специальные, создаваемые самим разработчиком, типы данных. Лучше всего то, что состояние сеанса использует тот же основанный на коллекциях синтаксис, что и состояние вида. Единственное отличие — имя встроенного свойства страницы, которое в данном случае выглядит как Session.
Каждый
клиент, который получает доступ к
приложению, имеет свой сеанс и
свою отдельную коллекцию данных. Состояние
сеанса идеально подходит для сохранения
таких данных, как элементы, которые находятся
в корзине для покупок пользователя, когда
он переходит с одной страницы на другую.
Но использование состояния сеанса имеет
свою цену. Хотя оно решает многие из проблем,
которые возникают в случае применения
других технологий управления состояниями,
его использование вынуждает Web-сервер
сохранять дополнительную информацию
в памяти. Эта необходимость в использовании
дополнительных ресурсов памяти сервера,
пусть даже в маленьком объеме, очень быстро
может достичь угрожающего производительности
уровня, когда к сайту начнут получать
доступ сотни или тысячи клиентов.
Состояние
приложения (Application)
Состояние
приложения позволяет сохранять глобальные
объекты, доступ к которым может получать
любой клиент. В основе состояния приложения
лежит класс System.Web.
Состояние
приложения также может применяться
для хранения часто используемой информации,
создание которой отнимает много времени
(такой как полный каталог товаров, который
требует выполнения поиска в базе данных).
Однако использование для хранения такой
информации коллекции Application приводит
к появлению различных проблем вроде того,
как проверить, являются ли данные действительными,
и как заменить их в случае необходимости.
Это также может негативно сказаться на
производительности, если каталог продуктов
является слишком большим.
Кроме
этого, существуют и другие опции
для управления состоянием - это состояние
вида, строка запроса, cookie-наборы.
Состояние
вида - это вариант, который должен
рассматриваться самым первым при необходимости
хранения информации в пределах одной
единственной страницы. Web-элементы управления
ASP.NET используют состояние вида по умолчанию.
Оно позволяет им сохранять значения свойств
между операциями обратной отсылки данных.
С помощью свойства ViewState вы можете добавить
в коллекцию состояния вида свои собственные
данные. В частности, вы можете здесь хранить
простые типы данных и свои собственные
специальные объекты.
Наиболее распространенный подход передавать информацию с помощью строки запроса в URL-адресе. Именно этот подход часто применяется в поисковых службах. Например, при выполнении поиска на Web-сайте Google пользователь перенаправляется на новый URL-адрес, который включает заданные условия поиска:
http://www.google.ru/search?
Строка запроса
- это та часть URL-адреса, которая находится
после вопросительного знака. В данном
случае она определяет одну единственную
переменную с именем q, которая содержит
строку internet+shop.
Специальные
cookie-наборы - это еще один способ сохранения
информации для последующего использования.
Cookie-наборы представляют собой небольшие
файлы, которые создаются на жестком диске
клиента (или, если они являются временными,
в памяти Web-браузера). Одним из преимуществ
cookie-наборов является то, что они работают
"автоматически", и пользователь
даже не знает о том, что должна быть сохранена
какая-то информация. Они также могут запросто
использоваться любой страницей в приложении
и даже сохраняться между посещениями,
что подразумевает действительно долгосрочное
хранение. Они обладают рядом таких же
недостатков, что и строки запросов. А
именно — они могут хранить только простую
строковую информацию, и пользователь
очень легко может получить к ним доступ
и просмотреть их, отыскав и открыв соответствующий
файл. Эти факторы делают их неподходящим
вариантом, когда требуется сохранить
сложную или секретную информацию или
просто большой объем данных.
ЗАКЛЮЧЕНИЕ
Итак, в завершении своей курсовой работы, очевидно, что разработка проекта полноценного Интернет магазина – далеко не простая задача, требующая для своего решения группу квалифицированных в разных областях программистов, а не одного человека. В данной работе я пытался осветить основные аспекты проектирования современного Интернет-магазина.
Таким
образом, для качественно разработанного
Интернет магазина с полной функциональностью
и защищённостью требуется следующее:
По совокупности перечисленных требований наиболее подходящей для поставленной задачи является платформа ASP.NET, которая полностью удовлетворяет вышеперечисленным требованиям.
На
примере, представленном в Приложении,
я отразил основную структуру Интернет
магазина и наглядно показал его работу.
Для его создания использовал мощную среду
профессиональной разработки Microsoft Visual
Studio 2005.
СПИСОК
ЛИТЕРАТУРЫ