This website works better with JavaScript
ホーム
エクスプローラ
ヘルプ
登録
サインイン
ekolesnikov
/
OAP
ウォッチ
1
スター
0
フォーク
0
ファイル
課題
0
プルリクエスト
0
Wiki
ブランチ:
master
ブランチ
タグ
master
OAP
/
readme.md
readme.md
17 KB
パーマリンク
履歴
Raw
Министерство образования и науки РФ
ГБПОУ РМЭ "Йошкар-Олинский Технологический колледж
Курс лекций по предмету
"Основы алгоримизации и программирования"
для группы И-21
Разработал
:
Колесников Евгений Иванович
г.Йошкар-Ола, 2021-2025 гг
Основы алгоримизации и программирования
Тема 1. Основные принципы алгоритмизации и программирования
Теория
Основные понятия алгоритмизации. Понятие алгоритма. Свойства алгоритма. Формы записи алгоритмов. Общие принципы построения алгоритмов. Определение сложности работы алгоритмов.
Основные алгоритмические конструкции: линейные, разветвляющиеся, циклические. Программы для графического отображения алгоритмов
Логические основы алгоритмизации. Основы алгебры логики. Логические операции с высказываниями: конъюнкция, дизъюнкция, инверсия. Законы логических операций. Таблицы истинности.
Лабораторные работы
Разработка алгоритмов для конкретных задач. Определение сложности работы алгоритмов.
Использование программ для графического отображения алгоритмов.
Таблицы истинности
Контрольные вопросы
Этапы решения задачи на компьютере? Охарактеризуйте их. Проиллюстрируйте этапы постановки и формализации на примере задачи: вычислить время движения моторной лодки между двумя пунктами.
Понятие алгоритма.
Основные типы данных.
Свойства алгоритма.
Формы записи алгоритмов.
Что такое структурное программирование? Каковы основные прнципы структурной методики построения алгоритмов?
Линейный алгоритм
Разветвляющийся алгоритм
Циклический алгоритм
Вспомогательные алгоритмы и процедуры
Основные формы мышления.
Что такое логическое высказывание?
Способы описания логических функций.
Основные логические операции.
Приоритет логических операций
Законы логических операций
Проверка законов построением таблиц истинности
Классификация языков программирования
компиляция и интерпретация, основные отличия
Методы программирования
Общие принципы разработки программного обеспечения
Жизненный цикл программного обеспечения
Типы приложений
Тема 2. Языки и методы программирования
Языки программирования. Эволюция языков программирования. Классификация языков программирования. Понятие системы программирования. Исходный, объектный и загрузочный модули. Интегрированная среда программирования.
Методы программирования: структурный, модульный, объектно-ориентированный. Достоинства и недостатки методов программирования. Общие принципы разработки программного обеспечения. Жизненный цикл программного обеспечения.
Тема 3. Системы контроля версий
Системы контроля версий.
Лабораторные работы
Создание аккаунта и репозитория в СКВ gihtub. Создание консольного приложения и инициализация нового репозитория в проекте.
Тема 4. Программирование на языке C#. Основы.
Основные элементы языка. Структурная схема программы на алгоритмическом языке. Лексика языка. Переменные и константы. Типы данных. Выражения и операции.
Операторы и операции языка. Синтаксис операторов. Составной оператор. Вложенные условные операторы. Циклические конструкции.
Массивы как структурированный тип данных. Объявление массива. Ввод и вывод одномерных и двумерных массивов. Обработка массивов. Стандартные функции для массива целых и вещественных чисел. Коллекции и последовательности.
Строки. Объявление строковых типов данных. Поиск, удаление, замена и добавление символов в строке. Операции со строками. Стандартные функции и процедуры работы со строками.
Объявление множества. Работа с датами. Кортежи.
Лабораторные работы
Знакомство со средой программирования и структурой проекта. Создание репозитория с ветками. Составление программ линейной структуры.
Отладка приложения
Составление программ разветвляющейся структуры.
Составление программ циклической структуры. Обработка одномерных и двумерных массивов.
Работа со строковыми переменными.
Работа с данными типа: множество, дата, кортежи.
Тема 5. Продвинутый C#: функции, лямбды, исключения, работа с файлами, многопоточность, регулярные выражения.
Общие сведения о подпрограммах. Определение и вызов подпрограмм. Область видимости и время жизни переменной. Механизм передачи параметров. Лямбда-функции.
Делегаты, события и лямбды
Исключения. Null.
Многопоточность. Потоки, асинхронные вычисления
Работа с файловой системой и файлами.
Типы файлов: CSV, XML, JSON.
Регулярные выражения
Лабораторные работы
Организация и использование функций.
Исключения. NULL.
Асинхронные вычисления.
Работа с файлами
Типы файлов, сериализация.
Регулярные выражения.
Тема 6. Основные принципы объектно-ориентированного программирования
История развития ООП. Базовые понятия: объект, его свойства и методы, класс, интерфейс. Основные принципы ООП: инкапсуляция, наследование, полиморфизм.
Ещё раз про классы. Интерфейсы.
LINQ
Шаблоны проектирования.
Лабораторные работы
ООП. Основы.
ООП. Основы (CSV)
ООП. Основы (JSON)
ООП. Наследование.
ООП. Интерфейсы.
Тема 7. Библиотеки классов.
Библиотеки классов. Создание. Подключение. Динамическая загрузка сборок и позднее связывание.
Лабораторные работы
Создание библиотеки классов
Тема 8. Оконные приложения.
Обзор типов оконных приложений в C#. Знакомство со структурой проекта WPF/Avalonia. Компоновка. Image. Ресурсы.
Ресурсы
Привязка (Binding). Интерфейс INotifyPropertyChanged. Форматирование значений привязки и конвертеры значений.
Элементы управления. Обзор.
Каркас приложения. Модель данных. Привязка данных. Табличный вывод.
Фильтрация данных
Поиск, сортировка
Вывод данных согласно макета (ListBox, Image)
Стили, триггеры и темы
Создание окон. Модальные окна
Создание WPF-приложений по индивидуальным заданиям (подготовка к экзамену)
Лабораторные работы
Создание WPF-приложения, знакомство с вариантами компоновки.
Исследование визуальных компонентов WPF.
Каркас приложения. Модель данных. Привязка данных.
Получение данных из внешних источников. CSV.
Получение данных из внешних источников. JSON.
Фильтрация списка
Поиск/сортировка
Создание WPF-приложений по индивидуальным заданиям (подготовка к экзамену)
ЭКЗАМЕН
<!--