Programming workshop

Специальность / Speciality: 6-05-0533-06 Математика / Mathematics

Учебная дисциплина, модуль / Academic discipline, module: Практикум по программированию, модуль «Дополнительные виды обучения» / Programming practicum, module «Additional types of training»

 

Краткое содержание учебной дисциплины, модуля / Brief summary

Стиль программирования. Методы программирования: стихийное, декларативное, параллельное, функциональное, эвристическое.

Парадигмы программирования.

Императивные и декларативные языки программирования.

Динамические структуры данных. Списки, стеки, очереди, деревья.

Методы разработки алгоритмов. Алгоритмы типа «разделяй и властвуй». «Жадные» алгоритмы и алгоритмы на полный перебор. Поиск с возвратом и локальный поиск. Алгебраические, геометрические, стохастические фракталы.

Современные языки программирования. Синтаксис и семантика. Примеры правил синтаксиса современных языков программирования. Типизация языков программирования. Динамически и статически типизированные языки.

Programming style. Programming methods: spontaneous, declarative, parallel, functional, heuristic.

Programming paradigms.

Imperative and declarative programming languages.

Dynamic data structures. Lists, stacks, queues, trees.

Methods for developing algorithms. Divide and conquer algorithms. “Greedy” algorithms and brute-force algorithms. Backtracking and local search. Algebraic, geometric, stochastic fractals.

Modern programming languages. Syntax and semantics. Examples of syntax rules of modern programming languages. Typification of programming languages. Dynamically and statically typed languages.

Формируемые компетенции / The formed competences

Применять основные понятия информатики, базовые конструкции языков программирования, технологии объектно-ориентирован-ного программирования для реализации алгоритмических прикладных задач и разработки веб-проектов.

Apply the basic concepts of computer science, basic constructions of programming languages, object-oriented programming technologies to implement algorithmic applied problems and develop web projects.

Результаты обучения (знать, уметь, владеть) / Learning outcomes (know, can, be able)

В результате освоения учебной дисциплины студент должен:

знать:

•        типы и структуры данных, используемые в повседневной практике программирования;

•        алгоритмы решения наиболее распространенных классов задач;

•        основы технологий создания программного обеспечения;

•        современные информационные технологии;

уметь:

•        решать типовые задачи математики и информатики;

•        работать на современных вычислительных средствах;

•        применять современные информационные технологии и методы реализации решения прикладных задач;

владеть:

•        методами программирования задач в различных областях;

•        современными технологиями разработки программ.

As a result of mastering the academic discipline, the student must:

know:

• data types and structures used in everyday programming practice; • algorithms for solving the most common classes of problems; • basics of software creation technologies; • modern information technologies;

can:

• solve typical problems of mathematics and computer science;

• work on modern computing tools;

• apply modern information technologies and methods for solving applied problems;

be able to:

• methods of programming tasks in various areas;

• modern software development technologies.

Семестр изучения учебной дисциплины, модуля / Semester of study

3 семестр

3 semester

Пререквизиты / Prerequisites

Знания, полученные из курса «Методы программирования», элементы математического анализа, алгебры и теории чисел, аналитической геометрии.

Knowledge gained from the course “Programming Methods”, elements of mathematical analysis, algebra and number theory, analytical geometry.

Трудоемкость в зачетных единицах (кредитах) / Credit units

3 зачетные единицы.

3 credit units.

Количество аудиторных часов и часов самостоятельной работы / Academic hour of students’ class work,

hours of self-directed learning

Всего 52 часа, из них 34 аудиторных часа и 18 часов самостоятельной работы.

A total of 52 hours, of which 34 academic hours of students’ class work and 18 hours of self-directed learning.

Требования и формы текущей и промежуточной аттестации / Requirements and forms of current and interim certification

Опрос, контрольные работы, компьютерное тестирование в Moodle на портале edummf.bsu.by.

Зачет

Survey, verification works, computer testing in Moodle on the portal edummf.bsu.by.

End-of-term tests.

.