- •1. Роль вычислительной техники в решении прикладных задач.
- •2. Задачи, особенности и основные инструменты прикладного программирования
- •3.Языки программирования: классификация, особенности, критерии выбора.
- •4. Архитектура прикладных информационных систем.
- •5. Процедурная и объектно-ориентированная декомпозиция.
- •6. Основные принципы объектно-ориентированного программирования: абстрагирование, инкапсуляция, наследование, полиморфизм, модульность, сохраняемость, параллелизм.
- •7. Объекты и типы объектов. Атрибуты объектов и типы атрибутов. Методы объектов.
- •9. Директивы препроцессора: #include, #define, #error, #pragma, операции # и ##
- •11. Компиляция программы и сборка исполняемого модуля.
- •12. Размещение программы и данных в памяти.
- •13. Структура исполняемого модуля.
- •14. Переменные: объявление, определение, инициализация
- •15. Переменные: значение, указатель, ссылка.
- •16.Время жизни и области видимости переменных.
- •19. Составные типы данных.
- •20. Встроенные массивы: размещение в памяти, доступ к элементам. Размещение массива в памяти
- •Элементы массива
- •22. Условные конструкции выбора if/else , select.
- •23. Конструкции циклов for, while, do/ while; операторы break и continue.
- •24. Логические операции.
- •25. Функции: объявление, определение, передача аргументов по ссылке и по значению; входные и выходные параметры, возвращаемое значение, инструкция return.
- •26. Перегрузка функций.
- •27. Библиотека стандартного потокового ввода/вывода. Форматированный ввод/вывод. Файловые потоки, потоки в памяти.
- •28. Обработка строк, класс string.
- •29. Классы. Инкапсуляция. Сокрытие данных и видимость членов класса. Идиома «pimpl».
- •30. Конструктор класса. Конструктор с параметрами и конструктор по умолчанию. Конструкторкопирования.Операторприсваивания.Деструктор.
- •31.Наследование и полиморфизм классов: виртуальные функции.
- •32.Абстрактные базовыеклассы.
- •33.Множественное наследование.
- •34.Перегрузка операторов.
- •35.Объекты-владельцы. «Интеллектуальные» указатели.
- •36. Объекты-владельцы с частной копией ресурса.
- •37. Объекты-владельцы с совместным владением ресурсом.
- •38. Приведениетипов. Операторыstatic_cast, reinterpret_cast, dynamic_cast.
- •39. Константные и не-константные переменные. Оператор const_cast.
- •40. Шаблоны функций и шаблоны классов.
- •41. КонтейнерыстандартнойбиблиотекиStl.
- •42. Итераторы контейнеров.
- •43. Динамический массив на примере контейнера vector.
- •44. Связный список на примере контейнера list.
- •45. Контейнер deque библиотеки stl.
- •46. Ассоциативные контейнеры: map, multimap, set, multiset.
- •47. Стандартные алгоритмы: алгоритм sort; объекты-функции.
- •48. Взаимодействие прикладных программ с базами данных. Протокол odbc.
- •49. Оконный интерфейс. Организация графического оконного интерфейса при помощи оконных сообщений в ос Windows.
- •50. Работа с объектами графического интерфейса gdi.Кисти и перья; контекст устройства вывода («devicecontext»)
7. Объекты и типы объектов. Атрибуты объектов и типы атрибутов. Методы объектов.
Объект — некоторая сущность в виртуальном пространстве, обладающая определённым состоянием и поведением, имеющая заданные значения свойств (атрибутов) и операций над ними (методов). Как правило, при рассмотрении объектов выделяется то, что объекты принадлежат одному или нескольким классам, которые определяют поведение (являются моделью) объекта.
Когда мы описываем класс или структуру мы говорим, что есть некий шаблон по которому строится объект( задаем некий образец). Конкретный объект это построенный по этому образцу(формату) набор данных. тип объекта- это само описание формата
Атрибут - это значение, характеризующее объект в его классе. Примеры атрибутов: категория, баланс, кредит (атрибуты объектов класса счет); имя, возраст, вес (атрибуты объектов класса человек) и т.д.
Типы атрибутов определяют, какие значения могут принимать атрибуты.
Существуют следующие типы атрибутов:
1) Целочисленный – Значением атрибута может являться любое целое число
2) Дробный –Значением атрибута может являться любое дробное число
3) Дата –Значением атрибута может являться дата в формате ДД. ММ. ГГГГ
4) Перечисление – значения атрибута задаются в виде последовательности строковых и числовых значений при создании и редактировании атрибута. Значения задаются отдельно для каждого языка
5) Строковый – атрибут данного типа может принимать строку в качестве значения Значения задаются отдельно для каждого языка при создании и редактировании товара.
6) Файл –Значением атрибута может являться URL файла
7) Языково-нечувствительная строка – атрибут данного типа может принимать строку в качестве значения. Значение задается одно для всех языков при создании и редактировании товара.
8) Булев - Значением атрибута может являться значение «Да» или «Нет»
9) Языково-нечувствительное перечисление - значения атрибута задаются в виде последовательности строковых и числовых значений при создании и редактировании атрибута. Значения задаются одновременно для всех языков.
Атрибуты это члены класса, которые не является функциями у членов данных или поля.
Методы — это процедуры и функции, которые принадлежат объекту. С помощью своих методов объект выполняет возложенные на него обязанности.
Методы объектов - это функции, которые принадлежат классу, его методы которые можно вызывать применительно к какому то экземпляру. Функция членов класса можно вызвать только применительно, к какому то объекту класса.
8.Структура программы на языке C++.
Выглядит схема так:
Подключаемые внешние файлы (*.h, *.cpp) Обьявление глобальных переменных и функций int main(список аргументов) {
последовательность операторов } тип_возвращаемого_значения имя_функции (список входных параметров) { последовательность операторов }
Этой схеме можно привести простейший пример на C++: #include <stdio.h> int main(int argc, char* argv[]) { // тело функции return 0; } int& min(int& a, int& b) { if (a>b) return a; return b;
}
Программа на языке С++ может состоять из одной и более функций, но функция ... main( ... ) должна быть только одна. Именно с этой функции начинается выполнение программы, поэтому, при отсутствии ( или в наличии более чем один экземпляр ) такой функции компилятор выдаст соответствующее сообщение об ошибке. Еще такое замечание, в С и С++ любая последовательность операторов заканчивается ';' - символом точка с запятой, поэтому будьте внимательны, когда набираете программу, если забудете поставить - компилятор выдаст сообщение об ошибке: в строке такой то нехватает символа ';'. Комментарии в программе пишутся после " // " или между " /* ... */ ". В первом случае их размер не должен превышать размера строки, во втором размер неограничен.
