Опубликован: 04.07.2012 | Доступ: свободный | Студентов: 2114 / 176 | Оценка: 4.08 / 3.69 | Длительность: 21:39:00
Самостоятельная работа 6:

Разработка серверных web-приложений на С#

< Лекция 11 || Самостоятельная работа 6: 12345 || Лекция 12 >

5. Строки

В языке C# определен класс сhar[], и его можно использовать для представления строк постоянной длины. Однако массив сhar[] - это обычный массив, поэтому его нельзя инициализировать строкой символов. В C# не определено преобразование из класса сhar[] в класс String. У String есть динамический метод ToCharArray, задающий подобное преобразование в сhar[].

Объекты класса String объявляются с явной или отложенной инициализацией, с явным или неявным вызовом конструктора класса. Чаще всего, при объявлении строковой переменной конструктор явно не вызывается, а инициализация задается строковой константой. У класса String достаточно много конструкторов, которые позволяют сконструировать строку из:

  • символа, повторяющегося указанное число раз;
  • массива символов char[];
  • части массива символов.

Методы класса String позволяют выполнять вставку, удаление, замену, поиск вхождения подстроки в строку. Класс String наследует методы класса Object, а также методы четырех интерфейсов: IComparable, ICloneable, IConvertible, IEnumerable.

Некоторые из членов класса приведены в таблице:

Метод Описание
Length Это свойство возвращает длину указанной строки
Insert Вставляет подстроку в заданную позицию
Remove Удаляет подстроку в заданной позиции
Replace Заменяет подстроку в заданной позиции на новую подстроку
Substring Выделяет подстроку в заданной позиции
IndexOf, IndexOfAny, LastIndexOf, LastIndexOfAny Определяются индексы первого и последнего вхождения заданной подстроки или любого символа из заданного набора
StartsWith, EndsWith Возвращается true или false, в зависимости от того, начинается или заканчивается строка заданной подстрокой
PadLeft, PadRight Выполняет заполнение нужным числом пробелов в начале и в конце строки
Trim, TrimStart, TrimEnd Удаляются пробелы в начале и в конце строки, либо только с одного конца
ToCharArray Преобразование строки в массив символов

Класс String не разрешает изменять существующие объекты. Для этой цели имеется другой класс - класс StringBuilder, который позволяет исправить данный недостаток. Этот класс принадлежит к изменяемым классам и его можно найти в пространстве имен System.Text.

Объекты этого класса объявляются с явным вызовом конструктора класса. Конструктор класса перегружен, и наряду с конструктором без параметров, создающим пустую строку, имеется набор конструкторов, которым можно передать две группы параметров:

  • Первая группа позволяет задать строку или подстроку, значением которой будет инициализироваться создаваемый объект класса StringBuilder.
  • Вторая группа параметров позволяет задать размер объекта, т.е объем памяти, отводимой для экземпляру класса StringBuilder.

    Примеры конструкторов:

    • public StringBuilder(string str, int size). Параметр str задает строку для инициализации, size - размер объекта;
    • public StringBuilder(int cursize, int maxsize). Параметры cursize и maxsize задают начальный и максимальный размер объекта;
    • public StringBuilder(string str, int start, int len, int size). Параметры str, start, len задают строку инициализации, size - размер объекта.

    Над строками этого класса определены (также как идля строк класса String) операции:

    • присваивание (=);
    • две операции проверки эквивалентности (==) и (!=);
    • взятие индекса ([]).

    Операция конкатенации (+) не определена над строками класса StringBuilder, ее роль играет метод Append, добавляющий новую строку в конец существующей.

6. Интерфейсы

Интерфейс представляет собой полностью абстрактный класс, все методы которого абстрактны. Однако методы интерфейса объявляются без указания модификатора доступа, и класс, наследующий интерфейс, обязан полностью реализовать все методы интерфейса. В этом - отличие от класса, наследующего абстрактный класс, где потомок может реализовать лишь некоторые методы родительского абстрактного класса, оставаясь абстрактным классом.

Интерфейс позволяет описывать некоторые желательные свойства, которыми могут обладать объекты разных классов.

Среди интерфейсов, встроенных в библиотеку базовых классов .NET, можно особо выделить такие как:

  • IEnumerable (для работы с наборами объектов, в т.ч. с использованием оператора foreach).
  • IClonable (копирование объектов).
  • IComparable (для сравнения и сортировки объектов).

