Оглавление
Java
Теория
- 1. Java. Общие сведения
- 2. Типы данных. Литералы. Ключевые слова. Переменные
- 3. Операции
- 4. Управляющие операторы
- 4.1. Оператор условного перехода if
- 4.2. Оператор выбора switch. Вложенные операторы switch
- 4.3. Конструкция if-else-if
- 4.4. Циклы for, while, do..while. Примеры использования. Решение задач с использованием циклов
- 4.5. Расширенный цикл for в стиле foreach. Общая форма. Примеры. Обработка массивов, коллекций объектов ArrayList, LinkedList
- 4.6. Операторы break, continue. Примеры использования
- 5. Массивы
- 6. Строки символов
- 7. Классы. Методы в классах
- 7.1. Классы и объекты
- 7.1.1. Применение классов в программах на Java. Определение класса и объекта класса. Примеры
- 7.1.2. Создание и сохранение объектов классов. Оператор new. Области сохранения данных в памяти. Использование массивов ссылок на объекты
- 7.1.3. Область действия объектов (scope). Удаление объектов. Преимущества использования подхода «уборки мусора» (garbage collection) для объектов
- 7.2. Конструкторы
- 7.3. Инициализация в классах
- 7.4. Методы в классах
- 7.4.1. Понятие метода. Общая форма. Параметры метода. Возврат из метода. Оператор return. Возврат объекта из метода. Примеры методов
- 7.4.2. Передача параметров в методах класса. Передача переменных примитивных типов и объектов в метод в качестве параметра
- 7.4.3. Перегрузка методов в классах. Перегрузка конструкторов
- 7.4.4. Аргументы переменной длины в методах
- 7.4.5. Рекурсия
- 7.5. Статические члены данных класса. Статические методы. Ключевое слово static
- 7.6. Спецификатор final. Неизменные данные, методы, классы. Пустые константы. Статические неизменные данные. Inline методы
- 7.1. Классы и объекты
- 8. Вложенные классы
- 9. Инкапсуляция. Управление доступом. Пакеты
- 9.1. Инкапсуляция в классе. Управление доступом в классе. Модификаторы private, protected, public
- 9.2. Пакеты. Использование пакетов в Java. Директивы import и package. Компилированные модули (.java). Промежуточные .class файлы. Структура проекта. Использование стандартных библиотек Java
- 9.3. Управление доступом к классам в пакетах. Пакетный уровень доступа к классу. Общедоступный(public) уровень доступа к классу
- 10. Наследование в классах
- 10.1. Повторное использование кода в классах. Понятие композиции, наследования, делегирования. Ключевое слово extends. Примеры
- 10.2. Наследование. Основные понятия. Суперкласс и подкласс. Ключевое слово extends. Скрытие данных в унаследованных классах. Модификаторы доступа private, protected, public
- 10.3. Наследование. Ссылка на объект подкласса. Вызов конструктора суперкласса. Ключевое слово super
- 10.4. Переопределение и перегрузка унаследованных методов. Примеры. Динамическая диспетчеризация методов
- 11. Абстрактные классы. Интерфейсы
- 12. Исключения
- 12.1. Исключения. Исключительная ситуация. Ключевые слова try, catch, finally. Примеры
- 12.2. Операторы throw, throws. Примеры
- 12.3. Классы Java для обработки исключительных ситуаций из пакета java.lang. Методы класса Throwable. Примеры
- 12.4. Класс Exception. Создание собственных классов исключений. Примеры
- 14. Система ввода/вывода. Работа с файлами
- 14.1. Система ввода/вывода. Байтовые потоки. Символьные потоки. Стандартные потоки
- 14.2. Работа с консолью в Java. Классы InputStreamReader, PrintStream. Создание потока ввода/вывода связанного с консолью. Перенаправление потоков ввода/вывода
- 14.3. Работа с файлами в Java. Класс File. Основные методы работы
- 14.4. Байтовые потоки. Классы DataInputStream, DataOutputStream, FileInputStream, FileOutputStream. Примеры использования
- 14.5. Примеры реализации операций, которые модифицируют текстовые файлы. Классы FileReader, FileOutputStream, PrintStream
- 14.6. Автоматическое закрытие файла. Оператор try с ресурсами. Примеры
- 14.7. Сериализация объектов. Ключевое слово transient. Примеры
- 15. Обобщения
- 16. Дополнительные возможности Java
- 17. Лямбда-выражения. Функциональные интерфейсы. Ссылки на методы
- 17.1. Лямбда-выражения. Основные понятия. Функциональный интерфейс. Примеры
- 17.2. Лямбда-выражения для обобщенных функциональных интерфейсов
- 17.3. Передача лямбда-выражения в метод в качестве параметра. Примеры
- 17.4. Генерирование исключений в лямбда-выражениях. Примеры
- 17.5. Доступ к элементам класса в лямбда-выражениях. Захват переменных в лямбда-выражениях. Примеры
- 17.6. Ссылки на методы. Виды ссылок на методы. Ссылка на статический метод. Ссылка на метод экземпляра
- 17.7. Ссылка на конструктор класса
- 17.8. Стандартные (предопределенные) функциональные интерфейсы Java
- 18. Потоки данных Stream API
- 18.1. Потоки данных Stream API. Общая информация
- 18.2. Понятие конечной и промежуточной операции. Примеры. Отличия. Методы создания потока данных stream(), parallelStream()
- 18.3. Интерфейс BaseStream. Примеры использования методов интерфейса
- 18.4. Интерфейс Stream<T>. Промежуточные методы: filter(), map(), mapToDouble(), mapToInt(), mapToLong(), sorted(). Примеры
- 18.5. Интерфейс Stream<T>. Конечные методы: collect(), count(), forEach(), max(), min(), reduce(), toArray(). Примеры
- 19. Потоки выполнения (Threads)
- 19.1. Многозадачность. Потоки выполнения. Основные понятия
- 19.2. Средства Java для работы с потоками выполнения. Класс Thread. Интерфейс Runnable. Главный поток выполнения. Создание дочернего потока
- 19.3. Методы класса Thread: getName(), run(), start(), sleep(). Примеры
- 19.4. Методы класса Thread: join(), isAlive(), getPriority(), setPriority(). Примеры
- 19.5. Синхронизация потоков. Монитор. Общие понятия. Ключевое слово synchronized
- 19.6. Взаимодействие между потоками. Методы wait(), notify(), notifyAll()
- 19.7. Состояния потока выполнения. Метод getState(). Пример
Практика
- 1. Разработка классов
- 2. Stream API
- 3. Решение задач. Примеры
⇑
Pascal, Delphi
Теория
- I. Структурное программирование. Базовый курс
- 1. Разработка программ на ПК. Алгоритмы
- 2. Базовые понятия языка Паскаль. Стандартные типы данных. Переменные, константы
- 3. Базовые синтаксические конструкции языка Паскаль
- 3.1. Элементарные конструкции языка Паскаль
- 3.2. Операторы управления вычислительным процессом
- 3.3. Перечислительный и интервальный типы данных
- 3.4. Массивы
- 3.6. Записи. Записи с вариантами
Практика
1. Delphi 7.
- 001 — Создание таблицы базы данных с помощью утилиты Database Desktop.
- 002 — Создание перекрестных таблиц в Delphi.
2. Embarcadero RAD Studio 2010.
- 001 — Программирование события в Delphi 2010
- 002 — Программа расчета площади круга и объема шара
- 003 — Создание нового проекта в Embracadero RAD Studio 2010 (Delphi 2010)
- 004 — Создание новой формы и подключение ее к главной форме программы
- 005 — Разработка приложения «Магазин» (курсовая работа с нуля)
- 006 — Установка порядка табуляции для элементов управления на форме
- 007 — Создание главного меню. Компонент TMainMenu
- 008 — Пример подключения базы данных Microsoft Access к приложению Delphi
- 009 — Пример создания вычисляемых полей в компоненте TDBGrid
- 010 — Пример сортировки в базе данных с использованием компонента TADOQuery
- 011 — Разработка приложения формирования SQL-запросов к таблице базы данных
- 012 — Пример вычисления общей суммы в таблице базы данных Microsoft Access без использования SQL-запроса
- 013 — Пример вычисления общей суммы в таблице базы данных Microsoft Access с использованием SQL-запроса. Компонент TDBText
- 014 — Разработка программы рисования графика функции двух переменных z = f(x, y)
- 015 — Демонстрация методов оперирования данными в таблице базы данных Microsoft Access с помощью компонента TADOTable
- 016 — Управление отображением текущего времени в программе. Компонент TTimer
- 017 — Решение задачи размещения N ферзей на доске размером N×N. Курсовая работа
⇑
C#
Теория
- 1. C#. Общие сведения
- 2. Составляющие C#. Элементы языка. Типы данных. Ключевые слова. Литералы
- 2.1. Ключевые слова C#
- 2.2. Категории (группы) типов данных в C#. Значимые типы. Ссылочные типы
- 2.3. Базовые типы данных языка C#
- 2.4. Литералы
- 2.5. Переменные и константы. Инициализация переменной. Динамическая инициализация. Неявно-типизированные переменные
- 2.6. Тип string
- 2.7. Символьный тип данных char. Структура System.Char. Методы структуры System.Char
- 2.8. Значение null. Типы данных, допускающие значение null. Операции ?, ??
- 3. Операции
- 4. Управляющие операторы
- 4.1. Оператор условного перехода if. Полная и сокращенная формы. Конструкция if-else-if
- 4.2. Оператор выбора switch. Вложенные операторы switch
- 4.3. Оператор цикла while. Примеры
- 4.4. Оператор цикла for. Примеры
- 4.5. Оператор цикла do-while. Примеры
- 4.6. Оператор цикла foreach. Примеры
- 4.7. Операторы break, continue, goto
- 5. Массивы
- 5.1. Одномерные массивы. Примеры решения задач на одномерные массивы. Массивы структур. Массивы классов. Инициализация массивов
- 5.2. Многомерные массивы. Ступенчатые массивы. Инициализация многомерных массивов
- 5.3. Ссылки на массивы. Свойство Length. Присваивание массивов
- 5.4. Неявно типизированные массивы. Ключевое слово var
- 5.5. Массивы строк. Примеры решения наиболее распростнаненных задач
- 6. Структуры. Перечисления
- 6.1. Структуры. Общие понятия. Тип структуры. Структурная переменная. Модификаторы доступа к структурной переменной. Примеры использования структур в программе
- 6.2. Структуры и методы. Инициализация структур. Конструкторы в структурах. Свойства в структурах
- 6.3. Использование массивов в структурах. Массивы структур. Вложенные структуры. Копирование структур
- 6.4. Перечисления
- 7. Индексаторы. Свойства
- 8. Интерфейсы. Использование интерфейсов в C#
- 9. Классы
- 9.1. Общие понятия. Объекты. Данные и методы класса
- 9.1.1. Понятие класса. Общая форма объявления класса. Объект класса. Поля класса. Примеры. Ключевое слово this. Вложенные классы
- 9.1.2. Константные поля в классах. Ключевые слова const, readonly
- 9.1.3. Ключевое слово this. Назначение. Случаи применения this в классах. Примеры
- 9.1.4. Инициализация в классах. Способы инициализации. Инициализация переменных базовых типов. Инициализаторы объектов
- 9.2. Специальные функции класса
- 9.3. Динамическое выделение памяти. Оператор new. Выделение памяти для типов-значений, структур, перечислений, объектов классов. Выделение памяти для массивов
- 9.4. Методы в классах. Рекурсия
- 9.4.1. Понятие метода. Примеры методов в классах. Возврат из метода. Оператор return. Методы без параметров. Ключевое слово void
- 9.4.2. Передача параметров в методы
- 1. Передача параметров в метод. Аргументы и формальные параметры. Примеры. Передача ссылки на объект класса в метод
- 2. Модификаторы параметров ref и out. Примеры. Отличия между модификаторами ref и out
- 3. Переменное количество аргументов в методах. Модификатор params. Преимущества. Примеры методов с переменным количеством аргументов
- 4. Передача массивов в методы. Примеры. Передача массивов структур, классов, перечислений. Передача двумерных массивов в методы. Возврат массива из метода
- 5. Передача в методы одномерных и многомерных массивов экземпляров класса как ref и out параметров
- 6. Необязательные аргументы. Преимущества. Примеры применения необязательных аргументов. «Неоднозначность» в необязательных аргументах
- 7. Именованные аргументы. Преимущества. Примеры
- 9.4.3. Перегрузка методов в классах. Примеры. Преимущества. Перегрузка конструкторов
- 9.4.4. Рекурсия. Примеры рекурсивных методов (функций)
- 9.4.5. Метод Main(). Способы объявления. Передача аргументов в Main()
- 9.5. Инкапсуляция в классах. Ключевые слова private, protected, public, internal
- 9.6. Статические классы, методы, переменные. Статические конструкторы. Ключевое слово static
- 9.7. Вложенные классы. Вложенные статические классы. Объявление и использование вложенных классов. Примеры
- 9.1. Общие понятия. Объекты. Данные и методы класса
- 10. Отношения между классами
- 11. Наследование. Полиморфизм. Абстрактные классы
- 11.1. Наследование. Базовые понятия. Преимущества и недостатки. Общая форма. Простейшие примеры. Модификатор доступа protected
- 11.2. Использование конструкторов в классах при наследовании. Ключевое слово base при наследовании
- 11.3. Доступ к элементам базового класса из унаследованного класса. Ключевые слова base, new. Примеры
- 11.4. Примеры создания иерархий классов с использованием наследования
- 11.5. Полиморфизм
- 11.5.1. Особенности применения ссылки на базовый класс. Ключевые слова as, is. Вызов методов с одинаковыми именами в ирерархиях наследования
- 11.5.2. Пример доступа к методам и свойствам унаследованных классов с помощью ссылки на базовый класс
- 11.5.3. Позднее и раннее связывание. Полиморфизм. Основные понятия. Примеры. Передача в метод ссылки на базовый класс
- 11.6. Абстрактные классы
- 11.7. Запрет наследования. Ключевое слово sealed. Особенности применения
- 14. Делегаты
- 14.1. Понятие делегата. Объявление типа делегата. Использование делегата в программе. Групповое преобразование методов
- 14.2. Использование делегатов, которые ссылаются на методы экземпляра класса
- 14.3. Делегаты. Групповая адресация. Создание цепочек вызовов методов
- 14.4. Анонимные функции. Анонимные методы. Возврат значения. Передача параметров
- 14.5. Примеры передачи массивов, структур, классов анонимному методу
- 15. Лямбда-выражения
- 16. События
- 17. Средства ввода/вывода. Потоки
- 17.1. Понятие потока. Архитектура потоков в C#. Потоки с опорными хранилищами. Потоки с декораторами. Адаптеры потоков
- 17.2. Класс Stream
- 17.5. Адаптеры потоков
- 20. Рефлексия, динамически загружаемые сборки, позднее связывание
- 20.1. Динамическая идентификация типов. Операторы is, as. Примеры
- 20.2. Рефлексия типов. Получение метаданных типа. Пространство имен System.Reflection. Класс System.Type. Способы получения информации о типе. Оператор typeof
- 20.3. Примеры получения информации о методах, интерфейсах, классах, структурах, перечислениях, делегатах, полях типов, статистических данных о типах
- 20.4. Динамически загружаемые сборки. Класс Assembly. методы Load() и LoadFrom()
- 20.5. Позднее связывание. Вызов метода. Клас System.Activator. Метод Invoke()
- II. Библиотека C#
- III. Элементы управления (шаблон Windows Forms Application)
⇑
C# — Практика
- Microsoft Visual Studio 2017 — 2019
- Шаблон Console App (.NET Framework)
- 001 — Пример создания Unit-теста в Microsoft Visual Studio 2017
- 002 — Пример разработки программы, которая размещается в разных файлах. Реализация наследования в классах. Средства Visual Studio 2019 разбивки программы на части
- 003 – Разработка обобщенного класса, реализующего алгоритм линейного поиска
- 004 – Разработка обобщенного класса, реализующего алгоритм сортировки выбором
- Шаблон Windows Forms
- Шаблон Console App (.NET Framework)
- Microsoft Visual Studio 2010
- Шаблон Windows Forms Application
- 001 — Создание приложения Windows Forms Application в MS Visual Studio 2010
- 002 — Вывод таблицы базы данных Microsoft Access в компоненте dataGridView.
- 003 — Подключение к базе данных Microsoft Access в MS Visual Studio 2010.
- 001 — Создание приложения Windows Forms Application в MS Visual Studio 2010.
- 004 — Перевод базы данных Microsoft Access в формат Microsoft SQL Server
- 005 — Пример программирования события в C#. Разработка программы для определения площади поверхности шара.
- 006 — Пример создания и вызова новой формы приложения в C#.
- 007 — Пример создания Web-приложения в MS Visual Studio — C#.
- 008 — Пример создания меню в C#. Элемент управления menuStrip
- 009 — C#. Курсовая. Разработка приложения автоматизации диспетчера касс автовокзала.
- 010 — C#. Пример создания приложения копирования файлов. Класс FileStream.
- 011 — C# — Пример создания двумерной матрицы на форме. Аналог компонента TStringGrid в Delphi.
- 012 — C# — Разработка программы чтения и записи текстовых файлов. Классы StreamWriter и StreamReader.
- 013 — Разработка программы рисования графика функции двух переменных z = f(x, y) или 3D-графика.
- 014 — Пример программы демонстрации основных операций над данными таблицы базы данных MS SQL Server (SQLEXPRESS).
- 015 — Управление отображением текущего времени в программе. Демонстрация компонента Timer.
- 016 — Пример разработки приложения демонстрации работы списков и ассоциативных массивов. Классы Dictionary, List, StreamReader.
- 017 — Реализация концепций «наследования» и «полиморфизма» в объектно-ориентированном программировании на примере создания двух классов. Интерфейсы ICloneable, IEquatable.
- 018 — Разработка программы демонстрации использования запросов на языке LINQ
- 019 — C# + Базы данных. Пример создания отчета (Report) в локальной базе данных, которая размещена в *.mdf-файле. База данных типа Microsoft SQL Server
- 020 — Курсовая работа. Разработка программы мониторинга загрязнения окружающей среды
- 021 — Пример решения задачи, вычисляющей характеристики геометрических фигур с использованием делегатов
- 022 — Пример использования делегата для вызова анонимного метода. Разработка программы вычисления площади треугольника по формуле Герона
- 023 — Пример создания отчета в приложении. Элемент управления Report Viewer. База данных Microsoft Access
- 024 — Разработка программы демонстрации работы элемента управления DataGridView
- 025 – Курсовая работа. Разработка программы ведения учета материальных средств. База данных Microsoft Access
- 026 – Пример создания Unit-теста в Microsoft Visual Studio 2010
- 028 – Решение задачи об N ферзях. Курсовая работа
- Шаблон WPF Application
- Шаблон ASP .NET Web Application
- Распределенные приложения
- Шаблон Windows Forms Application
Решение задач
- Одномерные массивы. Циклы for, while, do..while
- Одномерные массивы. Циклы for, while, do..while в объединении с оператором условного перехода if
- Рекурсия. Примеры решения задач
- Пример решения задач, использующих статические данные и методы в классе
- Текстовые файлы. Решение задач на модификацию текстовых файлов. Классы File, StreamReader, StreamWriter
⇑
C++
Теория
- Базовый курс C++
- 1. Общие сведения о языке C++
- 2. Базовые понятия языка C++
- 2.1. Базовые типы данных C++
- 2.2. Идентификаторы, зарезервированные слова, литералы, управляющие последовательности
- 2.3. Понятие переменной. Объявление переменной. Операция расширения области видимости :: . Выделение памяти для переменной. Константы
- 2.4. Понятие выражения. Операция присваивания. Преобразование и приведение типов. Инициализация. Унифицированная инициализация
- 3. Операции
- 4. Управляющие операторы
- 5. Массивы и строки символов
- 6. Классы для работы со строками символов
- 7. Указатели. Ссылки
- 8. Функции. Рекурсия
- 8.2. Функции и массивы. Передача одномерного и многомерного массива в функцию. Передача структуры и класса в функцию
- 8.3. Аргументы по умолчанию в функциях
- 8.4. Перегрузка функций. Перегрузка функций в классах. Перегрузка конструкторов класса. Доступ к перегруженной функции по указателю. Примеры
- 8.5. Передача в функцию константных параметров. Возврат из функции константы
- 8.6. Обобщения в функциях. Шаблонная функция. Ключевые слова template, class, typename. Явная «перегрузка» шаблонной функции
- 8.7. Рекурсия. Примеры решения задач. Преимущества и недостатки
- 9. Структуры. Объединения. Перечисления
- 9.3. Работа с managed-структурами в среде CLR. Квалификаторы ref и value. Объявление структурных переменных. Массивы managed-структурных переменных. Инициализация managed-структур
- 9.4. Структуры и функции. Передача структуры в функцию в среде CLR. Возврат структуры из функции
- 9.5. Структуры. Использование методов в структурах. Конструкторы в структурах
- 9.6. Структуры и наследование. Структуры и полиморфизм. Абстрактная структура. Перегрузка операторов в структурах. Статические методы в структурах
- 9.7. Объединения. Ключевое слово union. Примеры объявления и использования объединений
- 9.8. Перечисления. Ключевое слово enum. Преимущества использования перечислений. Примеры
- 10. Динамическое выделение памяти
- 11. Препроцессор. Директивы препроцессора
- II. Объектно-ориентированное программирование на C++
- 2. Классы
- 2.1. Понятие класса. Объявление класса. Объект класса. Классы в среде CLR. Инкапсуляция данных в классе
- 2.2. Специальные функции класса
- 2.2.1. Конструктор класса. Конструктор по умолчанию. Параметризированные конструкторы. Примеры классов, содержащих конструкторы
- 2.2.2. Конструктор копирования. Примеры использования. Передача объекта класса в функцию. Возврат объекта класса из функции
- 2.2.3. Деструкторы. Определение деструктора. Общедоступные и приватные деструкторы. Примеры. Отличия между конструкторами и деструкторами
- 2.2.4. Заданные по умолчанию методы. Удаленные методы. Ключевые слова default, delete
- 2.3. Члены данных класса
- 1. Использование членов-данных класса. Статические (static) члены данных в классе. Статические члены данных для native-классов и managed-классов в среде CLR
- 2. Объекты класса как члены данных класса. Примеры
- 3. Ссылки на объект класса. Доступ к объекту класса по ссылке. Ссылки как члены данных класса. Примеры
- 2.4. Функции-члены класса
- 2.4.1. Виды функций-членов класса. Обычные функции-члены. Статические (static) функции-члены класса. Примеры использования
- 2.4.2. Константные (const) функции-члены класса. Функции-члены класса volatile
- 2.4.3. Функции класса, объявленные с константным (const) указателем this и непостоянным (volatile) указателем this
- 2.4.4. Inline функции-члены класса. Ключевое слово inline
- 2.5. Инкапсуляция
- 2.6. Классы памяти, которые могут объявляться при работе с классами и объектами классов. Ключевые слова register, extern, static, mutable
- 2.7. Managed и unmanaged классы в Visual C++. Обзор особенностей работы. Пример реализации managed и unmanaged классов
- 2.8. «Друзья» класса. «Дружественные» классы и функции. Ключевое слово friend. Примеры
- 2.9. Шаблон класса. Ключевое слово template. Преимущества шаблонов. Аргументы в шаблонах. Примеры
- 2.10. Классы и массивы
- 2.10.1. Массивы объектов в unmanaged и managed классах. Примеры. Массив unmanaged—указателей (*) на объект класса
- 2.10.2. Инициализация массивов значениями данных из объектов классов
- 2.10.3. Массивы указателей на методы члены класса. Примеры
- 2.10.4. Указатель на статический член данных класса. Массивы статических членов данных. Массивы указателей на статические члены данных. Примеры
- 2.11. Понятие побитового копирования. Пример. Необходимость использования конструктора копирования и оператора копирования для классов, содержащих динамическое выделение памяти
- 4. Перегрузка операторов
- 4.1. Перегрузка операторов в C++. Операторная функция. Ключевое слово operator. Перегрузка базовых арифметических операторов +, –, *, /. Примеры реализации встроенных операторных функций
- 4.2. «Дружественные» операторные функции: отличия, реализации, особенности применения. Перегрузка операторов +, –, *, / с помощью «дружественных» операторных функций
- 4.3. Класс DoubleArray. Пример поэлементного суммирования двух массивов. Перегрузка оператора +. Динамическое выделение памяти под массив. Конструктор копирования. Недостатки побитового копирования
- 4.4. Перегрузка инкрементных и декрементных операторов ++, — —. Примеры
- 4.5. Перегрузка сокращенных операторов присваивания +=, -=, *=, /=, %=. Примеры
- 4.6. Перегрузка операторов new и delete. Примеры
- 4.7. Перегрузка оператора присваивания =. Примеры
- 4.8. Перегрузка оператора индексирования элементов массива [ ]
- 4.9. Перегрузка оператора ( ) вызова функции. Примеры
- 4.10. Перегрузка операторов -> и ‘ . ‘ (запятая). Примеры
- 5. Агрегация, композиция, наследование
- 6. Исключения (exceptions)
- 10. Файловая система
- 10.1. Файловая система. Принципы работы файловой системы C++. Примеры. Открытие/закрытие файла
- 10.2. Примеры использования средств C++ для работы с файлами
- 10.3. Примеры работы с текстовыми файлами. Модификация файлов. Сортировка данных в файлах. Конвертирование строк файла в массив. Замена/удаление строки в файле. Вставка строки в файле
- 11. Динамические структуры данных
- 11.1. Стек. Операции над стеком. Пример реализации стека в виде динамического массива
- 11.2. Очередь. Особенности реализации. Способы реализации очереди. Представление очереди в виде динамического массива
- 11.3. Очередь с приоритетами. Пример реализации. Представление в виде динамического массива
- 11.4. Разработка шаблонного класса, реализующего стек в виде односвязного списка
- 2. Классы
- ІІІ. Библиотека стандартных функций и классов C++
- IV. Примеры разработки классов
⇑
Практика
Borland C++ Builder
- 001 — Создание Windows-приложения в C++ Builder.
- 002 — Сортировка записей в базе данных.
- 003 — Создание отчета Rave Report на основе таблицы MS Access в C++ Builder.
- 004 — Подключение базы данных Microsoft Access к Windows-приложению.
- 005 — Пример вывода таблицы базы данных в компоненте DBGrid в C++ Builder.
- 006 — Пример программирования события в C++ Builder.
- 007 — Пример разработки приложения определения объема цилиндра в C++ Builder.
- 008 — C++ Builder. Пример создания и вызова новой формы из главной формы приложения.
- 011 — C++ Builder. Разработка приложения решения системы линейных алгебраических уравнений методом Гаусса.
- 012 — Разработка программы рисования графика функции одной переменной.
Microsoft Visual Studio — 2010-2019
- 001 — Создание простого диалогового приложения Windows типа Dialog Based Application с использованием библиотеки MFC.
- 002 — Пример создания и вызова диалогового окна в MS Visual Studio 2010 — C++ (MFC Application).
- 003 — Создание приложения типа Windows Forms Application в MS Visual Studio — C++. Обзор основных файлов проекта.
- 004 — Пример разработки простейшего приложения типа Windows Forms на языке C++ в MS Visual Studio.
- 005 — Пример разработки приложения для вычисления выражения с перехватом возможных исключительных ситуаций. Работа с инструкцией try…throw…catch
- 006 — Пример разработки приложения с использованием оператора условного перехода if. Обзор основных свойств формы
- 007 — Пример использования оператора switch в приложении. Элемент управления ComboBox
- 008 — Демонстрация использования цикла for в программах. Пример вычисления суммы ряда
- 009 — Разработка программы вычисления суммы отрицательных элементов массива. Элемент управления DataGridView
- 010 — Разработка программы вычисления выражения, реализованного отдельной функцией. Элемент управления PictureBox
- 011 — Пример создания Unit-теста в Microsoft Visual Studio — C++
- 012 − Решение задачи размещения N ферзей на доске размером N×N. Курсовая работа
- 013 – Контрольная работа. Приложение Console Application. Шаблонный класс CArray – динамический массив данных
Решение задач
- Одномерные массивы. Циклы for, while, do..while
- Одномерные массивы. Циклы for, while, do..while в объединении с оператором условного перехода if
- Решение задач. Функции и массивы. Прототип функции. Передача массива в функцию
- Примеры решения задач на шаблоны функций. Перегрузка шаблонов функций. Обработка массивов
- Рекурсия. Примеры решения задач на рекурсию в C++
- Разработка класса, демонстрирующего реализацию исключительной ситуации переполнения
- Пример использования шаблонного класса Матрица с динамическим выделением памяти
⇑
Базы данных
- Теория
- Основные понятия
- Общие сведения о базах данных. История развития систем управления базами данных
- Функции систем управления базами данных
- Понятие системы баз данных. Схема базы данных. Данные. Аппаратное и программное обеспечение. Пользователи баз данных
- Перманентные данные. Временные данные
- Модель «сущность-связь» (entity relationship model)
- Понятие ER-модели. Понятие сущности (entity). Атрибуты. Виды атрибутов
- Подтипы сущностей. Супертип. Пример. Преимущества и недостатки применения подтипов сущностей
- Понятие связи в ER-модели. Мощность связи. Типы связей. Примеры
- Сильные и слабые связи между типами сущностей. Унарные связи. Рекурсивная связь
- Реляционная модель данных
- Нормализация
- Основные понятия
- Практика
- Работа с сервером баз данных Microsoft SQL Server в Microsoft Visual Studio
- Базы данных Microsoft SQL Server, которые размещаются в «*.mdf»-файлах
- 001 — Пример создания/подключения локальной базы данных Microsoft SQL Server, которая размещается в «*.mdf»-файле
- 002 — Пример создания новой таблицы в локальной базе данных Microsoft SQL Server, размещенной в«*.mdf»-файле
- 003 — Создание поля автоинкремента (счетчика) в таблице базы данных Microsoft SQL Server, которая размещается в «*.mdf»-файле
- 004 — Создание связи (отношения) типа «один ко многим» между таблицами базы данных MS SQL Server
- 005 — Пример создания «*.mdf» файла локальной базы данных Microsoft SQL Server в Microsoft Visual Studio
- 006 — Строка соединения с базой данных. Пример использования в приложениях
- 007 — Пример создания запроса (Query) в базе данных
- 008 — Пример создания представления (View) в базе данных. Создание вычисляемого поля
- Базы данных Microsoft Access
⇑