Saitistika 4.0.Руководство разработчика.2005
.pdfТаким образом, оформить заказ может только авторизованный зарегистрированый пользователь
3.3.После оформления заказа пользователю, а также менеджеру магазина автоматически отправляется Email с нотификацией о поступлении заказа.
3.4.В дальнейшем пользователь может снова зайти на сайт и, авторизовавшись, посмотреть на специальной странице статус выполнения своего заказа. Статус изменяет менеджер магазина в бэкофисе. Предполагается, что
дополнительная коммуникация с происходит в оффлайне
Вторичная корзина
1.Технически это такая же корзина, как и основная. В ней могут храниться товары с указанием количества.
2.Пользователь может свободно перекладывать товары из одной корзины в другую в обе стороны, используя тем самым вторичную корзину для того, чтобы «отложить товары на следующие заказы».
3.Корзины авторизованного пользователя сохраняется между сессиями на сервере.
Смена пользователя (переавторизация) во время работы:
В магазине персонализированной информацией являются заказы пользователя и корзина (первичная и вторичная)
1.Корзина
1.1.При заходе неавторизованным пользователем на сайт корзины у пользователя нет. При добавлении товара не авторизованным пользователем создается «временная» гостевая корзина.
1.2.При авторизации пользователя
1.2.1.Если текущая (гостевая или предыдущего авторизованного пользователя) корзина – не пустая, то ее содержимое переписывается в корзину авторизованного пользователя, которая впоследствии может снова изменяться пользователем.
1.3.При разавторизации пользователя
1.3.1.В гостевую корзину переписывается содержимое корзины предыдущего авторизованного пользователя.
2.Заказы пользователя
2.1.В любой момент времени доступны для просмотра только заказы текущего авторизованного пользователя. Анонимам доступ блокируется совсем.
База данных
В виду того, что данная функциональность содержит большое количество таблиц, то более целесообразным является не отображать атрибуты таблиц на диаграмме. За более подробной информацией следует воспользоваться средствами MS SQL сервера.
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
171 из 171 |
|
|
Рисунок 44. Диаграмма таблиц базы данных модуля «Магазин»
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
172 из 172 |
|
|
Описания таблиц
Shops – таблица хранения магазинов
|
Поле |
Описание |
|
|
ID |
Идентификатор магазина |
|
|
Folder |
Ссылка на соответствующий раздел проводника |
|
|
Owner |
Владелец магазина |
|
|
Address |
Адрес магазина |
|
|
Phones |
Контактная информация для покупателей |
|
|
Контактный email |
|
|
|
Bank |
Банк, обслуживающий организацию |
|
|
RaschAccount |
Расчётный счёт |
|
|
BIK |
БИК |
|
|
CorrAccount |
Корреспондентский счёт |
|
|
INN |
ИНН |
|
|
Currency |
Валюта по умолчанию. Может быть NULL. |
|
|
ShowRatingForm |
Признак: показывать ли форму оценки |
|
|
Conference |
Ссылка на форум для обсуждения товаров (на самом деле псевдо-внешний ключ, надо строго |
|
|
|
отслеживать ссылку) |
|
|
MaxNewGoods |
Максимальное количество товаров, которые будут показываться в разделе новых |
|
|
RootCatalogue |
Идентификатор магазина в таблице каталогов |
|
|
MaxDays |
Количество дней, в течение которых товар считается новым |
|
|
ShowAllVariants |
На самом деле хватило бы типа Bit. |
|
|
|
Показывать в каталоге товаров все разновидности или нет. |
|
|
ShopOperators - таблица связки магазинов и пользователей Saitistika – операторов магазина |
|
|
|
Поле |
Описание |
|
|
Man |
Ссылка на People |
|
|
Shop |
Ссылка на Shops |
|
|
ShopDealers - привилегированные пользователи магазина |
|
|
|
Поле |
Описание |
|
|
Shop |
Ссылка на Shops |
|
|
Client |
Ссылка на Clients |
|
|
Mark |
Служебное поле, используется для корректировки списка |
|
|
Goods - товары |
|
|
|
Поле |
Описание |
|
|
ID |
Идентификатор товара |
|
|
Shop |
Ссылка на Shops |
|
|
Label |
Наименование |
|
|
BriefDescription |
Краткое описание |
|
|
Description |
Описание |
|
|
Picture |
Картинка, ссылка на Pictures |
|
|
Notes |
Пометки |
|
|
Keywords |
Ключевые слова. |
|
|
Produced |
Производитель |
|
|
Conference |
Идентификатор форума (с отзывами о товаре) |
|
|
ConfTopic |
Идентификатор цепочки обсуждения (Thread) форума (с отзывами о товаре) |
|
|
GoodsNotes - пометки для товара |
|
|
|
Поле |
Описание |
|
|
Mnemonic |
Мнемоника (англ. буквами) |
|
|
Label |
Текст пометки |
|
|
GoodsAnalogues - таблица для связи товара с его аналогами |
|
|
|
Поле |
Описание |
|
|
Goods |
Ссылка на Goods, товар |
|
|
Analogue |
Ссылка на Goods, его аналог |
|
|
|
|
|
|
|
Copyright © 2005 Individ company |
Страница |
|
|
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
173 из 173 |
GoodsAccomps - таблица для связи товара с его сопутствующими товарами
Поле |
Описание |
Goods |
Ссылка на Goods, товар |
Accomp |
Ссылка на Goods, его сопутствующий товар |
GoodsScores - таблица рейтинга товаров |
|
Поле |
Описание |
Goods |
Ссылка на Goods, товар |
Scores |
Количество проголосовавших |
Summary |
Рейтинг |
LastIp |
Ip последнего проголосовавшего пользователя |
GoodsCatalogue - таблица для связи товара с каталогами магазина |
|
Поле |
Описание |
Goods |
Ссылка на Goods, товар |
Catalogue |
Ссылка на ShopCatalogue |
SeqNo |
Порядковый номер |
GoodsVarieties - разновидности товаров |
|
Поле |
Описание |
ID |
Идентификатор |
Goods |
Ссылка на Goods |
Label |
Название разновидности товара |
GUID |
Учётный номер разновидности товара |
Picture |
Ссылка на Pictures, картинка, подчёркивающая особенность данной разновидности |
Weight |
Вес товара в граммах |
Currency |
Ссылка на Currencies |
Price |
Цена |
ShopPrice |
Магазинная цена |
SelloutPrice |
Цена распродажи |
FormingPeriod |
Срок формирования заказа |
IsVisible |
Видимость товара в каталогах |
LogPrice - история изменения цены |
|
Поле |
Описание |
GoodsVariety |
Ссылка на GoodsVarieties |
BeginDate |
Начальная дата |
EndDate |
Конечная дата |
Currency |
Ссылка на Currencies, валюта |
Price |
Цена |
SelloutPrice |
Цена распродажи |
Roubricator - рубрикатор товаров |
|
Поле |
Описание |
ID |
Идентификатор раздела в рубрикаторе |
Name |
Название раздела |
Description |
Описание раздела |
Parent |
Ссылка на родителя, реально не явл. внешним ключом |
SeqNo |
Для упорядочивания разделов рубрикатора. |
RoubricatorChars - набор свойств рубрикатора |
|
Поле |
Описание |
ID |
Идентификатор свойства |
Roubric |
Ссылка на Roubricator |
Name |
Название |
Measurement |
Единица измерения |
Default |
Значение по умолчанию |
SeqNo |
Для упорядочивания свойств. |
Type |
Тип свойства (число/строка) |
GoodsRoubric - привязка товаров к рубрикатору
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
174 из 174 |
|
|
Поле |
Описание |
Goods |
Ссылка на Goods |
Roubric |
Ссылка на Roubricator |
GoodsChars - значения характеристик для товара |
|
Поле |
Описание |
Goods |
Ссылка на Goods |
Char |
Ссылка на RoubricatorChars |
Value |
Значение |
IsDefinedForVar |
Признак переопределения значения свойства для разновидностей товара. |
GoodsVarChars - значения характеристик для разновидности товара |
|
Поле |
Описание |
Goods |
Ссылка на Goods |
GoodsVar |
Ссылка на GoodsVarieties |
Char |
Ссылка на RoubricatorChars |
Value |
Значение |
ShopCatalogue - каталоги товаров |
|
Поле |
Описание |
ID |
Идентификатор папки |
Parent |
Ссылка на родителя |
Shop |
Ссылка на Shops |
Path |
Имя директории |
Description |
Описание |
Picture |
Ссылка на Pictures |
Title |
Название каталога |
SeqNo |
Для упорядочивания каталогов |
Changed |
Дата последнего изменения |
Date |
Дата создания |
SmallPicture |
Ссылка на Pictures |
Keywords |
Ключевые слова |
Notes |
Пометки каталога |
AmountGoods |
Количество опубликованных в каталоге товаров |
Currencies - валюты и курсы |
|
Поле |
Описание |
ID |
Ссылка на Goods |
Shop |
Ссылка на Shops |
Name |
Полное название валюты |
BriefName |
Краткое обозначение валюты |
Course |
Курс валюты |
Code |
Код валюты в ЦБ |
CurrenciesHystory - история курсов валют |
|
Поле |
Описание |
Currency |
Ссылка на Currencies |
BeginDate |
Дата начала действия курса |
EndDate |
Дата окончания действия курса |
Course |
Курс валюты |
ID |
Идентификатор |
ShopBaskets - товары в корзине (как приготовленные для заказа, так и отложенные) |
|
Поле |
Описание |
Buyer |
Ссылка на Buyers |
Shop |
Ссылка на магазин |
GoodVar |
Ссылка на GoodVarieties |
Quantity |
Количество |
IsDelayed |
Признак «отложенности» (если «1» - то отложенный) |
ID |
Идентификатор |
GoodsOrdered - заказанные товары
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
175 из 175 |
|
|
Поле |
Описание |
Buyer |
Ссылка на Buyers |
Shop |
Ссылка на магазин |
GoodVar |
Ссылка на GoodVarieties |
Order |
Ссылка на ShopOrders |
Code |
Код товара (то, что везде обозначено как GUID) |
Name |
Название товара |
Weight |
Вес товара в граммах |
Quantity |
Количество товара |
Price |
Цена товара на момент заказа |
Discount |
Скидка |
FormingPeriod |
Время формирования заказа на товар |
ShopOrders - заказы |
|
Поле |
Описание |
ID |
Идентификатор заказа |
Shop |
Ссылка на магазин |
Buyer |
Ссылка на Buyers |
Date |
Дата заказа |
Currency |
Ссылка на Currencies |
Price |
Сумма заказа |
Discount |
Скидка в процентах на сумму заказа |
TotalPrice |
Итоговая сумма заказа |
PaymentWay |
Способ оплаты |
DeliveryWay |
Способ доставки |
DeliveryPrice |
Стоимость доставки |
CanSplit |
Признак, можно ли разбить заказ на несколько |
Address |
Адрес доставки |
IsPaid |
Признак оплаченности заказа |
Stage |
Текущее состояние заказа, ссылка на LogOrderStages |
StageChange |
Дата последнего изменения состояния |
Closed |
Признак завершённой обработки заказа |
ShopOrderStages - список различных состояний заказов |
|
Поле |
Описание |
ID |
Идентификатор состояния |
Shop |
Ссылка на магазин |
Stage |
Краткое название состояния |
Description |
Описание состояния |
SeqNo |
Для упорядочивания свойств |
Activity |
Признак активности, используется или нет |
isFirst |
Признак первого состояния (системного) |
LogOrderStages - история изменения состояний товаров |
|
Поле |
Описание |
Order |
Ссылка на ShopOrders |
Stage |
Ссылка на ShopOrderStages |
BeginDate |
Начальная дата |
EndDate |
Дата перехода в след. Состояние |
Comment |
Комментарий |
ID |
Идентификатор записи |
ShopDeliveries - способы доставки |
|
Поле |
Описание |
ID |
Идентификатор |
Shop |
Ссылка на магазин |
Name |
Наименование |
Description |
Описание |
IsVisible |
Признак активности, используется этот вид доставки или нет |
ShopPayments - способы оплаты
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
176 из 176 |
|
|
Поле |
Описание |
ID |
Идентификатор |
Shop |
Ссылка на магазин |
Name |
Наименование |
Description |
Описание |
IsVisible |
Признак активности, используется этот вид оплаты или нет |
ShopDelPay - таблица для связи способов доставки и способов оплаты |
|
Поле |
Описание |
Delivery |
Ссылка на ShopDeliveries |
Payment |
Ссылка на ShopPayments |
Buyers - покупатели (пользователи) магазина |
|
Поле |
Описание |
ID |
Идентификатор |
IsTemp |
Признак «временности» |
LastVisit |
Дата последнего посещения |
Currency |
Ссылка на валюту, в которой показываются все цены в магазине |
MailIndex |
Почтовый индекс |
Country |
Страна |
Region |
Область, край |
City |
Город |
Address |
Ул., дом, кв. доставки |
SubwayStation |
Станция метро |
Phone |
Телефон для связи |
DeliveryWay |
Ссылка на способ доставки, который был использован в последний раз |
PaymentWay |
Ссылка на способ оплаты, который был использован в последний раз |
Client |
Ссылка на таблицу зарегистрированных пользователей Clients |
Name |
ФИО |
ContactInfo |
Контактная информация |
GoodsSort |
Сортировка товаров в каталоге магазина |
BuyersShopSettings - настройки пользователя в магазине. |
|
Поле |
Описание |
Buyer |
Идентификатор покупателя, ссылка на Buyers |
Shop |
Идентификатор магазина, ссылка на Shops |
Currency |
Ссылка на валюту, в которой показываются все цены в магазине, на Currencies |
SortOrder |
Номер сортировки товаров в каталоге |
Delivery |
Идентификатор доставки, ссылка на ShopDeliveries |
Payment |
Идентификатор оплаты, ссылка на ShopPayments |
CanSplit |
Признак разбиения заказа (можно доставлять по частям или нет) |
ShowVariants |
Показывать товары в каталоге с разновидностями или без разновидностей. |
ListGoods_forSplitOrder - таблица для перемещения товаров при разбиении заказа. |
|
Поле |
Описание |
OrderId |
Идентификатор изменяемого заказа, ссылка на ShopOrders |
VarId |
Идентификатор разновидности товара, ссылка на GoodsVarieties |
Amount |
Количество перемещаемого товара. |
Хранимые процедуры
Описание не требуется.
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
177 из 177 |
|
|
Классы
|
|
|
CShop |
|
|
|
|
|
CShopCatalogue |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+get_QueryString() |
|
|
|
|
+get_CatalogueCount() |
||||||||||
|
+get_DeliveryCount() |
|
|
|
|
+get_CatalogueID(in I) |
||||||||||
|
+get_DeliveryID(in I) |
|
|
|
|
+get_CatalogueName(in I) |
||||||||||
|
+get_DeliveryName(in I) |
|
|
|
|
+get_CatalogueURL(in I) |
||||||||||
|
+get_DeliveryDescription(in I) |
|
|
|
|
+get_CatalogueAmount(in I) |
||||||||||
|
+get_PaymentCount(in I) |
|
|
|
|
+get_GoodsCount() |
||||||||||
|
|
|
|
|
||||||||||||
|
+get_PaymentID(in I, in J) |
|
|
|
|
+get_GoodsID(in I) |
||||||||||
|
+get_PaymentName(in I, in J) |
|
|
|
|
+get_GoodsVariantID(in I) |
||||||||||
|
+get_PaymentDescription(in I, in J) |
|
|
|
|
+get_GoodsName(in I) |
||||||||||
|
|
|
|
|
||||||||||||
|
+get_CurrencyCount() |
|
|
|
|
+get_GoodsDescription(in I) |
||||||||||
|
+get_CurrencyID(in I) |
|
|
|
|
+get_GoodsMinPrice(in I) |
||||||||||
|
+get_CurrencyName(in I) |
|
|
|
|
+get_GoodsMaxPrice(in I) |
||||||||||
|
+get_CurrencyCourse(in I) |
|
|
|
|
+get_GoodsPrice(in I) |
||||||||||
|
|
|
|
|
||||||||||||
|
+Load(in Folder) |
|
|
|
|
+get_GoodsCurrency(in I) |
||||||||||
|
+Store(in Name, in Duration) |
|
|
|
|
+get_GoodsCurrencyCourse(in I) |
||||||||||
|
+Fetch(in Name) |
|
|
|
|
+get_GoodsNotes(in I) |
||||||||||
|
-Class_Initialize() |
|
|
|
|
+get_GoodsImage(in I) |
||||||||||
|
-LoadPayments(in I) |
|
|
|
|
+get_GoodsURL(in I) |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
+get_GoodsHasVariants(in I) |
|||||
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
+get_GoodsIcons(in I) |
|||||
|
|
|
CShopDecoration |
|
|
|
+Load(in FolderID, in ShopID, in CatalogueID, in Lower, in Upper) |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
+LoadNew(in FolderID, in ShopID, in Lower, in Upper) |
|||||
|
+CreateNavigation(in Shop, in Basket) |
|
|
|
||||||||||||
|
|
|
|
|||||||||||||
|
|
|
|
+LoadRecommended(in FolderID, in ShopID, in Lower, in Upper) |
||||||||||||
|
+ListGoods(in Shop, in Catalogue, in Buyer, in Count) |
|
|
|
||||||||||||
|
|
|
|
+Store(in Key, in Duration) |
||||||||||||
|
+WriteGood(in Shop, in Goods, in Buyer, in ShowIcons) |
|
|
|
||||||||||||
|
|
|
|
+Fetch(in Key) |
||||||||||||
|
+Help(in Shop, in Basket, in Buyer) |
|
|
|
||||||||||||
|
|
|
|
-Class_Initialize() |
||||||||||||
|
-Class_Initialize() |
|
|
|
|
|
|
|
|
|
|
CShopGoods |
|
|
|
CShopByuer |
|
|
|
|
|
|
|
|
|
|
|
+get_Icons() |
|
+get_OrderCount() |
|
|
|
|||
|
|
|
|
+get_VariantCount() |
|||
|
+get_OrderID(in I) |
|
|
|
|||
|
|
|
|
+get_VariantID(in I) |
|||
|
+get_OrderDate(in I) |
|
|
|
|||
|
|
|
|
+get_VariantName(in I) |
|||
|
+get_OrderTotal(in I) |
|
|
|
|||
|
|
|
|
+get_VariantDays(in I) |
|||
|
+get_OrderCurrencyCourse(in I) |
|
|
|
|||
|
|
|
|
+get_VariantPrice(in I) |
|||
|
+get_OrderCurrency(in I) |
|
|
|
|||
|
|
|
|
+get_VariantCurrencyCourse(in I) |
|||
|
+get_OrderPayment(in I) |
|
|
|
|||
|
|
|
|
+get_VariantCurrency(in I) |
|||
|
+get_OrderDelivery(in I) |
|
|
|
|||
|
|
|
|
+get_VariantImage(in I) |
|||
|
+get_OrderStage(in I) |
|
|
|
|||
|
|
|
|
+get_VariantNotes(in I) |
|||
|
+get_OrderComment(in I) |
|
|
|
|||
|
|
|
|
+get_VariantIcons(in I) |
|||
|
+get_OrderIsPaid(in I) |
|
|
|
|||
|
|
|
|
+get_PropertyCount() |
|||
|
+Load(in FolderID, in ShopID, in Login, in Password) |
|
|
|
|||
|
|
|
|
+get_PropertyName(in I) |
|||
|
+GetSettings(in ShopID) |
|
|
|
|||
|
|
|
|
+get_PropertyValue(in I) |
|||
|
+SetSettings(in ShopID, in NewCurrencyID, in NewSortOrder, in NewShowVariants) |
|
|||||
|
|
+get_VariantPropertyCount(in I) |
|||||
|
+Add(in ShopID) |
|
|
|
|||
|
|
|
|
+get_VariantPropertyName(in I, in J) |
|||
|
|
|
|
|
|
|
+get_VariantPropertyValue(in I, in J) |
|
|
|
|
|
|
|
+Load(in FolderID, in ShopID, in CatalogueID, in GoodsID) |
|
|
CShopBasket |
|
|
|
+Rate(in Mark, in IP) |
|
|
|
|
|
|
|
|
-LoadValues(in I) |
|
+get_GoodsCount() |
|
|
|
|||
|
+get_GoodsVariant(in I) |
|
|
|
|
||
|
+get_GoodsID(in I) |
|
|
|
|
||
|
|
|
|
CShopOrder |
|||
|
+get_GoodsName(in I) |
|
|
|
|||
|
|
|
|
||||
|
|
|
|
|
|||
|
+get_GoodsAmount(in I) |
|
+get_GoodsCount() |
|
|||
|
+get_GoodsPrice(in I) |
|
+get_GoodsName(in I) |
|
|||
|
+get_GoodsCurrencyCourse(in I) |
|
+get_GoodsAmount(in I) |
|
|||
|
+get_GoodsCurrency(in I) |
|
+get_GoodsPrice(in I) |
|
|||
|
+get_GoodsCatalogueID(in I) |
|
+get_GoodsTotal(in I) |
|
|||
|
+get_GoodsTotal(in I) |
|
+get_GoodsTotalSum() |
|
|||
|
+get_GoodsURL(in I) |
|
+get_HistoryCount() |
|
|||
|
+Load(in FolderID, in ShopID, in BuyerID) |
|
+get_HistoryDate(in I) |
|
|||
|
+Add(in ShopID, in BuyerID, in VariantID) |
|
+get_HistoryStage(in I) |
|
|||
|
+Clear(in ShopID, in BuyerID) |
|
+get_HistoryComment(in I) |
|
|||
|
+Delete(in ShopID, in BuyerID, in VariantID) |
|
+Load(in FolderID, in ShopID, in BuyerID, in OrderID) |
||||
|
+Move(in ShopID, in BuyerID, in VariantID) |
|
+Cancel() |
|
|||
|
+SetAmount(in ShopID, in BuyerID, in VariantID, in Amount) |
|
+Create(in ShopID, in BuyerID) |
|
|||
|
-Class_Initialize() |
|
+Save(in ShopID, in BuyerID, in Delivery, in Payment, in SendType, in Comment, in ClientID) |
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
178 из 178 |
|
|
Рисунок 45. UML-диаграмма классов модуля «Магазин»
Список классов
CShop CShopBasket CShopBuyer CShopCatalogue CShopGoods CShopOrder CShopDecoration
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
179 из 179 |
|
|
Классы, функции и хранимые процедуры
Общие правила по работе с классами и функциями
При разработке фронтофиса и бэкофиса применяется объектно-ориентированный подход (как одна из технологий), в соответствие с которым система представляется как набор объектов, которые в свою очередь являются экземплярами классов. В виду ограниченности средств, которые предоставляет Visual Basic (отсутствие наследования, полиморфизма и т д), система содержит файлы, состоящие не только из описаний классов, но и из функций, которые могут использоваться несколькими классами совместно. Имеется также некоторый набор правил и ограничений, который позволяет все-таки оставаться в рамках объектно-ориентированного подхода в рамках тех средств, что представляет Visual Basic.
Правила построения классов и функций
Любой класс сайтистики, предназначенный для работы в ASP-коде, является отдельным файлом. Имена класса и файла совпадают и начинаются с латинской буквы 'C'. Имя имеет простой и понятный смысл, по которому сразу можно догадаться для чего предназначен данный класс. Класс инкапсулирует в себе максимально возможный набор свойств и методов по работе с какой-либо функциональностью. Классы бывают двух типов – контейнеры элементов (списки, деревья и др.) и сами элементы. Из названия класса интуитивно понятно, к какому типу он относится (например, к контейнеру прибавляется слово Tree, List или просто окончание ‘s’).
Пример: CMaterials.asp класс – CMaterials
Из названия ясно, что этот класс предназначен для работы со списком материалов и находится в файле, имя которого совпадает с именем класса.
Для каждой функциональности заводится также файл общих функций. Название файла состоит из имени функциональности и ключевого слова functions. В данном файле сосредоточены общие функции для конкретной функциональности. В этот файл могут быть также включены классы по директиве include. Рекомендуется все настройки, константы и общие для классов функции включать именно в этот файл.
Пример: test-functions.asp
Файл содержит функции для функциональности ‘Тесты’.
Для удобства программирования фронтофиса и бэкофиса были созданы общие файлы с функциями, часто используемые в процессе работе. Для фронтофиса СFOUtils.asp, для бэкофиса CBOUtils.asp и общий файл с совместно используемыми функциями – Utils.asp. Эти файлы подчиняются правилам расположения классов и функций, описанных ниже. Настоятельно рекомендуется включать часто используемые функции именно в эти файлы.
Описанный выше порядок является рекомендуемым, но необязательным и может быть нарушен для совместимости Сайтистики с предидущими версиями.
Правила расположения классов и функций
Классы и функции располагаются согласно их назначению:
1.предназначенные только для работы фронтофиса расположены в теме, к которой они относятся, например в
'common\data\Themes\basic\ '.
2.общие для фронтофиса и бэкофиса в ‘common\include\’
3.общие файлы бэкофиса в ‘include\’
4.файлы конкретной функциональности бэкофиса в 'aspscripts\Имя_функциональности'
Данное расположение является результатом эволюционного развития сайтистики, и менять что-либо в его структуре крайне не рекомендуется.
Copyright © 2005 Individ company |
Страница |
Контакты: www.saitistika.ru | support@saitistika.ru | (0852) 321464 |
180 из 180 |
|
|