Пространство имен System.Collections, предназначенное для работы с наборами объектов, поддерживает интерфейсы:

  • ICollection (определяет общие характеристики класса набора элементов).
  • IComparer, IDictionary (позволяет представлять содержимое объекта в виде пар имя-значение).
  • IDictionaryEnumerator (нумерация содержимого объекта, поддерживающего IDictionary).
  • IEnumerable, IEnumerator.
  • IHashCodeProvider (возвращает хэш-код с помощью выбранного алгоритма хэширования).
  • IList (обеспечивает методы добавления, удаления и индексирования элементов в списке объектов).

7. Visual Web Developer Express

Visual Web Developer Express - это полнофункциональная среда разработки, предназначенная для создания веб-приложений ASP.NET, называемых "веб-узлами".

Visual Web Developer Express (VWDE) предоставляет в распоряжение веб-разработчика следующие функциональные возможности:

  • Конструирование веб-страниц. Мощный редактор веб-страниц, который имеет режим представления WYSIWYG и режим редактирования HTML с поддержкой технологии IntelliSense и возможностью проверки кода.
  • Функции конструирования страниц. Целостный макет узла с главными страницами и целостное отображение страниц с темами и обложками.
  • Редактирование кода. Редактор кода, который позволяет писать код для динамических веб-страниц на Visual Basic или C#. Редактор кода имеет функции синтаксической разметки и IntelliSense.
  • Отладка. Отладчик, помогающий находить ошибки в создаваемых программах.
  • Элементы управления. Расширенный набор серверных веб-элементов управления ASP.NET, включающих большую часть функциональности, необходимой для создания веб-узлов.
  • Доступ к данным. Поддержка отображения и редактирования данных на веб-страницах. Данные могут находиться в различных хранилищах, включая базы данных и XML-файлы. Во многих случаях можно добавлять данные, отображать их и редактировать прямо на веб-страницах без необходимости написания кода.
  • Безопасность, персонализация и прочее. Встроенные службы приложений, которые позволяют добавлять к веб-узлу функцию членства для обеспечения безопасности при входе, свойства профилей, которые позволяют хранить индивидуальную информацию пользователей, и другие функции, в большинстве из которых не требуется писать код.
  • Разработка для размещенных веб-узлов. Средства для публикации узлов на размещенном веб-узле, в том числе и на локальных веб-серверах для тестирования.

Visual Web Developer Express (VWDE) представляет собой удобную среду для построения веб-узлов и их публикации. Используя инструменты разработки VWDE, можно разрабатывать веб-узлы ASP.NET на собственном компьютере. В состав VWDE входит локальный веб-сервер, который обеспечивает все функции, необходимые для тестирования и отладки веб-узлов ASP.NET, и не требует установки сервера IIS.

В VWDE можно произвести предварительную компиляцию и развернуть веб-узел при помощи команды "Построить веб-узел" (Build Web Site). Команда "Построить веб-узел" запускает компилятор для всего веб-узла, а не только для файлов кода, и создает макет веб-узла, который можно развертывать уже на рабочем сервере.

Visual Web Developer Express предоставляет в распоряжение веб-разработчика целый набор шаблонов ASP.NET 2.0. По-сути - это готовые веб-узлы, которые можно использовать в качестве собственных веб-узлов с минимальными изменениями. Чтобы использовать шаблон, необходимо создать новый новый веб-узел и выбрать требуемый шаблон.

В VWDE можно создавать проекты, веб-узлы и отдельные файлы.

< Лекция 11 || Самостоятельная работа 6: 12345 || Лекция 12 >
Сергей Крупко
Сергей Крупко

Добрый день.

Я сейчас прохожу курс  повышения квалификации  - "Профессиональное веб-программирование". Мне нужно получить диплом по этому курсу. Я так полагаю нужно его оплатить чтобы получить диплом о повышении квалификации. Как мне оплатить этот курс?

 

Галина Башкирова
Галина Башкирова

Здравствуйте, недавно закончила курс по проф веб программиованию, мне прислали методические указания с примерами тем, однако темы там для специальности 

Системный администратор информационно-коммуникационных» систем.
Мне нужно самой найти тему? или делать по высланным темам