|
|||||||||||||||||||||||||||||||||||||||||||
Реклама:Наши партнёры:
Наша рассылка: |
Моделирование определяемых типов C++
Чтобы смоделировать определяемый тип C++ (typedef), создайте UML-класс и примените к нему стереотип
Чтобы создать определяемый тип
Чтобы понять зависимость определения определяемого типа от свойств, предоставляемых профилем, вы можете представить себе определяемый тип следующим образом: typedef
|
||||||||||||||||||||||||||||||||||||||||||
Предположим, что вы хотите объявить метод константным, чтобы он был сгенерирован с константным ключевым словом, как в )int Operation1 (MyType Parameter1 const;. Для этого необходимо установить флажок для спецификатора Query на вкладке General в представлении Properties для этого метода, как показано на рисунке 7. Чтобы воспользоваться этой возможностью, нет необходимости в применении стереотипа.
Рисунок 7. Создание константного метода

Исключения — это приоритетные элементы в UML, поэтому их можно моделировать без использования профилей. Для упрощения и обобщения практики моделирования преобразования UML — C++ везде, где это возможно, используют свойства UML, а не профили. Чтобы сгенерировать предложение throw для функции, например, int Operation1 () throw (MyType);, необходимо сначала создать параметр для этой операции и установить для свойства Is Exception значение true.
Имя параметра не имеет значения, поскольку оно игнорируется в процессе преобразования, но лучше выбрать такое имя, которое позволит правильно идентифицировать исключение при его возникновении. На рисунке 8 показано, как установить для параметра Is Exception значение true.
Рисунок 8. Установление типа вызова исключительной ситуации для метода

Преобразование UML — C++ предназначено для автоматического выделения отношений из модели с последующим генерированием корректных предложений include или объявлений forward. Однако могут возникнуть ситуации, в которых вы захотите контролировать формирование предложений include. Например, вы хотите использовать в теле метода локальные переменные определенного типа, и поэтому вам нужно, чтобы в файле тела были сгенерированы предложения include для этого типа.
Вам придется явным образом смоделировать такие случаи, создав UML-отношение между этими двумя классами и применив к этому отношению стереотип cpp_dependency. Этот стереотип поставляется со свойством IsInclusionInHeader, значение которого по умолчанию равно false. Если вы хотите, чтобы предложения include были сгенерированы в файле тела, то вы должны оставить значение по умолчанию (false). Если эти предложения include нужно сгенерировать в заголовке, то следует либо вообще не применять стереотип cpp_dependency к созданному отношению, либо применить стереотип и установить для свойства IsInclusionInHeader значение true.
Если вам нужно использовать в исходном коде типы из стандартной библиотеки или из какой-либо другой библиотеки, то в модели такие строки необходимо определить как простые строки (plain string). Например, если нужно объявить атрибут как vector of integers, в модели вы определили бы его тип как vector<int>. В процессе преобразования этот тип будет считаться примитивным типом, в результате чего для него не будут сгенерированы предложения include или объявления forward. Следовательно, такие типы необходимо включить в исходные файлы явным образом.
Например, для типа vector необходимо вставить в исходный код явное предложение include для типа vector: #include <vector>. Для поддержки этой возможности в каждом сгенерированном файле предусмотрена секция, которая будет сохранена дословно при повторном применении преобразования UML-C++, как показано в следующем листинге (см. листинг 1). Обратите внимание на строку //TODO: Add definitions that you want preserved (Добавьте определения, которые должны быть сохранены). Все, что вы напишете между комментариями Начало секции и Завершение секции, будет сохранено. Именно сюда можно добавлять такие предложения, как #include <vector>.
Листинг 1. Код, сгенерированный для класса Car
| #ifndef CLASS1_H #define CLASS1_H //Начало секции для файла Class1.h //TODO: Добавьте определения, которые должны быть сохранены //Завершение секции для файла Class1.h #include «MyType.h» //@generated «UML to C++ (com.ibm.xtools.transform.uml2.cpp.CPPTransformation)» class Class1 { //Начало секции для Class1 //TODO: Добавьте определения, которые должны быть сохранены //Конец секции для Class1 public: //@generated «UML to C++ (com.ibm.xtools.transform.uml2.cpp.CPPTransformation)» int Operation1 ()const throw (MyType); }; //Завершение описания класса Class1 #endif |
Обратите внимание на то, что в коде предыдущего листинга имеется строка //Начало секции для Class1 … //Завершение секции для Class1 . Вы можете поместить здесь все специфические предложения языка C++, которые вы не можете смоделировать, и они будут сохраняться до тех пор, пока вы явным образом их не удалите. При повторном применении преобразования UML — C++ предложения в этой секции не будут перезаписаны. Если вам не нужна эта секция в генерируемом коде, то, возможно, вы захотите удалить ее. При повторном выполнении преобразования UML — C++ она не будет сгенерирована снова. Именно так вы сможете избавиться от комментариев, которые вам не нужны.
В этом случае удалите следующую секцию (см. листинг 2), после чего она не будет восстановлена автоматически. Если вам снова понадобится эта секция, то придется вставить ее вручную в этом же месте кода.
Листинг 2. Код, сгенерированный для класса Car
| … //Начало секции для Class1 //TODO: Добавьте определения, которые должны быть сохранены //Завершение секции для Class1 … |
Чтобы изменить имя пакета, выполните двойной щелчок на конфигурационном файле преобразования, чтобы открыть его в редакторе. Перейдите на вкладку Mapping и установите флажок Enable mapping, как показано на рисунке 9.
Рисунок 9. Разрешение отображения модели

Нажмите кнопку New, чтобы создать модель отображения по умолчанию и дать ей подходящее имя. Нажмите кнопку Edit Mapping, чтобы вывести на экран диалоговое окно, показанное на рисунке 10.
Рисунок 10. Редактирование модели отображения

Предположим, вы работаете с UML-моделью, показанной на рисунке 11. Если у вас нет модели отображения, то класс Date будет сгенерирован в папке с именем Package1. Если же вы хотите, чтобы Package1 был сгенерирован как Folder1, тогда вам нужно будет использовать модель отображения. Для этого в модели отображения перейдите к элементу Package1, а затем в редактируемом поле Mapped Name в нижней части страницы мастера введите имя Folder1. Теперь в генерируемом коде класс Date будет помещен в папку с именем Folder1.
Рисунок 11. Рабочая UML-модель

Когда мы отображаем класс UML в модели отображения на другое имя, мы изменяем имя файла, в котором он будет сгенерирован, но не имя класса, который будет сгенерирован в этом файле. По умолчанию высокоуровневый класс генерируется в файле, имя которого соответствует имени этого класса. Значит, для класса UML с именем MyClass преобразование UML — C++ сгенерирует файлы MyClass.h и MyClass.cpp.
Однако вы можете выбрать другое имя для UML-класса при помощи модели отображения. Аналогично тому, как мы переименовали UML-пакет в модели отображения, чтобы сгенерировать другое имя для папки, можно отобразить UML-класс в файл с другим именем. Имя самого класса модель отображения не меняет. Следовательно, чтобы сгенерировать несколько классов в одном файле, достаточно дать им всем одно и то же целевое имя в модели отображения.
05.02.2008
Комментарии





Добавить комментарий (анонимные комментарии не публикуются!!!)
| |
|
Читайте также статьи и материалы о технологиях Rational и Microsoft в блоге Новичкова Александра и Шамрая Александра |
08.05.2012 18:00:34
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 28-30 мая в Москве
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 28-30 мая в Москве. Проводится совместными усилиями компаний СМ-Консалт итренинговым центром КарьерЛаб. Место проведения тренинга - ул. Восьмого Марта, вл. 1, стр. 12 (схема проезда).
Продолжительность тренинга составляет 2 или 3 дня по выбору. Целевая аудитория:
начальники отделов, менеджеры проектов, директора, руководители
проектов внедрения, бизнес-аналитики, специалисты команды внедрения.
21.02.2012 14:21:11
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 14-16 марта в Санкт-Петербурге
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 14-16 марта в Санкт-Петербурге. Проводится совместными усилиями компаний СМ-Консалт, тренинговым центром КарьерЛаб и Legal SoftWave. Место проведения тренинга в данный момент уточняется.
Продолжительность тренинга составляет 2 или 3 дня по выбору. Целевая аудитория: начальники отделов, менеджеры проектов, директора, руководители проектов внедрения, бизнес-аналитики, специалисты команды внедрения.
21.02.2012 12:42:20
Новая статья: IT и психология. Человеческий фактор в парном программировании: почему многие не получают желаемого от его внедрения?
Статья, находящаяся перед вами, открывает цикл статей о человеческом
факторе, Agile-практиках и других полезных приемах, используемых при
управлении командами в ИТ. Объединяет рассматриваемые практики и приемы
одно – они позволяют проявиться положительным эффектам, связанным с
человеческим фактором. И мы объясняем, почему с точки зрения психологии,
это происходит. Так сказать, подводим теоретическую и экспериментальную
базу под то, что себя уже давно зарекомендовало и работает. Или под то,
что работает не у всех, и потому является предметом оживленных споров и
дискуссий. И начинаем мы наши исследования с рассмотрения эффекта
парного программирования через призму экспериментов социальной
психологии.
Отдельную благодарность за рецензию и время, потраченное на прочтение
первого варианта статьи, выражаем Асхату Уразбаеву,
ценные замечания которого позволили не только улучшить данную статью,
но и позволили убедиться в необходимости и востребованности именно цикла
статей!
Читать -->
16.01.2012 20:09:00
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 14-16 февраля в Новосибирске
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 14-16 февраля в Новосибирске. Проводится совместными усилиями компаний СМ-Консалт, тренинговым центром КарьерЛаб. Место проведения тренинга в данный момент уточняется.
Продолжительность тренинга составляет 2 или 3 дня по выбору. Целевая аудитория: начальники отделов, менеджеры проектов, директора, руководители проектов внедрения, бизнес-аналитики, специалисты команды внедрения.
27.12.2011 16:15:27
Компания "СМ-Консалт" получила отзыв о работах в Федеральной Налоговой Службе (ГНИВЦ ФНС)
Специалистами ООО «СМ-Консалт» в 2010-2011г. был выполнен проект
по настройке и внедрению системы управления жизненным циклом разработки
программных систем в части управления изменениями и конфигурациями на
основе Microsoft Visual Studio Team Foundation Server 2010 для
Филиала Федерального государственного унитарного предприятия «Главный
научно-исследовательский вычислительный центр Федеральной налоговой
службы» в Приволжском Федеральном округе (Филиал ФГУП ГНИВЦ ФНС России в
ПФО).
26.12.2011 21:05:28
Успешное проведение тренинга по коммуникациям и психологии для ИТ-руководителей в Санкт-Петербурге
В блоге Новичкова Александа доступен отчет авторов тренинга «Коммуникации и психология межличностных отношений в ИТ-проектах». В целом, тренинг завершился положительно - средний балл за интересность по 5 бальной шкале - 4,2 балла.
В отчете дается развернутый комментарий, подводятся итоги, рассматриваются как положительные моменты, так и элементы критики и пожеланий, собранные на основе анкет слушателей.
Читать -->
28.11.2011 20:09:21
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 19-21 декабря в Санкт-Петербурге
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» состоится 19-21 декабря в Санкт-Петербурге. Проводится совместными усилиями компаний СМ-Консалт, тренинговым центром КарьерЛаб и Legal SoftWave. Место проведения тренинга в данный момент уточняется.
Продолжительность тренинга составляет 2 или 3 дня по выбору. Целевая аудитория: начальники отделов, менеджеры проектов, директора, руководители проектов внедрения, бизнес-аналитики, специалисты команды внедрения.
28.11.2011 18:31:55
Компания «СМ-Консалт» сообщает об успешном завершении нового тренинга, проведенного совместно с компанией «Карьерлаб»!
Тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах» прошел 17-18 ноября в Москве.
Слушатели проявили большой интерес и подтвердили важность выбранного направления. Контакт с аудиторией был установлен сразу. Были проработаны такие важные аспекты необходимых навыков из области психологии и коммуникаций, как умение управлять группой, говорить с заказчиком, как донести до оппонента свое решение и многое другое, что очень важно при разработке или внедрении ИТ-проектов.
28.11.2011 15:05:11
Новая статья: "Всегда ли «Да» – это «Да»? Или как нас вынуждают принимать решения"
Мы предлагаем вашему вниманию цикл статей, в основу которых положены
психологические практики и приемы, позволяющие влиять на решения,
принимаемые людьми. Эта идея была логическим продолжением ряда
выступлений с докладами о коммуникациях в проектах разработки и
внедрения ПО. Давайте, не откладывая в долгий ящик, начнем с самого
простого приема убеждения, с которым сталкиваемся ежедневно в магазинах,
в транспорте, в разговорах с коллегами… да мало ли где еще!
Авторы: Новичков Александр и Карабанова Галина.
Читать -->
10.10.2011 11:16:06
Компания «СМ-Консалт» открывает новое направление продаж - ПО Adobe Connect
Программное обеспечение Adobe Connect является гибкой системой
web-коммуникации с высоким уровнем информационной безопасности. Adobe
Connect предоставляет такие важнейшие функции корпоративного
взаимодействия, как деловое общение и совместная работа сотрудников на
уровне предприятий, дистанционное обучение, организация широкомасштабных
сетевых семинаров и презентаций. Система Adobe Connect базируется на
технологии Adobe Flash, а также Air, и поэтому позволяет подключать
сотрудников к единому пространству взаимодействия через web-браузер с
любых устройств.
17.09.2011 21:40:22
Новая статья: "Разработка прикладного программного обеспечения с использованием Rational Unified Process на Иркутском Авиационном заводе"
На сайте СМ-Консалт открыт новый раздел Статьи наших заказчиков об успешных внедрениях IBM Rational и Microsoft. Статьи для данного раздела пишутся нашими заказчиками и рассказывают о сути проектов внедрения технологий IBM и Microsoft. Первая статья, представленная вашему вниманию написана сотрудниками Иркутского Авиационного Завода (ИАЗ).
Иркутский авиазавод имеет длительный опыт разработки программного
обеспечения для информационной поддержки ключевых бизнес-процессов
предприятия. Однако, в связи с увеличивающейся сложностью и повышением
требований к разрабатываемому программному обеспечению, возникла
настоятельная необходимость усовершенствовать процесс разработки:
повысить качество разрабатываемых программных продуктов,
стандартизировать процесс с увеличением его эффективности.
13.09.2011 12:07:29
Новый тренинг «Коммуникации и психология межличностных отношений в ИТ-проектах»
Компания «СМ-Консалт» представляет новый тренинг, организуемый совместно с компанией «КарьерKаб» - «Коммуникации и психология межличностных отношений в ИТ-проектах.
Тренинг позволит понять, насколько коммуникации в проектах важнее инструментов, что люди и их взаимоотношения зачастую оказываются решающим фактором, определяющим успех проекта. Если более пятидесяти процентов рабочего времени вы тратите на взаимодействие с заказчиком, если вам небезразлична судьба вашей команды и вы хотите, чтобы ваша команда работала как часы, реализуя проекты точно, вовремя и без перерасхода ресурсов - наш тренинг поможет в этом.
25.08.2011 13:46:04
Компания СМ-Консалт сообщает об открытии нового направления деятельности: консалтинг и внедрение систем аналитической обработки информации (Business Intelligence)
Наша компания специализируется на консалтинге и внедрении инструментов и методологий IBM Rational, Microsoft и др. для повышения эффективности процессов разработки и сопровождения программного обеспечения.
Методы и технологии Business Intelligence являются прекрасным дополнением к ряду специализированных инструментальных средств, используемых для поддержки ЖЦ разработки ПО и управления ИТ-проектами. Инструменты BI играют роль недостающего промежуточного звена между основным бизнесом организации и ИТ-процессами, и, таким образом, способствуют повышению эффективности ключевых бизнес-процессов и достижению стратегических целей компании.
03.08.2011 14:05:11
На сайте размещены мультимедиа материалы докладов семинара «Повышение эффективности IT подразделений и качества разрабатываемого ПО с использованием современных методологий и технологий»
Компании СМ-Консалт , Legal SoftWaveTM и DNA провели бесплатный семинар-вебинар, посвященный обзору технологий и методологий, которые позволяют повысить эффективность ИТ подразделений. На семинаре были рассмотрены технологии IBM Rational, Microsoft TFS, а также системы аналитической обработки информации (Business Intelligence).
На нашем сайте размещены все мультимедийные материалы с семинара: презентации и видео-ролики с демонстрацией отдельных функций ПО IBM и Microsoft.
Перейти к просмотру: 14 июля 2011г. Семинар «Повышение эффективности IT подразделений и качества разрабатываемого ПО с использованием современных методологий и технологий»
01.08.2011 17:44:25
Наша компания получила отзыв о сотрудничестве с ОАО «Нордеа Банк»
24.06.2011 01:27:57
Бесплатный семинар-вебинар «Повышение эффективности IT подразделений и качества разрабатываемого ПО с использованием современных методологий и технологий»
Компании СМ-Консалт , Legal SoftWaveTM и DNA приглашают Вас посетить бесплатный семинар-вебинар, посвященный обзору технологий и методологий, которые позволяют повысить эффективность ИТ подразделений. На семинаре рассматриваются технологии IBM Rational, Microsoft TFS, а также системы аналитической обработки информации (Business Intelligence) (IBM SPSS, Deductor, QlikView и другие).
Планируемая продолжительность семинара - 8 академических часов.
Место проведения: Санкт-Петербург (очно) и Интернет (для всех желающих: приходите сами и приглашайте друзей!).
Дата и время: 14 июля 2011 в 9 00.
ВНИМАНИЕ: если вы не сможете очно приехать на семинар - это не страшно, так как семинар будет транслироваться через интернет в формате вебинара и к нему, после регистрации, смогут присоединиться все желающие. Трансляция будет осуществляться посредством технологии Adobe Connect Pro , это позволит Вам присоединяться к конференции без установки дополнительного ПО - только интернет браузер.
Смотреть программу -->
07.06.2011 13:02:44
Компания "СМ-Консалт" провела серию успешных семинаров для ГНИВЦ ФНС России
Проведенные семинары были посвящены средствам разработки и тестирования программного обеспечения компании Майкрософт для сотрудников ГНИВЦ ФНС России. Слушатели семинаров отметили высокую квалификацию тренеров компании "СМ-Консалт" по организации учебного процесса и повышению квалификации специалистов, прошедших обучение.
Индивидуальный подход при решении любых вопросов, возникающих в процессе обучения, оперативность принятия решений, гарантированное выполнение взятых на себя обязательств и профессионализм позволили провести обучение на самом высоком уровне.
07.12.2010 12:28:15
Мы идем в Твиттер!
Наша компания открыла аккаунт в системе микроблоггинга Twiter.Теперь все официальные и неофициальные новости будут появляться в нашей ленте в Twitter.
Там же возможно будет задать прямые вопросы специалистам СМ-Консалт, по всем вопросам, связанным как с деятельностью компании, так и с техническими аспектов продуктов IBM и собственных решений СМ-Консалт.
Следуйте за нами!
11.11.2010 14:14:14
Осенний марафон Microsoft ALM Road Show
Компания СМ-Консалт совместно с образовательным центром Careerlab провели серию семинаров в рамках мероприятий ALM Roadshow 2.0 в крупнейших городах, расположенных на Волге, – крупных научных центрах, в которых ИТ технологии находятся на высоком уровне. Семинары прошли в Самаре, Нижнем Новгороде и Казани. Cеминары были посвящены использованию новых инструментов MS Visual Studio Team System в проектах разработки ПО.
В семинарах принимали участие представители различных ролей процесса разработки ПО: от разработчиков до руководителей предприятий различного уровня. Темы, обсуждаемые в ходе семинара, вызвали большой интерес аудитории и немалое количество вопросов, на которые были предоставлены исчерпывающие ответы. В процессе семинара также было показано большое количество примеров, которые дают представление о возможностях инструментов MS Team System. Средняя оценка за семинар составила 4,6 балла по пятибальной шкале
09.09.2010 16:11:03
Компания СМ-Консалт предлагает бесплатную настройку своих флагманских решений GanttChart и ProjectTracker.
Если вы хотите сэкономить время или у вас не получается сразу и эффективно настроить наши решения на вашу схему ClearQuest, то вы можете прислать свою схему ClearQuest нам и специалисты СМ-Консалт бесплатно в течение 3х рабочих дней:
08.09.2010 18:37:52
Скидки до 30% на программное обеспечение IBM Rational
Компания СМ-Консалт предлагает для всех желающих на льготных условиях приобрести программное обеспечение IBM Rational. Снижение цен связано с тем, что мы стараемся быть как можно ближе к нашим клиентам, многие из которых постепенно начали преодолевать последствия финансового кризиса.Наше предложение поможет с минимальными издержками приобрести ПО IBM Rational, что является хорошим капиталовложением.
Скидки до 1 декабря 2010 года:
07.09.2010 13:53:40
Успешное внедрение уникального решения компании «СМ-Консалт» - GanttChart for ClearQuest в страховой компании «HUK-COBURG», Германия.
Компания «СМ-Консалт» и компания «HUK-COBURG» объявляют об успешном завершении проекта по поставке и внедрению решения «СМ-Консалт» - GanttChart for ClearQuest. Руководство «HUK-COBURG» обратилось в «СМ-Консалт» с просьбой поставки, адаптации и последующего сопровождения GanttChart for ClearQuest. С учетом требований Заказчика специалистами компании «СМ-Консалт» была выпущена и внедрена адаптированная версия GanttChart for ClearQuest, учитывающая особенности схемы процессов ClearQuest, применяемой в «HUK-COBURG», и дополнительные пожелания к функционированию GanttChart.
02.09.2010 14:41:12
Успешное внедрение Уникального решения СМ-Консалт - GanttChart for ClearQuest в Федеральном Национальном банке Бразилии
Компания СМ-Консалт и Федеральный Национальный банк Бразилии (ФНББ) объявляют об успешном завершении проекта по поставке и внедрению решения СМ-Консалт - GanttChart for ClearQuest. Руководство ФНББ, понимая ограничения использования IBM Rational ClearQuest в части проектного управления, обратилось в СМ-Консалт с просьбой поставки и адаптации GanttChart for ClearQuest под свои потребности.
С учетом требований Заказчика специалистами компании СМ-Консалт была выпущена и внедрена обновленная версия GanttChart for ClearQuest, учитывающая все особенности схемы процессов ClearQuest, применяемой в ФНББ.
По истечении срока опытной эксплуатации ФНББ приняло решение о принятии GanttChart for ClearQuest в промышленную эксплуатацию.
02.09.2010 14:17:23
Компания «СМ-Консалт» объявляет об успешном завершении обучения и консультирования IBM Rational сотрудников ЗАО «Промышленная Группа Метран» г. Челябинск.
В августе 2010 года специалистами компании «СМ-Консалт» были выполнены работы по обучению и консультированию сотрудников компании «Метран» методологии и инструментальным средствам процесса управления конфигурациями – IBM Rational Software ClearCase и ClearQuest. Был проведен тренинг-консультация «Практика и технология внедрения процесса конфигурационного управления и управления изменениями на основе IBM RUP, ClearCase и ClearQuest».
В тренинге принимали участие ведущие специалисты и руководители отделов компании «Метран».
29.06.2010 13:07:07
Успех семинара "Программное обеспечение IBM Rational для улучшения процессов разработки и сопровождения ПО" 15 июня 2010 г.
Компании "СМ-Консалт", IBM и DNA провели бесплатный семинар по теме "ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ IBM RATIONAL ДЛЯ УЛУЧШЕНИЯ ПРОЦЕССОВ РАЗРАБОТКИ И СОПРОВОЖДЕНИЯ ПО" 15 июня 2010 года. На семинаре специалисты СМ-Консалт, IBM и UML2.RU рассказали о технологиях IBM Rational и поделились практическим опытом использования и внедрения методологии Rational Unified Process. Также были представлены отдельные решения СМ-Консалт, расширяющие функциональные характеристики IBM Rational.
| Copyright © 2010 СМ Консалт | Вселенная СМК: http://cm-consult.ru | Блоги специалистов: http://anovichkov.msk.ru | http://ashamray.wordpress.com |www.cmcons.com | Карта сайта |
|