Контрольные вопросы:
1. Приведите пример программного кода для чтения или записи данных из файла (по выбору учащегося) с использованием потоков.
2. Определите шаблонные функции и классы. Опишите предполагаемый общий синтаксис и приведите примеры программного кода.
3. Опишите классификацию языков программирования. Поколения языков программирования.
4. Опишите дистрибутив программ. Типы переводчиков. Фазы компиляции.
Лекция 30. Технологии. Технология BDE.
Цель лекции: формирование у студентов умений демонстрировать свои представления о Технологии. Технология BDE
В результате освоения данной лекции студенты приобретают следующие способности:
Технологии.
Технология BDE
Если класс использует другие объекты класса в своих полях, то такое объединение классов называется композицией. Композиция класса это один из видов повторного использования ранее написанного кода программы. Например, класс "аптека» можно рассматривать как композицию класса «лекарства» – массив различных объектов класса "лекарства". В качестве примера композиций можно привести объединение «автомобильных» объектов в классе «гараж». Объединение объектов одного и того же типа в одной и той же структуре данных называется коллекцией. Коллекция обеспечивает множество функций обработки объектов, то есть предоставляет операции по сохранению и удалению объектов и добавлению, обновлению объектов. Обычно коллекция определяется отдельным классом. Класс, описывающий всю коллекцию, называется классом коллекции.
В рассмотренных примерах по композиции классов второй класс находится в деятельности коллекции объектов первого класса. Например,
класс "гараж» - это коллекция объектов класса "автомобиль".
Класс "аптека» - коллекция объектов класса "лекарства".
Все классы коллекций условно можно разделить на линейные и нелинейные. Линейные коллекции представлены следующими классами коллекций:
- индексированный доступ, например, словари, книги;
- прямой доступ, например, к массивам;
- доступ к порядку, например, стекам, очередям, спискам.
Нелинейные коллекции представлены следующими классами коллекций:
- иерархическая, например, структура, похожая на различные ветви.
Иерархическая система классификации или организация поискового массива документов;
- групповые, например, различные наборы, узловые структуры, графы.
Среда программирования C#содержит множество различных классов, которые другие классы используют для коллекционирования объектов одного типа, таких как списки, стеки, очереди, словари, ветви и многие другие коллекции. Некоторые коллекции Framework. Реализация классов коллекций с использованием интерфейсов.
Платформа .NET, точнее библиотека Framework, предоставляет программисту дополнительные интерфейсы. Интерфейс ICollection является стандартным для коллекций объектов. Он обеспечивает одновременное сканирование своих элементов с использованием интерфейсов IEnumerable, IEnumerator; определение размера коллекции; копирование коллекции в массив для сложных операций редактирования.
Интерфейс IList является стандартным для создания коллекций типа массива. Он также обеспечивает одновременное сканирование своих элементов с использованием интерфейсов IEnumerable, IEnumerator. Кроме того, интерфейс обеспечивает прямой доступ к элементу с помощью перезагружаемого индексатора. Интерфейс IList обеспечивает добавление, удаление, редактирование элемента коллекции по индексу. Существует множество интерфейсов для работы с нестандартными коллекциями, например, интерфейс IDictioaryEnumerator помогает в работе с коллекциями словарного типа. Использование интерфейсов позволяет создавать несколько классов коллекций в библиотеке Framework, таких как Array, ArrayList, LinkedList, Queue, Stack и другие. Для визуального отображения коллекции язык C# имеет несколько элементов управления (или классов коллекций), таких как DataGridView, TreeView и т. д.
Вы будете подробно рассматривать коллекции в дисциплинах «прикладное программирование» и «базы данных», а в этой дисциплине рассмотрим работу с классом коллекций на примере коллекции ArrayList Коллекция ArrayList ArrayList Класс System.Collections.ArrayList используется для хранения соответствующих и любых типов объектов в пространстве имен. Основные свойства и методы ArrayList представлены в таблице 26.1.
Таблица 26.1-основные свойства и методы Arraylistкла
Свойства и методы
|
Описание
|
public static ArrayList (IList: List);
|
Создает объект ArrayList на основе коллекции List
|
public virtual int Add(Oblect Value);
|
Добавляет новый объект в конец списка и возвращает индекс.
|
public virtual viod AddRange (ICollection coll)l
|
Добавляет несколько объектов в конец списка.
|
public virtual int BinsrySearch(Qbject Value);
|
Value выполняет поиск объекта и возвращает его индекс, а если объект не найден, он выводит отрицательное число.
|
|
public virtuai int Capacity {get;}
|
Это свойство используется только для «чтения», сохраняя текущую емкость коллекции.
|
public virtual void Clean();
|
даляет все элементы коллекции.
|
public virtual bool Containse (Object Value);
|
Если у коллекции есть элемент с именем Value, значение true возвращается.
|
public virtal int Count {get;};
|
Это свойство используется только для «чтения», сохраняя текущую длину коллекции.
|
public static ArrayList FixedSize(ArrayList AL);
|
Метод возвращает объект. Его элементы могут быть изменены, но не могут быть добавлены или удалены.
|
public virtual IEnumerator GetEnumerator();
|
Возвращает итератор для объекта.
|
public virtual ArrayList GetRange(int Indx, int Count);
|
Возвращает диапазон элементов.
|
public virtual int IndexOf(Object Value);
|
Возвращает элемент, который имеет значение Value.
|
public virtual void Insert (int Indx, Object Value);
|
Indx коллекции помещает элемент Value вместо нужного.
|
public virtual void InsertRange)int Indx, IColliction col);
|
Вставляет диапазон элементов.
|
public virtual bool IsFixedSize{get;}
|
Если размер объекта является фиксированным, то возвращает значение true.
|
public virtual bool IsReadOnly{get;}
|
Если объект имеет элементы, предназначенные только для «чтения», то значение true возвращает.
|
public virtual Object this[int Indx]{set; get;}
|
Это свойство позволяет использовать элементы по индексу.
|
public virtual int LastIndexOf(Object Value);
|
В коллекции Value возвращает индекс последнего значения, равный.
|
public static ArrayList ReadOnly(ArrayList AL);
|
Устанавливает режим только для «чтения» элементов коллекции
|
public virtual void Remove (Object Value);
|
Удаляет из коллекции первый элемент, значение которого равно Value.
|
public virtual void RemoveAt (int Indx);
|
Из коллекции удаляется элемент, индекс которого равен Indx.
|
26.1-продолжение таблицы
public virtual void RemoveRange(int Indx, int count);
|
Count удаляет элемент из коллекции, начиная с элемента, индекс которого равен INDX.
|
public static ArrayList Repeat(Object Value, int count);
|
Элемент Value возвращает коллекцию, которая повторяется count раз.
|
public virtual void Reverse();
|
Изменяет последовательность элементов в обратном направлении.
|
public virtual void SetRange (int Indx, ICollection col);
|
Начиная с индекса Indx, он вводит коллекцию col.
|
public virtual void Sort();
|
Сортирует коллекцию
|
public virtual void TrimToSize();
|
Устанавливает вместимость коллекции. Равна числу элементов емкости.
|
Достарыңызбен бөлісу: |