Управление каталогами и операции для работы с ними

Определение структуры класса. Спецификаторы доступа.

Спецификаторы доступа определяют доступность данных и метода в программе. Существуют: рublic - открытый режим доступа, члены класса доступны за пределами класса любым функциям программы; рrivate - закрытый режим доступа, члены класса доступны только для методов этого класса; рrotected - защищенный режим доступа, члены класса доступны для методов этого класса производных классов и дружественных классов.

Класс - категория объектов, обладающая одинаковыми свойствами и поведением, каждый класс имеет поля свойства и методы. Класс наследует поля свойства и методы своих предков.

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

 

Функция processpath. Модуль, в котором описана эта ф-я.

Processpath (const filename: string; var Drive: string, var dirpart: string,var file: string). Эта функция описана в модуле Filectrl. Она позволяет разбить полное имя файла заданное параметром Totalname на составляющие буква дискового устройства -параметр Drive, последовательность каталогов DirPath.

 

Фундаментальные принципы лежащие в основе класса.

Полиморфизм- с греч. означает много форм. Полиморфизм представляет собой свойство объектов имеющих одного родителя выполнять одно и то же действие разными способами. Пример: действие передвижение свойственное всем транспортным средствам может отличаться у объектов определенной категории. Например, поезд движется по рельсам, а самолет перемещается в пространстве. Конкретное действие определяется характерными признаками ситуации. Полиморфизм позволяет использовать одинаковые имена для методов входящих в разные классы. Принцип полиморфизм обеспечивает в случае обращения к одноименным методам выполнения того из них который соответствует классу объекта.

Инкапсуляция- объединение данных и логики их обработки в единое целое, так называемый объект, чтобы обезопасить их как от внешнего вмешательства, так и от неправильного использования. Преимущество инкапсуляции заключается в том что достаточно один раз описать структуру объекта, чтобы в дальнейшем использовать в любом месте неограниченное количество раз.

Наследование– процесс, когда один объект может приобретать свойства другого. Наследование позволяет в явной форме устанавливать между объектами связи типа потомок-родитель. При наличии такой связи объект – потомок наследует от объекта - родителя все его атрибуты, т.е. особенности поведения.

 

Управление каталогами и операции для работы с ними.

Каталог - определенная область на диске, в которой хранятся имена файлов, информация о размерах файлов, свойствах файлов. Файл находится в каталоге - это означает, что имя файла зарегистрировано в нем, в каталоге можно регистрировать много файлов. Задачи, связанные с управлением каталогами можно разделить на 3 категории: операции с каталогами, управление текущим каталогом, поиск и выбор каталога. В Делфи существует 2 операции работы с каталогами: создание и удаление

CreateDir (const dir:String), RemoveDir (const dir:string). Каждая из функций в случае успешного выполнения возвращает значение true, иначе False. Недопустимыми операциями являются создание уже существующего каталога, создание подкаталога в несуществующем каталоге удаление несуществующего каталога, удаление каталога, который содержит вложенные подкаталоги или файлы. При использовании CreateDir анализируется вся цепочка каталогов от корневого до родительского. Если один из каталогов отсутствует, то это считается недопустимой информацией. При частом обращении к одному и тому же каталогу целесообразно сделать его текущим. Функции GetCurrentDir(dir:string):Boolean, SetCurrentDir(dir:string):Boolean,

1 - возвращает строку с именем текущего каталога и полным путем к нему, 2 - для смены текущего каталога возвращает тrue, если каталог созданный строковым параметром Dir cуществует. Изменить текущий каталог навигацией по дереву каталогов в окне позволяет функция selecrdirectory(dir:string,options:Tselect diropts helpcctx:longint):Boolean.