
- •Типы данных
- •Переменные
- •Операции c#.
- •Линейная программа
- •Циклы с предусловием
- •Цикл с постусловием.
- •Исключения.
- •Двумерные массивы.
- •Символы и строки.
- •Деструктор.
- •Свойства
- •Конструктор класса – инициализирует поля. Индексатор.
- •Операции класса
- •Поля методы и свойства класса.
- •Виртуальные методы
- •Перегрузка методов.
- •Рекурсивные методы.
- •Interface (Интерфейсы)
- •Стандартные интерфейсы .Net
- •Клонирование объектов.
- •Абстрактный класс.
- •Бесплодные классы.
- •Класс Object.
- •Структуры
- •Структурное программирование.
- •Потоки файлов.
- •Потоки байтов
- •Потоки символов
- •Отладка программы.
- •Классификация ошибок
- •Методы отладки
- •Методика отладки по
- •Исправление ошибки.
- •Стадия разработки программ и программной документации.
- •Двоичные потоки
- •Тестирование программных продуктов.
- •Сериализация (сохранение объектов)
- •Структурный подход при проектировании программного обеспечения.
- •Объектно-ориентированное проектирование
- •Диаграммы вариантов использования
- •Составление программной документации
- •Руководство пользователя
- •Типы пользовательских интерфейсов и этапы их разработки
- •Этапы разработки пользовательского интерфейса
- •Модульное программирование
- •Сцепление модулей
- •Связность модулей
Сериализация (сохранение объектов)
В C# есть возможность сохранять на внешних носителях, не только данные примитивных типов, но и объекты. Сохранение объектов называется сериализацией. Восстановление сохраненных объектов десериалиизацией, при сериализации объект преобразуется в линейную последовательность байтов, это сложный процесс, так как, объект может включать множество унаследованных полей и ссылки на вложенные объекты, которые в свою очередь, тоже могут состоять, из объектов, сложной структуры.
Сереализация выполняется автоматически, для этого достаточно пометить класс, как сереализуемый, с помощью атрибута [Serealizable]. Атрибуты это дополнительные сведения о классе. Те поля которые сохранять не требуется, помечаются атрибутом [ Noserialized]. Объекты можно сохранять в одном из двух форматов, двоичном или XML файла. В первом случае нужно подключить к программе пространство имен, System.Runtime.Serialization.Formatters.Binary
Во втором подключается пространство System.Runtime.Serialization.Formatters.Soap
Для сохранения объектов в двоичном формате используется класс, BinaryFormatter в котором определены 2 метода.
Serialize – поток объект
Deserialize
Метод Serialize сохраняет заданный объект в заданном потоке. Метод Deserialize восстанавливает объекты из заданного потока.
Для сохранения объекта в двоичном формате, необходимо подключить к программе пространство имен. Пометить сохраняемый класс и связанные с ним классы атрибутом Sererializable. Создать потоки связать его с файлом на диске или с областью оперативной памяти. Создайте объект класса binaryformatter. Сохранить объекты в потоке. Закрыть файл. Создать абстрактный класс Aka содержащий абстрактный метод Print
Создать абстрактный класс book наследник абстрактного класса Aka. В классе book описать поля, названия, автор, цена, создать конструктор. Переопределить метод Print. Создать класс просмотр с полями x и y. Сохранить объекты в двоичном файле.
Структурный подход при проектировании программного обеспечения.
Процесс проектирования сложного программного обеспечения, начинается с уточнения его структуры, т.е. определение структурных компонентов, и связей. Результат уточнения структуры, может быть представлен в виде структурной или (и), функциональный схем и описания, (спецификаций) компонентов.
Структурная схема:
Структурной называются схемы, отражающая состав и взаимодействие по управлению, частей разрабатываемого программного обеспечения. Структурная схема демонстрирует передачу управления от программы – диспетчера – соответствующей программе. Структурными компонентами структурной системы или структурного комплекса могут служить программы, подсистемы, базы данных, библиотеки ресурсов. Структурная схема программной схемы показывает наличие подсистем или других подсистемных компонентов. В отличие от программного комплекса отдельные части программной системы интенсивно обмениваются данными между собой, и возможно с основной программой.
Функциональная схема, или схема данных (ГОСТ 19-701-90) Это схема взаимодействия программного обеспечения состава данных в потоках и указанием используемых файлов и устройств. Для изображения функциональных схем используют специальные обозначения установленные