Современные языки программирования
内容描述: Курс нацелен на формирование у студентов уверенных навыков программирования, позволяющих им успешно работать в различных областях IT
贷款数: 5
Пререквизиты:
- Алгоритмизация и программирование
*СomplexityDiscipline(zh-CN)*:
*TypesOfClasses(zh-CN)* | *hours(zh-CN)* |
---|---|
*Lectures(zh-CN)* | 15 |
*PracticalWork(zh-CN)* | |
*LaboratoryWork(zh-CN)* | 30 |
*srop(zh-CN)* | 30 |
*sro(zh-CN)* | 75 |
*FormOfFinalControl(zh-CN)* | экзамен |
*FinalAssessment(zh-CN)* | Устный экзамен по билетам |
零件: Компонент по выбору
循环次数: Базовые дисциплины
Цель
- Цель курса заключается в том, чтобы предоставить магистрантам фундаментальные знания и навыки, необходимые для освоения популярных языков программирования
Задача
- Обучить студентов базовым принципам программирования, включая синтаксис, семантику и структуру языков, чтобы они могли писать простые программы и решать базовые задачи
- Научить студентов проектировать и реализовывать программные решения, используя принципы объектно-ориентированного программирования и структурного дизайна
- Ознакомить студентов с современными инструментами и технологиями, такими как базы данных, сетевое программирование и веб-разработка, для создания полноценного программного продукта
- Подготовить студентов к работе в команде, обучая их методам совместной разработки, тестирования и поддержки программного обеспечения, а также принципам управления проектами
Результат обучения: знание и понимание
- Понимать основные принципы программирования, включая синтаксис, семантику и структуру языков программирования
- Знать основные структуры данных (массивы, списки, множества, словари) и алгоритмы (поиск, сортировка) и их применение в решении задач
- Понимать концепции ООП, такие как классы, объекты, наследование и полиморфизм, и уметь объяснять их значение и применение
Результат обучения: применение знаний и пониманий
- Уметь применять свои знания для разработки и реализации программных приложений, используя выбранные языки программирования
- Уметь интегрировать и использовать сторонние библиотеки и фреймворки для ускорения разработки, включая работу с инструментами для веб-разработки, обработки данных и машинного обучения
- Уметь применять методы тестирования и отладки кода для выявления и исправления ошибок, а также обеспечивать надежность и стабильность своих программных решений. Это включает написание тестов и использование отладчиков для анализа поведения программы
Результат обучения: формирование суждений
- Уметь анализировать и оценивать различные алгоритмы и структуры данных с точки зрения их времени выполнения и использования памяти, делая обоснованные выводы о выборе наиболее оптимального решения для конкретной задачи
- Уметь анализировать и оценивать различные алгоритмы и структуры данных с точки зрения их времени выполнения и использования памяти, делая обоснованные выводы о выборе наиболее оптимального решения для конкретной задачи
- Уметь критически оценивать качество написанного кода, его читабельность, модульность и безопасность, предлагая способы улучшения и оптимизации, а также соблюдая лучшие практики разработки
Результат обучения: коммуникативные способности
- Уметь четко и убедительно представлять свои проекты и идеи как устно, так и письменно, используя соответствующую техническую терминологию и визуальные средства
- Развить навыки работы в команде, включая активное слушание, конструктивную критику и способность к сотрудничеству для достижения общих целей в разработке программного обеспечения
- Уметь создавать качественную документацию для своего кода и проектов, обеспечивая доступность информации для других разработчиков и пользователей. Это включает написание комментариев, инструкций по использованию и технических спецификаций
Результат обучения: навыки обучения или способности к учебе
- Развить способность самостоятельно изучать и осваивать новые языки программирования, фреймворки и инструменты, используя различные ресурсы, такие как документация, онлайн-курсы и сообщества разработчиков
- Уметь критически анализировать и оценивать информацию, полученную из различных источников, и применять ее для решения практических задач в программировании
- Развить навыки планирования своей учебной деятельности, устанавливая реалистичные цели, распределяя время для изучения и выполнения заданий, что позволит им эффективно осваивать материал и управлять проектами
*TeachingMethods(zh-CN)*
Обучение с использованием онлайн-платформ ВКТУ им.Д.Серикбаева
Практико-ориентированный подход
Применение современных систем программирования
*AssessmentKnowledge(zh-CN)*
Преподаватель проводит все виды работ текущего контроля и выводит соответствующую оценку текущей успеваемости обучающихся два раза в академический период. По результатам текущего контроля формируется рейтинг 1 и 2. Учебные достижения обучающегося оцениваются по 100-балльной шкале, итоговая оценка Р1 и Р2 выводится как средняя арифметическая из оценок текущей успеваемости. Оценка работы обучающегося в академическом периоде осуществляется преподавателем в соответствии с графиком сдачи заданий по дисциплине. Система контроля может сочетать письменные и устные, групповые и индивидуальные формы.
*Period2(zh-CN)* | *TypeOfTask(zh-CN)* | *Total(zh-CN)* |
---|---|---|
1 *Rating(zh-CN)* | Лабораторная работа 1 | 0-100 |
Лабораторная работа 2 | ||
Лабораторная работа 3 | ||
2 *Rating(zh-CN)* | Лабораторная работа 4 | 0-100 |
Лабораторная работа 5 | ||
Лабораторная работа 6 | ||
*TotalControl(zh-CN)* | экзамен | 0-100 |
*PolicyAssignmentTask(zh-CN)*
*TypeOfTask(zh-CN)* | 90-100 | 70-89 | 50-69 | 0-49 |
---|---|---|---|---|
Excellent | *Grade4(zh-CN)* | *Grade3(zh-CN)* | *Grade2(zh-CN)* | |
Выполнение лабораторных заданий | ||||
Промежуточные тесты или контрольные работы | ||||
Разработка и представление завершенного проекта |
*EvaluationForm(zh-CN)*
Итоговая оценка знаний обучающего по дисциплине осуществляется по 100 балльной системе и включает:
- 40% результата, полученного на экзамене;
- 60% результатов текущей успеваемости.
Формула подсчета итоговой оценки:
И= 0,6 | Р1+Р2 | +0,4Э |
2 |
где, Р1, Р2 – цифровые эквиваленты оценок первого, второго рейтингов соответственно; Э – цифровой эквивалент оценки на экзамене.
Итоговая буквенная оценка и ее цифровой эквивалент в баллах:
Буквенная система оценки учебных достижений обучающихся, соответствующая цифровому эквиваленту по четырехбалльной системе:
Оценка по буквенной системе | Цифровой эквивалент | Баллы (%-ное содержание) | Оценка по традиционной системе |
---|---|---|---|
A | 4.0 | 95-100 | Отлично |
A- | 3.67 | 90-94 | |
B+ | 3.33 | 85-89 | Хорошо |
B | 3.0 | 80-84 | |
B- | 2.67 | 75-79 | |
C+ | 2.33 | 70-74 | |
C | 2.0 | 65-69 | Удовлетворительно |
C- | 1.67 | 60-64 | |
D+ | 1.33 | 55-59 | |
D | 1.0 | 50-54 | |
FX | 0.5 | 25-49 | Неудовлетворительно |
F | 0 | 0-24 |
Темы лекционных занятий
- Введение в языки программирования: история, классификация и основные концепции
- Синтаксис и семантика языков программирования: основные элементы, правила и структура программ
- Типы данных и переменные: базовые и составные типы данных, объявление и инициализация переменных
- Управляющие структуры: условные операторы и циклы (if, switch, for, while)
- Функции и процедуры: объявление, параметры, возвращаемые значения и область видимости
- Структуры данных: массивы, списки, множества и словари; выбор подходящей структуры для задачи
- Объектно-ориентированное программирование: основные концепции (классы, объекты, наследование, полиморфизм)
- Исключения и обработка ошибок: механизм обработки исключений и его использование для повышения надежности кода
- Модули и библиотеки: организация кода, использование сторонних библиотек и создание собственных модулей
- Сетевое программирование: основы работы с сетями, клиент-серверная архитектура и создание простых сетевых приложений
- Основы параллельного и асинхронного программирования: потоки, процессы и асинхронные операции
- Тестирование и отладка кода: методы тестирования, использование отладчиков и написание тестов
- Работа с базами данных: основы работы с реляционными базами данных, SQL и ORM
- Разработка веб-приложений: основные принципы веб-разработки, фреймворки и клиент-серверное взаимодействие
- Будущее языков программирования: современные тренды, новые языки и технологии, перспективы развития
Основная литература
- Северенс, Ч. Введение в программирование на Python / Ч. Северенс. - 2-е изд., испр. - Москва : Национальный Открытый Университет «ИНТУИТ», 2018. - 231 с.: схем., ил.; [Электронный ресурс]. - URL: http://biblioclub.ru/index.php?page=book&id=429184
- Буйначев, С.К. Основы программирования на языке Python : учебное пособие / С.К. Буйначев, Н.Ю. Боклаг ; Министерство образования и науки Российской Федерации, Уральский федеральный университет имени первого Президента России Б. Н. Ельцина. -Екатеринбург : Издательство Уральского университета, 2020. - 92 с. : табл., ил. - Библиогр. в кн. - ISBN 978-5-7996-1198-9 ; [Электронный ресурс]. -URL: http://biblioclub.ru/index.php?page=book&id=275962
- Хахаев, И.А. Практикум по алгоритмизации и программированию на Python : курс / И.А. Хахаев. - 2-е изд., исправ. - Москва : Национальный Открытый Университет «ИНТУИТ», 2019. - 179 с. : ил. - Библиогр. в кн.; [Электронный ресурс]. -URL: http://biblioclub.ru/index.php?page=book&id=429256
Дополнительная литература
- Доусон М. Программируем на Python. – СПб.: Питер, 2014. – 416 с.
- Лутц М. Изучаем Python, 4-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2020. – 1280 с.
- Лутц М. Программирование на Python, том I, 4-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2018. – 992 с.
- Хахаев И.А. Практикум по алгоритмизации и программированию на Python. – М.: Альт Линукс, 2018. — 126 с.