- •17. Критерии и метрики определения качества и сложности разработки пс. Фунционально и размерно-ориентированные метрики. Метрики оопс (метрики Чидамбера-Кемерерва).
- •Метрика 1: Взвешенные методы на класс wmc (Weighted Methods Per Class)
- •Метрика 2: Высота дерева наследования dit (Depth of Inheritance Tree)
- •Метрика 3: Количество детей noc (Number of children)
- •Метрика 4: Сцепление между классами объектов сво (Coupling between object classes)
- •Метрика 5: Отклик для класса rfc (Response For a Class)
- •Метрика 6: Недостаток связности в методах lсom (Lack of Cohesion in Methods)
- •18. Web-программирование. Обработка данных. Get и post запросы. Анатомия Web-формы. Серверные элементы управления
- •19. Страничные директивы и страничные события. Механизмы. Фоновый код.
- •20. Данные и источники данных. Элементы управления, обработка и связывание с источниками данных. Механизмы
- •21. Проверяющие элементы управления. Назначение и использование
- •22. Многостраничные приложения. Связи между формами
- •24. Сеансы и сессии. Назначение и принципы работы. Состояния
- •25. Web-сервисы. Общие принципы организации. Soap
- •26. Web-сервисы. Язык wsdl. Пользовательские типы данных
- •27. Безопасность в asp.Net. Принципы идентификации и аутентификации. Авторизация
- •28. Шаблон проектирования mvc. Взгляд ms .Net. Особенности работы
- •Жизненный цикл запроса.
- •29. Методы разработки по через тестирование (tdd). Взгляд с точки зрения .Net. Особенности
- •30. Многопоточность и параллелизм в .Net. Особенности.
- •31. Коллективная разработка и коллективное владение кодом. Методы организации через svn.
- •32. Идеология Windows Workflow Foundation (wwf). Перспективы и возможности
22. Многостраничные приложения. Связи между формами
23. Web-приложения. Архитектура и управление работой
Web-приложение – совокупность взаимосвязанных файлов в виртуальном каталоге и его подкаталогах.
machine.config
<allow users = "*"/>
Если не указано обратное, все пользователи имеют доступ к каталогу и ASP.NET страницам
web.config приложения А
Не содержит элемента allow, так что применяется глобальное определение, описанное в machine.config
web.config приложения B
<deny users = "?"/>
Переопределяет глобальное значение элемента allow. Доступ определяется тем, аутентифицирован ли пользователь
web.config подкаталога 1
приложения B
Не содержит элемента allow, так что применяется значение родительского каталога
web.config подкаталога 2
приложения B
<allow roles = "admins"/>
<deny users = "*"/>
Переопределяет родительское значение родительского каталога так, что только пользователи роли admins имеют доступ к каталогу
Файл Global.asax
Назначение:
обработка событий на уровне Web-приложения (один XML файл, расположенный в корне
виртуального каталога) и объявления, относящиеся ко всему приложению в целом.
Общая структура типичного файла Global.asax:раздел глобальных директив;
раздел обработчики глобальных событий; раздел тэгов глобальных объектов.
Замечание:виртуальный каталог должен бытьконфигурирован как приложение
24. Сеансы и сессии. Назначение и принципы работы. Состояния
Недостатки
• состояние сеанса ASP хранится в памяти, т.е. оно несовместимо с Web-сервером, работающимкак единое целое. Потому состояниепользователя удаляется при перезапуске IIS или перезагрузки системы;
• cтрогая зависимость механизмов сеансов от "cookies";
Работа с состоянием сеанса
Класс: HttpSessionState
Пространство имен: System.Web.SessionState Сборка: System.Web (в system.web.dll) Синтаксис: public sealed class HttpSessionState : ICollection, IEnumerable
Методы и свойства для работы: см. MSDN
Доступ: свойство Session класса System.Web.HttpApplication
Модели хранения состояния сеанса
Внутреннее: состояние сеанса хранится в адресном пространстве процесса ASP.NET(aspnet_wp.exe)
Сервер состояния: состояние сеанса хранится во внешнем процессе (сервере состояния) на данном Web-сервере или на другом компьютере
SQL-сервер: состояние сеанса хранится в БД сервер MS SQL Server на данном Web-сервере или на другом компьютере
25. Web-сервисы. Общие принципы организации. Soap
Технология Web-сервисов — это технология создания распределенных систем, со-ставленных из взаимодействующих между собой программных продуктов, созданных и работающих на основе различных платформ.
Web-сервисы призваны согласовывать работу больших, состоящих из множества частей приложений, предоставляя для приложений бизнес-функции обмена данными.
Помимо функции обмена данными между различными приложениями и платформами, Web-сервисы могут выступать как повторно-используемые компоненты приложения, предоставляющие разнообразные сервисы — от прогноза погоды до перевода с одного языка на другой.
Web-сервисы представляют собой программные компоненты, имеющие идентификатор URI, и взаимодействие с которыми осуществляется по Интернету с помощью открытых протоколов.
Коммуникация с Web-сервисами может выполняться с помощью различных транспортных протоколов, таких как HTTP, HTTPS, FTP, SMTP, BEEP, при этом Web-сервисы можно подразделить на три вида: SOAP Web-сервисы, ориентированные на модель RPC — вызов удаленных процедур, XML Web-сервисы, ориентированные на сообщения, и RESTful Web-сервисы.
Первая группа Web-сервисов — это Web-сервисы, взаимодействие с которыми производится с использованием XML-сообщений по SOAP-протоколу (Simple Object Access Protocol), и имеющие интерфейсы, описанные в формате WSDL (Web Services Description Language).
Вторая группа Web-сервисов — это XML Web-сервисы, ориентированные на сообщения. Эти XML Web-сервисы обеспечивают низкоуровневую обработку XML-сообщений, при этом Web-сервис обрабатывает полученные XML данные целиком, как они есть, и полностью формирует ответное XML-сообщение.
Третья группа Web-сервисов — это RESTful Web-сервисы, представляющие удаленные ресурсы, доступные с помощью HTTP-запросов.
В настоящее время используемые технологии удаленного вызова методов (DCOM, CORBA/IIOP и RMI) довольно сложны в настройке и организации взаимодействия. Это влечет за собой проблемы в эксплуатации и функционировании распределенных систем (проблемы безопасности, транспорт через брандмауэры и т.д.). Существующие проблемы успешно решены созданием SOAP (Simple Object Access Protocol), простого протокола, основанного на XML, для обмена сообщениями в распределенных средах (WWW). Он предназначен для создания веб-сервисов и удаленного вызова методов. SOAP можно использовать с разными транспортными протоколами, включая HTTP, SMTP и т.д.