Кроссплатформенное программирование
Описание: Дисциплина направлена на формирование фундамента понимания основ программирования на различных платформах. Дается базовое представление кроссплатформенного программного обеспечения, рассматриваются варианты кроссплатформенности на уровне компиляции и на уровне выполнения, дается обзор технологий.
Количество кредитов: 5
Пререквизиты:
- Алгоритмы, структуры данных и программирование
Трудоемкость дисциплины:
| Виды работ | часы |
|---|---|
| Лекции | 15 |
| Практические работы | |
| Лабораторные работы | 30 |
| СРОП | 30 |
| СРО | 75 |
| Форма итогового контроля | экзамен |
| Форма проведения итогового контроля |
Компонент: Компонент по выбору
Цикл: Профилирующие дисциплины
Цель
- Изучение современных технологий программирования для различных архитектур и платформ
Задача
- Сформировать системное базовое представление, первичные знания, умения и навыки по основам кроссплатформенного программирования
- Изучить этапы создания приложений в интегрированных средах разработки
Результат обучения: знание и понимание
- основные аспекты концепции кроссплатформенного программирования; основы объектно-ориентированного программирования; основы языка Java.
Результат обучения: применение знаний и пониманий
- разрабатывать простейшие программы для работы в различных операционных системах; создавать кроссплатформенные программы на уровне выполнения; создавать программы на кроссплатформенных интерпретируемых языках.
Результат обучения: формирование суждений
- формировать суждения в сфере кроссплаформенного программирования.
Результат обучения: коммуникативные способности
- Планировать работу в группе при разработке кроссплатформенных решений. Умение работать в группе при разработке одного приложения на различных языка, участниками группы. Развивать коммуникационные способности при разработке кроссплатформенных приложений.
Результат обучения: навыки обучения или способности к учебе
- работы с объектно-ориентированными языками программирования; навыками создания простейших кроссплатформенных приложений.
Методы преподавания
1. интерактивная лекция (применение следующих активных форм обучения: ведомая (управляемая) дискуссия или беседа; демонстрация слайдов или учебных фильмов; мозговой штурм; мотивационная речь); 2. информационно-коммуникационная (например, занятия в компьютерном классе с использованием различных операционных систем и профессиональных пакетов прикладных программ); 3. поисково-исследовательская (самостоятельная исследовательская деятельность студентов в процессе обучения).
Оценка знаний обучающегося
Преподаватель проводит все виды работ текущего контроля и выводит соответствующую оценку текущей успеваемости обучающихся два раза в академический период. По результатам текущего контроля формируется рейтинг 1 и 2. Учебные достижения обучающегося оцениваются по 100-балльной шкале, итоговая оценка Р1 и Р2 выводится как средняя арифметическая из оценок текущей успеваемости. Оценка работы обучающегося в академическом периоде осуществляется преподавателем в соответствии с графиком сдачи заданий по дисциплине. Система контроля может сочетать письменные и устные, групповые и индивидуальные формы.
| Период | Вид задания | Итого |
|---|---|---|
| 1 рейтинг | Основы Java. Базовый синтаксис Java. | 0-100 |
| Обработка ошибок, исключения, отладка. | ||
| Ввод-вывод, доступ к файловой системе. | ||
| Объекты, классы и пакеты в Java. | ||
| Рубежный контроль 1 | ||
| 2 рейтинг | Типы данных и алгоритмизация. | 0-100 |
| Многопоточность программирование. | ||
| Generics, коллекции. | ||
| Рубежный контроль 2 | ||
| Итоговый контроль | экзамен | 0-100 |
Политика оценивания результатов обучения по видам работ
| Вид задания | 90-100 | 70-89 | 50-69 | 0-49 |
|---|---|---|---|---|
| Отлично | Хорошо | Удовлетворительно | Неудовлетворительно |
Форма оценки
Итоговая оценка знаний обучающего по дисциплине осуществляется по 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 |
Темы лекционных занятий
- Вводная лекция: принципы Кроссплатформенного программирования, введение в язык программирования Java
- Основы языка программирования Java
- История развития
- Дефолтные методы
- Итерация в Java
- Работа с памятью
- Объектно-ориентированное программирование
- Модификаторы
- Зависимости класса
- Исключения
- Интерфейсы
- Абстрактные классы
- Сериализация
- Типы данных в Java
- Многопоточность в Java
Основная литература
- 3.1.1 Марк, Саммерфилд Qt. Профессиональное программирование. Разработка кроссплатформенных приложений на С++ / Саммерфилд Марк. - М.: Символ-плюс, 2011. - 1603 c. 3.1.2 Гарнаев, Андрей WEB-программирование на Java и JavaScript / Андрей Гарнаев , Сергей Гарнаев. - Москва: СПб. [и др.] : Питер, 2017. - 718 c. 3.1.3 Эккель, Брюс Философия Java / Брюс Эккель. - М.: Питер, 2016. - 809 c. 3.1.4 Савитч, Уолтер Язык Java. Курс программирования / Уолтер Савитч. - М.: Вильямс, 2015. - 928 c.
Дополнительная литература
- 3.2.1 Хабибуллин, Ильдар Самоучитель Java / Ильдар Хабибуллин. - М.: БХВПетербург, 2014. - 768 c. 3.2.2 Джошуа, Блох Java. Эффективное программирование / Блох Джошуа. - М.: ЛОРИ, 2014. - 292 c. 3.2.3 Машнин Т. С. Современные Java-технологии на практике. ? СПб.: БХВПетербург, 2010. 560 с. (Профессиональное программирование). - ISBN 978-5-9775-0561-1.