
- •Федеральное агентство по образованию
- •Таганрогский государственный радиотехнический университет
- •Программирование в Интернет
- •Лекция 1. Введение в Web-программирование
- •Принцип работы Web-приложений
- •Обзор известных средств программирования для Internet
- •Первое решение: cgi
- •Преимущества cgi
- •Недостатки cgi
- •Второе решение: isapi-интерфейс
- •Преимущества isapi
- •Недостатки isapi
- •Третье решение: asp
- •Преимущества asp
- •Недостатки asp
- •Лекция 2. Введение в php
- •Что такое рнр?
- •Архитектура рнр
- •Первая программа на php
- •Взаимодействие html и php
- •Лекция 3. Типы данных php
- •Комментарии
- •Логические переменные
- •Синтаксис логических переменных
- •Приведение значений к логическому типу
- •Целые числа
- •Синтаксис целочисленных переменных
- •Целочисленное переполнение
- •Приведение к целочисленному типу
- •Вещественные числа
- •Константы
- •Преобразование строк
- •Лекция 4. Переменные
- •Изменение типа переменной
- •Преобразование типа переменной
- •Операторы и выражения
- •Оператор присваивания
- •Арифметические операторы
- •Оператор конкатенации
- •Дополнительные операторы присваивания
- •Операторы сравнения
- •Логические операторы
- •Увеличение или уменьшение целой переменной
- •Порядок вычисления операторов
- •Динамические переменные
- •Ссылки на переменные
- •Лекция 5. Инструкция if
- •Блок else инструкции if
- •Блок elseif инструкции if
- •Инструкция switch
- •Оператор ?
- •Цикл while
- •Цикл do... While
- •Цикл for
- •Прерывание циклов инструкцией break
- •Пропуск итераций с помощью инструкции continue
- •Лекция 6. Функции
- •Аргументы функции
- •Аргументы по умолчанию
- •Область видимости переменных
- •Лекция 7. Краткий обзор .Net Framework
- •Промежуточный язык Microsoft Intermediate Language
- •Компиляция “Just In Time”
- •Управляемый код и данные
- •Лекция 8. Создание приложений Web Forms Файлы проекта Web Forms
- •Файлы Web-приложения
- •Обработка событий События жизненного цикла Web-приложения
- •Сохранение данных Web-формы
- •Visual Basic .Net
- •Visual c#
- •События Application и Session
- •Visual Basic .Net
- •Visual c#
- •События Web-формы
- •Visual Basic .Net
- •Visual c#
- •События серверных элементов управления
- •Visual Baste .Net
- •Visual c#
- •Лекция 9. Работа с Web-объектами Введение в пространство имен
- •Пространства имен в Web-приложениях Обзор пространства имен Web
- •Visual Basic .Net
- •Visual c#
- •Использование объекта Application
- •Visual Baste .Net
- •Visual c#
- •Использование объекта Page
- •Visual Basic
- •Visual с#
- •Использование объекта Request
- •Visual Baste .Net
- •Visual c#
- •Использование объекта Response
- •Visual Baste .Net
- •Visual c#
- •Лекция 10. Сохранение сведений о состоянии Способы сохранения сведений о состоянии
- •Использование строк запросов
- •Visual Basic .Net
- •Visual c#
- •Использование переменных состояния Application и Session
- •Упорядочение доступа к переменным состояния
- •Visual Basic .Net
- •Visual c#
- •Visual Basic .Net
- •Visual c#
- •Отключение переменных состояния Session
- •Лекция 11. Web-элементы управления. Использование элементов управления.
- •Простые элементы управления
- •Элементы управления Label
- •Элементы управления HyperLink
- •Элементы управления Image
- •Элементы управления CheckBox
- •Элементы управления RadioButton
- •Элементы управления Table
- •Элементы управления DropDownList
- •Элементы управления ListBox
- •Элементы управления CheckBoxList
- •Элементы управления RadioButtonList
- •Лекция 12. Проверяющие элементы управления
- •Использование проверяющих элементов управления
- •RequiredFieldValidator
- •RangeValidator
- •CompareValidator
- •RegularExpression Validator
- •CustomValidator
- •ValidationSummary
- •Отмена проверки вводимых данных
- •Лекция 13. Введение в Web-сервисы Обзор Web-сервисов xml
- •Инфраструктура Web-сервисов xml
- •Взаимодействие клиентов и Web-сервисов xml
- •Лекция 14. Механизм обнаружения Web-сервисов xml
- •Использование Web-сервисов xml
- •Добавление Web-ссылки
- •Генерация класса прокси
- •Создание объекта класса прокси
- •Доступ к Web-сервису xml через объект прокси
- •Сериализация
- •Лекция 15. Управление Web-методами при помощи атрибутов Атрибуты Web-метода
- •Буферизация откликов Web-метода
- •Visual c#
- •Пользовательские маркеры
- •Подписи
- •Шифрование
- •Лекция 17. Модель безопасности asp.Net
- •Лекция 18. Введение в инфраструктуру Microsoft .Net Remoting
- •Объекты .Net Remoting
- •Передача объектов по механизму .Net Remoting
- •Пример кода для простого серверного объекта .Net Remoting
- •Срок жизни, определяемый арендой
- •Channel Services (System.Runtime.Remoting.Channels)
- •Пример кода, загружающего Channel Services
- •Форматирующие объекты сериализации (System.Runtime.Serialization.Formatters)
Обзор известных средств программирования для Internet
Сегодня является очевидным тот факт, что кроме простого представления страниц протокол HTTP можно использовать для отображения динамической информации. Под динамическим наполнением подразумевается информация, содержание которой отличается от просмотра к просмотру. Динамическое содержимое позволяет обеспечить двусторонний обмен информацией. Используя формы на Web-странице, пользователь получает возможность запрашивать информацию различного вида. Естественно, что обмен пользователя и сервера состоит не только из форм и индивидуализированной информации; есть еще файлы-cookies – небольшие “отрезки” информации, которые размещаются на пользовательской машине и позволяют идентифицировать пользователя в процессе сеанса связи или при следующем посещении Web-узла.
Задача управления динамическим наполнением намного сложнее, чем простое размещение статических HTML-документов в нужных папках и предоставление пользователям возможности просматривать их. В настоящий момент известно несколько способов представления динамической информации. У каждого из них есть свои плюсы и минусы.
Первое решение: cgi
CGI-интерфейс (Common Gateway Interface) – одно из первых решений, созданных для доставки динамической Web-информации. CGI-приложения – это программы, исполняемые на Web-сервере и обычно используемые для предоставления динамической Web-информации. CGI-приложение считывает данные со стандартного устройства ввода и записывает информацию на стандартное устройство вывода. В большинстве операционных систем стандартные устройства можно переназначить, именно это происходит с программой, выполняемой как CGI-приложение.
Преимущества cgi
CGI-программа способна выполнять практически все, что необходимо для решения прикладных задач – получать доступ к базам данных, считывать файлы, работать с системным реестром и все остальное, что обычно делает программа в Win32. CGI-программы просто тестировать, а цикл “программирование – тестирование – отладка” достаточно прямолинеен. Достаточно настроить компилятор на сохранение исполняемого файла в нужном каталоге и можно тестировать приложение, открывая соответствующую страницу в браузере и при необходимости возвращаясь к редактору, для внесения изменений.
Недостатки cgi
При исполнении CGI-программа загружается, а по завершении работы полностью удаляется из памяти. Это влечет увеличение числа ресурсов на создание и удаление процессов. Создание и удаление процессов сильно снижает производительность, а так же перегружает ресурсы. При одновременном подключении 100 клиентов в памяти создается 100 экземпляров CGI-программы, что отрицательно сказывается на производительности Web-сервера.
Второе решение: isapi-интерфейс
Mirosoft разработала новый способ создания масштабируемых приложений, который был призван устранить присущие CGI проблемы с производительностью и масштабируемостью. Этой высокопроизводительной альтернативой был ISAPI (Internet Server Application Programming Interface) – API-интерфейс Internet-сервера). Вместо исполняемых файлов в ISAPI используются DLL-библиотеки, что позволяет повысить производительность и масштабируемость.
В ISAPI определено несколько точек входа в функции, экспортируемые из DLL. Эти точки входа позволяют Web-серверу загружать DLL, вызывать различные функции, передавая при необходимости нужные параметры, и получать данные для обратной отправки на браузер.