- •1. Эволюция языков прогр-я.
- •2. Что такое .Net? Обзор технологий программирования под Windows.
- •3. Компоненты платформы .Net. Что такое .Net Framework?
- •4. Модель выполнения приложения в среде .NetFramework. Промежуточныйязык Microsoft (Microsoft Intermediate Language, msil). Сборки
- •5. Обзор встр. Типов данных в с#. Применение встроенной функц-сти типов данных.
- •6. Операции ввода-вывода. Формат вывода. Пространство имён System. Класс Math. Пространство имён System и класс Math
- •7. Арифметические операции. Операции отношений и логические операции. Операторы и выражения в c# .
- •Операторы сравнения в c#. Лог. Операции для условий
- •Операторы
- •8. Одномерные массивы в c#. Класс System.Random, применение его методов для создания массива случайных чисел. Класс System.Array, использование его методов и свойства Length.
- •9. Двумерныемассивы в c#. Виды двумерных массивови способы их определения; способы создания; построчный вывод на экран
- •10. Структуры в c#. Создание структур, доступ к элементам, массивы структур.
- •11.Объект и его свойства. Характеристики ооп.
- •12.Классы в c#. Форма определения класса. Члены класса: методы, поля, свойства и события.
- •13.Конструкторы. Параметризованные конструкторы. Использование оператора new.
- •14. Типы значений и ссылочные типы. Динамическое использование памяти: стеки и кучи. Упаковка и распаковка.
- •15. Деструкторы. Сборка «мусора».
- •16. Определение методов класса. Модификаторы доступа к методам класса. Параметры методов класса, передача аргументов.
- •17. Модификаторы ref, out, params параметров методов.
- •18. Общие (статические) члены класса. Доступ к общим членам. Ограничения на static-методы.
- •19.Область видимости и время существования переменных.
- •20. Преобразование и приведение типов.
- •21. Обработка исключительных ситуаций.
- •22. Перегрузка методов и перегрузка конструкторовкак механизм реализации полиморфизма. Виды конструкторов.
- •23. Понятие стека. Класс «Стек из символов», его основные методы.
- •24. Перегрузка операторов. Перегрузка бинарных, унарных и операторов отношений.
- •25. Свойства как механизм реализации инкапсуляции. Формат записи свойств.
- •26. Индексаторы. Специальные приемы построения типов. Создание одномерных и двумерных индексаторов.
- •27.Наследование. Базовые и производные классы. Доступы к членам базовых классов.
- •28.Конструкторы и наследование (проект «Наследование»).
- •29. Ссылки на базовый класс и объекты производных классов.
- •30. Виртуальные методы и их переопределение.
- •31. Абстрактные классы.
- •32. Понятие интерфейса. Определение интерфейса.
- •33. Способы реализации интерфейса.
- •34.Некоторые станд.Интерфейсы среды .Net Framework.
- •35. Механизмы реализации полиморфизма в c#.
- •36. Понятие обобщенного программирования. Принципы обобщенного программирования (абстрагирование, иерархия, типизация).
- •37. Коллекции и наборы. Обзор коллекций. Интерфейсы коллекций. Классы коллекций общего назначения.
- •38. Классы ArrayList, Queue, Stack. Методы работы с различными структурами данных.
- •39. Динамическая идентификация типов. Проверка типа с помощью ключевого слова is. Использование операторов as, typeof.
- •40. Обобщение. Разработка обобщенных наборов, методов, классов.
- •41. Отражение и атрибуты. Понятие отражения. Класс System.Type. Получение информации о методах и типах. Атрибуты. Основы применения атрибутов.
- •42.Принципы работы Windows-приложений c пользователем.
- •43. Делегаты. Назначение делегатов. Многоадресатная передача.
- •44. События. Объявление и генерация событий. Реализация обработчиков событий.
- •Объявление события:
- •45.Понятие компонента и компонентной модели, компонентно-ориентированного программирования.
- •46.Принципы и технологии внедрения и связывания объектов. Ос Windows позволяет:
42.Принципы работы Windows-приложений c пользователем.
Рассмотрим основные особенности операционной системы Windows:
Многозадачность – возможность одновременно выполнять несколько приложений. ОС обеспечивает разделение ресурсов: каждому приложению выделяется свое адресное пространство, распределяется процессорное время, организуются очереди для доступа к внешним устройствам. Внутри одного приложения можно реализовать параллельное выполнение нескольких программ, называемых потоками.
Независимость программ от аппаратуры. Для управления аппаратными средствами приложение обращается к операционной системе, что обеспечивает независимость от конкретных физических характеристик устройств, т.е. при смене устройства изменения в программу вносить не надо. Управление внешними устройствами обеспечивается с помощью драйверов.
Стандартный графический интерфейс с пользователем. Каждое приложение выполняет вывод в отведенную ему прямоугольную область экрана, называемую окном, или фреймом. Окно состоит из стандартных элементов. Это упрощает работу пользователя с приложением, а программисту предоставляются библиотеки интерфейсных компонентов. Интерфейсные компоненты обращаются к аппаратуре не непосредственно, а через функции ОС, называемые API (Application Programing Interface).
Программный интерфейс приложения. API-функции находятся в динамических библиотеках DLL (Dynamic Link Library), которые разделяются всеми приложениями. Библиотеки называются динамическими, потому что их функции не подключаются к исполняемому файлу во время компиляции, а вызываются во время работы приложения.
В основе графического интерфейса Windows лежит представление экрана как рабочего стола, на котором размещены окна приложений, ярлыки, меню. Приложение может иметь несколько окон. Одно из них – главное. При закрытии главного окна приложение завершается.
Возможность обмена данными между приложениями. Приложения могут обмениваться данными через буфер обмена, а также использовать механизм, например, OLE (Object Linking Embedding) – связывание и внедрение объектов.
Принцип событийного управления. Это значит, что и сама система, и приложения после запуска ожидают действий пользователя и реагируют на них заранее заданным способом. Любое действие пользователя (нажатие клавиш на клавиатуре, перемещение мышью, щелчок кнопками мыши) называется событием. Событие воспринимается ОС и преобразуется в сообщение – структуру, содержащую информацию о событии. Например, какая клавиша мыши нажата: левая, правая, scrolling.
Сообщения поступают в общую очередь, откуда распределяются по очередям приложений. Каждое приложение содержит цикл обработки сообщений, который выбирает сообщение из очереди и через ОС вызывает функцию – обработчик событий. Таким образом, Windows-приложение состоит из главной программы, обеспечивающей инициализацию и завершение приложения, цикла обработки сообщений, набора обработчика событий.
Структура Windows-приложений
-
ОС Windows
Windows-приложения
Сообщение
Системная очередь
Очередь приложений
Функции API
Вывод в окно приложений
Главная программа
Цикл обработки событий
Обработчик событий
Среда Visual Studio.NET содержит удобные средства разработки Windows-приложений, выполняющие вместо программиста рутинную работу (создание форм, создание заготовок обработчиков событий, организация циклов обработки сообщений).