Программирование на языке высокого уровня
Объектно-ориентированное программирование — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования.
Объектно-ориентированное программирование — так называют любой тип программирования, в котором используются понятия высокого уровня и, в отличие от Assembler, в котором не работают напрямую с ячейками памяти ПК.
Объектно-ориентированное программирование — просто красивое понятие. Если вдуматься, оно не несет дополнительной смысловой нагрузки, просто программисты любят аббревиатуры, так области их знаний выглядят сложнее.
Очень одинокий программист
Question 2
Что такое класс в Java?
Уровень сложности программы. Все операторы делятся на классы в зависимости от сложности их использования.
Разработка программных модулей
разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт среднего профессионального образования по специальности 09.02.07 Информационные системы и программирование (приказ Минобрнауки России от 09.12.2016 г. № 1547)
составлена на основании учебного плана:
Информационные системы и программирование
утвержденного учёным советом вуза от 26.06.2023 протокол № 4.
Рабочая программа одобрена на заседании Совета колледжа
Протокол от 28.02.2023 г. № 5
Срок действия программы: 20232024 уч. г.
Заведующий отделением
Глубокова Л.Г.
1. Цели освоения дисциплины
| 1.1. | формировать умение разрабатывать как отдельные программные модули, так и целостную программную систему |
|---|
2. Место дисциплины в структуре ППСЗ
| Цикл (раздел) ППСЗ: МДК.01 |
3. Компетенции обучающегося, формируемые в результате освоения дисциплины
| ОК 02. | Использовать современные средства поиска, анализа и интерпретации информации и информационные технологии для выполнения задач профессиональной деятельности; |
| ОК 04. | Эффективно взаимодействовать и работать в коллективе и команде; |
| ОК 09. | Пользоваться профессиональной документацией на государственном и иностранном языках. |
| ПК 1.1. | Формировать алгоритмы разработки программных модулей в соответствии с техническим заданием. |
| ПК 1.2. | Разрабатывать программные модули в соответствии с техническим заданием. |
| В результате освоения дисциплины обучающийся должен | |
| 3.1. | Знать: |
|---|---|
| 3.1.1. | основные этапы разработки программного обеспечения; основные принципы технологии структурного и объектно-ориентированного программирования; способы оптимизации и приемы рефакторинга; основные принципы отладки и тестирования программных продуктов |
| 3.2. | Уметь: |
| 3.2.1. | осуществлять разработку кода программного модуля на языках низкого и высокого уровней; создавать программу по разработанному алгоритму как отдельный модуль; осуществлять разработку кода программного модуля на современных языках программирования; уметь выполнять оптимизацию и рефакторинг программного кода; оформлять документацию на программные средства |
| 3.3. | Иметь навыки и (или) опыт деятельности (владеть): |
| 3.3.1. | разработки кода программного продукта на основе готовой спецификации на уровне модуля; использования инструментальных средств на этапе отладки программного продукта; |
4. Структура и содержание дисциплины
| Код занятия | Наименование разделов и тем | Вид занятия | Семестр | Часов | Компетенции | Литература |
|---|---|---|---|---|---|---|
| Раздел 1. Жизненный цикл ПО | ||||||
| 1.1. | Понятие ЖЦ ПО. Этапы ЖЦ ПО | Лекции | 2 | 1 | ОК 04., ОК 09. | Л1.2, Л2.1, Л2.2 |
| Раздел 2. Структурное программирование | ||||||
| 2.1. | Технология структурного программирования. | Лекции | 2 | 1 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.2. | Инструментальные средства оформления и документирования алгоритмов программ | Лекции | 2 | 1 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.3. | Оценка сложности алгоритма: классификация, классы алгоритмов, неразрешимые задачи | Лекции | 2 | 1 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.4. | Оценка сложности алгоритмов сортировки | Лабораторные | 2 | 2 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.5. | Оценка сложности алгоритмов поиска | Лабораторные | 2 | 2 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.6. | Оценка сложности рекурсивных алгоритмов | Лабораторные | 2 | 2 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.7. | Оценка сложности эвристических алгоритмов | Лабораторные | 2 | 2 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 2.8. | Структурное программирование | Сам. работа | 2 | 8 | ОК 02., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 3. Объектно-ориентированное программирование | ||||||
| 3.1. | Основные принципы объектно-ориентированного программирования. Классы: основные понятия | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.2. | Перегрузка методов | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.3. | Операции класса | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.4. | Иерархия классов | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.5. | Синтаксис интерфейсов | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.6. | Интерфейсы и наследование | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.7. | Структуры | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.8. | Делегаты | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.9. | Регулярные выражения | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.10. | Коллекции. Параметризованные классы | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.11. | Указатели | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.12. | Операции со списками | Лекции | 2 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.13. | Работа с классами. Перегрузка методов. Определение операций в классе. Создание наследованных классов | Лабораторные | 2 | 6 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.14. | Работа с объектами через интерфейсы. Использование стандартных интерфейсов | Лабораторные | 2 | 6 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.15. | Работа с типом данных структура. Коллекции. Параметризованные классы | Лабораторные | 2 | 4 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.16. | Использование регулярных выражений | Лабораторные | 2 | 6 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.17. | Операции со списками | Лабораторные | 2 | 6 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 3.18. | Объектно-ориентированное программирование | Сам. работа | 2 | 8 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 4. Паттерны проектирования | ||||||
| 4.1. | Назначение и виды паттернов | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 4.2. | Основные шаблоны. Порождающие шаблоны. | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 4.3. | Структурные шаблоны. Поведенческие шаблоны | Лекции | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 4.4. | Использование основных шаблонов. Использование порождающих шаблонов. Использование структурных шаблонов. Использование поведенческих шаблонов | Лабораторные | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 5. Событийно-управляемое программирование | ||||||
| 5.1. | Событийно-управляемое программирование | Лекции | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.2. | Элементы управления. Диалоговые окна. Обработчики событий. | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.3. | Введение в графику | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.4. | Разработка приложения с использованием текстовых компонентов | Лабораторные | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.5. | Разработка приложения с несколькими формами | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.6. | Разработка приложения с не визуальными компонентами | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.7. | Разработка игрового приложения | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.8. | Разработка приложения с анимацией | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.9. | Разработка приложения с использованием текстовых компонентов | Консультации | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 5.10. | Событийно-управляемое программирование | Сам. работа | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 6. Оптимизация и рефакторинг кода | ||||||
| 6.1. | Методы оптимизации программного кода | Лекции | 3 | 1 | ОК 02., ОК 04., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 6.2. | Цели и методы рефакторинга | Лекции | 3 | 1 | ОК 02., ОК 04., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 6.3. | Оптимизация и рефакторинг кода | Лабораторные | 3 | 2 | ОК 02., ОК 04., ПК 1.1. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 7. Разработка пользовательского интерфейса | ||||||
| 7.1. | Правила разработки интерфейсов пользователя | Лекции | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 7.2. | Разработка интерфейса пользователя | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| 7.3. | Разработка пользовательского интерфейса | Сам. работа | 3 | 4 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л1.2, Л2.1, Л2.2 |
| Раздел 8. Основы ADO.Net | ||||||
| 8.1. | Работа с базами данных | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.2. | Доступ к данным | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.3. | Создание таблицы, работа с записями | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.4. | Способы создания команд | Лекции | 3 | 1 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.5. | Создание приложения с БД | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.6. | Создание запросов к БД | Лабораторные | 3 | 2 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
| 8.7. | Основы ADO.Net | Сам. работа | 3 | 4 | ОК 02., ОК 04., ОК 09., ПК 1.1., ПК 1.2. | Л1.1, Л2.1, Л2.2 |
5. Фонд оценочных средств
| 5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины |
| Оценочные материалы для текущего контроля (лабораторные работы, индивидуальное задание, тесты) размещены в онлайн-курсе на образовательном портале https://portal.edu.asu.ru/course/view.php?id=9802 |
Контрольные вопросы и задания для проведения промежуточной аттестации в форме дифференцированного зачета по итогам освоения дисциплины
Тестовые задания:
1. Какое утверждение относительно java.util.Random корректно:
а) void nextBytes(byte[] arr) — заполняет массив arr нулями
б) последовательный запуск приложения, генерирующего последовательность псевдослучайных чисел, никогда не вернет одинаковых последовательностей
в) используется для получения последовательности псевдослучайных чисел
2. Какое утверждение относительно java.util.Random корректно:
а) double nextGaussian()— возвращает случайное число в диапазоне от 0.0 до 1.0 распределенное по нормальному закону
б) void nextBytes(byte[] arr) — заполняет массив arr нулями
в) последовательный запуск приложения, генерирующего последовательность псевдослучайных чисел, никогда не вернет одинаковых последовательностей
3. Сколько объектов порождается при инициализации массива new int[3][]:
а) 1
б) 3
в) 2
4. Какое утверждение относительно класса String верно:
а) является абстрактным
б) содержит только статические методы
в) обладает свойством неизменяемости
5. Какое значение может принимать переменная булева типа:
а) true
б) 0
в) 1
6. Вы создали класс Animal в пакете ru.animal. Где будет хранится исходный код класса в файловой системе:
а) ru\animal\Animal.class
б) ru\Animal.java
в) ru\animal\Animal.java
7. Может ли массив основываться на абстрактных классах
а) нет
б) да
8. Что такое приоритет потока:
а) качественная характеристика, обеспечивающая распределение процессорного времени между потоками: чем выше приоритет, тем в среднем чаще будет выделяться процессорное время для такого потока
б) процессор сначала выполняет все задачи с более высоким приоритетом, затем – с менее высоким
в) порядковый номер потока в очереди на исполнение
9. Какая кодировка используется классом OutputStreamWriter по умолчанию:
а) UTF-8 независимо от системы, где запущена Java-машина
б) UTF-16 независимо от системы, где запущена Java-машина
в) используемая кодировка зависит от системы, где запущена Java-машина
10. Какое утверждение относительно методов класса верно:
а) идентификатор метода при объявлении становится составным именем метода
б) к методу, объявленному с модификаторами public final, нельзя обратиться из класса-наследника
в) метод, объявленный с модификатором final, не может быть переопределен в классе-наследнике
11. Каким образом на однопроцессорной машине исполняются многопоточные приложения:
а) количество процессоров для многопоточной архитектуры не имеет значения
б) рабочее время процессора разбивается на небольшие интервалы, в течение которых выполняется одна задача, после чего происходит переключение на следующую задачу
в) на однопроцессорном компьютере многопоточные приложения не исполняются
12. Какой из перечисленных ниже классов имеет наибольшее сходство с классом Vector:
а) ArrayList
б) LinkedList
в) AbstractCollection
13. Какой класс соответствует классу CharArrayReader, но работает только с байтовыми данными:
а) FilterInputStream
б) BufferedInputStream
в) ByteArrayInputStream
14. Какой метод нужно переопределить, чтобы реализовать отрисовку внешнего вида компонента:
а) paint
б) repaint
в) show
15. От какого класса наследуются InputStream иOutputStream:
а) AbstractStream
б) Object
в) IOWriter
Правильные ответы:
1 в
2 а
3 а
4 в
5 а
6 в
7 б
8 а
9 в
10 в
11 б
12 а
13 в
14 а
15 б
Критерии оценивания:
Каждое задание оценивается 1 баллом. Оценивание КИМ в целом:
85-100 баллов (оценка «отлично») — 85-100% правильных ответов
70-84 баллов (оценка «хорошо») — 70-84% правильных ответов
50-69 баллов (оценка «удовлетворительно») — 50-69% правильных ответов
0-49 баллов (оценка «неудовлетворительно») — 0-49% правильных ответов
Контрольные вопросы и задания для проведения промежуточной аттестации в форме экзамена по итогам освоения дисциплины
Тестовые задания
1. Что такое класс в Java
а) Уровень сложности программы. Все операторы делятся на классы в зависимости от сложности их использования.
б) Базовый элемент объектно-ориентированного программирования в языке Java.
в) Одно из возможных названий переменной.
г) Такое понятие есть только в C++, в Java такого понятия нет.
2. Как объявить класс в коде?
а) class MyClass <>
б) new class MyClass <>
в) select * from class MyClass <>
г) MyClass extends class <>
3. Что будет выведено в результате выполнения кода:
int a=5;
int b=a+5;
if (a>b) System.out.println(«a>b»);
>
else if (a >
else System.out.println(«a=b»);
>
а) a>b
б) aв) a=b
4. Для чего используется оператор NEW?
а) Для создания новой переменной.
б) Для объявления нового класса.
в) Для создания экземпляра класса.
г) Это команда, противоположность оператору OLD.
5. Что означает ключевое слово extends?
а) Что данный класс наследуется от другого.
б) Что это дополнительный модуль класса, который расширяет его свойства.
в) Что два класса делают одно и то же.
г) Что это самый большой класс в программе.
6. Что означает перегрузка метода в Java (overload).
а) Изменение поведения метода класса относительно родительского.
б) Изменение поведения метода класса относительно дочернего.
в) Несколько методов с одинаковым названием, но разным набором параметров.
г) Несколько разных классов с одинаковым методом.
7. Что означает переопределение метода в Java (override).
а) Изменение поведения метода класса относительно родительского.
б) Изменение поведения метода класса относительно дочернего.
в) Несколько методов с одинаковым названием, но разным набором параметров.
г) Несколько разных классов с одинаковым методом.
8. Чем отличаются static-метод класса от обычного метода класса.
а) Поведение обычного метода класса можно изменить в классе-наследнике, а поведение static-метода нельзя.
б) Обычный метод класса можно переопределить, а static-метод нельзя.
в) Обычный метод класса работает от объекта класса, а static-метод от всего класса.
г) Static-метод класса можно вызывать только внутри класса, а обычный — в любой части кода.
9. Как вызвать static-метод внутри обычного?
а) Никак, static-метод можно вызвать только от объекта класса.
б) Можно, надо перед этим перегрузить обычный метод класса.
в) Можно, надо перед этим переопределить обычный метод класса.
г) Можно, ничего дополнительно делать не надо.
10. Как вызвать обычный метод класса внутри static-метода?
а) Никак, static-метод не работает с объектом класса.
б) Можно, надо перед этим перегрузить обычный метод класса.
в) Можно, надо перед этим переопределить обычный метод класса.
г) Можно, ничего дополнительно делать не надо.
11. Для чего необходимо ключевое слово this
а) Это указатель на переопределенный метод класса. Его нельзя опускать при вызове, иначе переопределение не сработает.
б) Это указатель на текущий объект класса внутри самого класса. Его можно опускать при вызове метода класса, но лучше этого не делать.
в) Это не ключевое слово.
г) Это ключевое слово для вызова обычного метода внутри static-метода. Его нельзя опускать, иначе вызов не сработает и будет ошибка.
12. Что вернет метод, объявленный следующим образом:
public static int getAmount()
а) Не ясно, надо смотреть код метода.
б) Вернет static-поле класса.
в) Вернет ссылку на объект класса this.
г) Вернет целочисленное значение.
13. Что представляет ключевое слово super?
а) Текущий экземпляр класса
б) Текущий экземпляр родительского класса
в) Наследованный класс
14. Как обозначается побитовое логическое отрицание?
а) ~
б) !
в) —
15. Какое ключевое слово не используется для работы с исключениями?
а) finally
б) switch
в) throws
16. Почему нельзя наследовать от класса string?
а) Он не имеет тела
б) Он не является классом
в) Он объявлен как final
17. Как называется процесс сохранения состояния объекта в последовательность байт?
а) Байтизация
б) Десериализация
в) Сериализация
18. Каким методом можно перевернуть строку?
а) string.reverse();
б) stringBuilder.reverse();
в) string.return();
19. Какая аннотация используется при переопределении метода?
а) Override
б) @Redefine
в) @Override
20. Может ли файл содержать более одного класса Java?
а. Да, но только если один внешний класс имеет модификатор доступа public
б. Да, если все внешние классы будут иметь модификатор доступа private
в. Нет
Процедура проведения предполагает два блока оценивания:
1) блок на выявление практических навыков (проводится очно, на занятиях в течении учебного года). Представляет собой текущий рейтинг студента Rтек.
2) блок на проверку общих знаний, связанных с проверкой теоретического материала (итоговый тест). Выполняется студентом который претендует на более высокую оценку по сравнению с рекомендованной ему в качестве «автомата» за текущую успеваемость по дисциплине. Представляет собой зачетный рейтинг Rзач.
Критерии оценивания:
1) за выполнение первого блока заданий, студент может получить максимум 100 баллов. Оценка за второй блок, представляет собой индивидуальную рейтинговую оценку студента по дисциплине (Rтек). Текущий рейтинг студента Rтек, вычисленное перед началом сессии, называется семестровым рейтингом студента и обозначается в технологической карте по дисциплине Rсем. Экзаменационная оценка «автоматом» выставляется студенту при достижении им Rсем рейтинга 50 баллов и более.
2) за выполнение второго блока, представляющего собой тест множественного выбора, состоящий из 15 вопросов, студент может получить максимум 15 первичных баллов (по 1 баллу за каждый правильный ответ). В тест включены вопросы с выбором одного варианта ответа. В вопросах с выбором одного ответа студент либо выбирает правильный ответ и получает 1 балл, либо выбирает не правильный ответ и получает 0 баллов. Всего в банке более 200 тестовых заданий. На выполнение теста отводится 25 минут. При прохождении теста, студент может пропустить вопросы в случае возникновения трудностей. И вернуться в оставшееся время.
Максимально за тест можно получить 100 баллов, согласно шкале перевода:
85-100 баллов (оценка «отлично») — 85-100% правильных ответов
70-84 баллов (оценка «хорошо») — 70-84% правильных ответов
50-69 баллов (оценка «удовлетворительно») — 50-69% правильных ответов
0-49 баллов (оценка «неудовлетворительно») — 0-49% правильных ответов
Итоговый рейтинг складывается из выполнения 1-го и 2-го блоков заданий. Правило вычисления итогового рейтинга Rитог = Rсем + 0,3 ·Rзач
Общая суммарная оценка за весь курс составляет максимум 100 баллов.
Таким образом, баллы, начисленные студенту за выполнение Блока 1 и Блока 2 пересчитываются преподавателем по схеме:
5 (отлично) 85-100
4 (хорошо) 70-84
3 (удовлетворительно) 50-69
2 (неудовлетворительно) 0-49
Приложение 1. ФОС_Разработка программных модулей 2021.docx
Приложение 2. Контроль Разработка программных модулей.docx
6. Учебно-методическое и информационное обеспечение дисциплины
| 6.1. Рекомендуемая литература | ||||
| 6.1.1. Основная литература | ||||
| Авторы | Заглавие | Издательство, год | Эл. адрес | |
| Л1.1 | Казанский А.А. | Программирование на Visual C#: Учебное пособие для СПО | М.:Издательство Юрайт, 2023 | https://urait.ru/bcode/513400 |
| Л1.2 | Гниденко И.Г., Павлов Ф.Ф., Федоров Д.Ю. | Технология разработки программного обеспечения: Учебное пособие для СПО | М.:Издательство Юрайт, 2022 | https://urait.ru/bcode/492496 |
| 6.1.2. Дополнительная литература | ||||
| Авторы | Заглавие | Издательство, год | Эл. адрес | |
| Л2.1 | Подбельский В. В. | Программирование. Базовый курс С#: Учебник для СПО | Москва : Издательство Юрайт, 2023 | https://urait.ru/bcode/517893 |
| Л2.2 | Кудрина Е. В., Огнева М. В. | Основы алгоритмизации и программирования на языке C#: Учебное пособие для СПО | Москва : Издательство Юрайт, 2022 | https://urait.ru/bcode/494914 |
| 6.2. Перечень ресурсов информационно-телекоммуникационной сети «Интернет» | ||||
| Название | Эл. адрес | |||
| Э1 | Курс в СДО moodle «Разработка программных модулей» | https://portal.edu.asu.ru/course/view.php?id=7437 | ||
| 6.3. Перечень программного обеспечения | ||||
| ОС Windows Приложения MS Office 7-Zip, AcrobatReader | ||||
7. Материально-техническое обеспечение дисциплины
8. Методические указания для обучающихся по освоению дисциплины
При изучении дисциплины используются следующие виды учебных занятий:
1. Лекции, на которых рассматриваются основные теоретические вопросы данного междисциплинарного курса. Материалы лекций можно изучить, обратившись к списку основной и дополнительной литературы. Посещаемость лекций входит в балльную оценку по междисциплинарному курсу и контролируется преподавателем.
В ходе лекционных занятий обязательно конспектирование учебного материала. При этом стоит обращать внимание на категории, формулировки, раскрывающие содержание тех или иных явлений и процессов, научные выводы и практические рекомендации. Желательно оставить в рабочих конспектах поля, на которых делать пометки из рекомендованной литературы, дополняющие материал прослушанной лекции, а также подчеркивающие особую важность тех или иных теоретических положений. Задавать преподавателю уточняющие вопросы с целью уяснения теоретических положений, разрешения спорных ситуаций. Дорабатывать свой конспект лекции, делая в нем соответствующие записи из литературы, рекомендованной преподавателем и предусмотренной учебной программой — в ходе подготовки к семинарам изучить основную литературу, ознакомиться с дополнительной литературой, новыми публикациями в периодических изданиях: журналах, газетах и т.д.
Конспекты лекций контролируется преподавателем
2. Лабораторные работы предполагают выполнение предложенных заданий письменно или в электронном виде, в зависимости от типа задания.
В каждом задании указывается форма его выполнения и способ предоставления на оценку.
При подготовке лабораторным занятиям следует:
— использовать рекомендованные преподавателями учебники и учебные пособия
— для закрепления теоретического материала;
— изучить лекционный материал по данной теме;
— разобрать, совместно с другими студентами, обсудить вопросы по теме занятия;
— уточнить особенности оформления заданий и предоставления их на оценку, если представленных на образовательном портале комментариев недостаточно.
Необходимо помнить, что на лекции обычно рассматривается не весь материал, а только его часть. Остальная его часть восполняется в процессе самостоятельной работы. В связи с этим работа с рекомендованной литературой обязательна. Особое внимание при этом необходимо обратить на содержание основных положений и выводов, объяснение явлений и фактов, уяснение практического приложения рассматриваемых теоретических вопросов. В процессе этой работы студент должен стремиться понять и запомнить основные положения рассматриваемого материала, примеры, поясняющие его, а также разобраться в иллюстративном материале. Заканчивать подготовку следует составлением плана (конспекта) по изучаемому материалу (вопросу). Это позволяет составить концентрированное, сжатое представление по изучаемым вопросам.
В процессе подготовки к занятиям рекомендуется взаимное обсуждение материала, во время которого закрепляются знания, а также приобретается практика в изложении и разъяснении полученных знаний, развивается речь. При необходимости следует обращаться за консультацией к преподавателю. Идя на консультацию, необходимо хорошо продумать вопросы, которые требуют разъяснения.
Лабораторные работы также входят в балльную оценку по междисциплинарному курсу и контролируются преподавателем.
3.Самостоятельная работа студента является основным средством овладения учебным материалом во время, свободное от обязательных учебных занятий. Самостоятельная работа студента над усвоением учебного материала может выполняться в библиотеке, учебных кабинетах, компьютерных классах, а также в домашних условиях.
Учебный материал самостоятельной работы выносится на итоговый контроль наряду с учебным материалом, который разрабатывался при проведении учебных занятий. Содержание самостоятельной работы студента определяется учебной программой, методическими материалами, заданиями и указаниями преподавателя. Самостоятельная работа студентов осуществляется в аудиторной и внеаудиторной формах.
Выберите все верные утверждения
1) Если в базовом классе виртуальная функция определена как private, то в производном классе её можно переопределить как public.
2) У интерфейсов нет таблиц виртуальных методов.
3) Если в базовом классе виртуальная функция определена как public, то в производном классе её можно переопределить как private.
4) Производные классы не видят private-предков своего базового класса.
5) Производные классы не могут переопределять private-виртуальные методы базового класса, если они унаследованы от базового класса с модификатором private.
6) Производные классы не видят protected-предков своего (непосредственного) базового класса, если они унаследованы от базового класса с модификатором private.
7) Чистый виртуальный метод с определением — это не то же самое, что обычный виртуальный метод.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Выберите все верные утверждения из списка
1.Если в коде C++ вы вызываете необъявленную функцию, то это ошибка этапа компиляции. 2.Если в.

Отметьте все верные утверждения относительно вызова функции foo
Есть три версии функции foo: void foo(char) < std::cout << "char" << std::endl; >void.

Указать верные утверждения в тесте по основам c++
Не могу понять, где ошибаюсь в тесте, нужно отметить только верное: 1) Синтаксис программы на C++.
![]()
![]()
11173 / 6118 / 1675
Регистрация: 18.10.2014
Сообщений: 15,410
1 — верно.
2 — в С++ нет четко определенного понятия «интерфейс». Понятие «таблица виртуальных методов» в С++ тоже отсутствует — это деталь реализации. Поэтому где и когда она есть и где и когда ее нет — зависит от компилятора.
3 — верно.
4 — «Не видят»? Что имеется в виду? Формально — все всех видят. В языке С++ спецификаторы прав доступа не влияют не видимость, они влияют лишь на права доступа.
5 — не верно.
6 — не верно. И опять, та же оговорка, что в 4.
7 — верно. Это не то же самое.
Тест на тему: «Java»
Перед вами вопросы теста, правильный ответ только 1. Время на прохождение теста не ограничено, правильные ответы будут отображаться после нажатия на кнопку результатов (внизу).
ИнформатикаПрочее 18.12.2021 0 488
Авторизуйтесь, чтобы отобразить ваше имя в таблице с результатами
Войти через Google
Войти через VK
Результаты авторизованых пользователей
| Пользователь | Дата | Результат |
|---|
Готовишься к тестам?
Мы — биржа профессиональных репетиторов. Мы поможем тебе пройти тест без единой ошибки.
#1. Какой из следующих адресов относится к подсети класса B
B. 140.150.160.1
B. 140.150.160.1
C. 194.80.20.1
C. 194.80.20.1
#2. Одно из ключевых слов языка Java
#3. Какой метод нужно переопределить, чтобы реализовать отрисовку внешнего вида компонента
#4. Какой из перечисленных ниже классов имеет наибольшее сходство с классомVector
A. ArrayList
A. ArrayList
B. LinkedList
B. LinkedList
C. AbstractCollection
C. AbstractCollection
#5. Какое утверждение относительно класса java.lang.Object верно
A. у этого класса нет полей
A. у этого класса нет полей
B. нельзя явно переопределять методы этого класса
B. нельзя явно переопределять методы этого класса
C. нельзя явно наследовать этот класс
C. нельзя явно наследовать этот класс
#6. Какое утверждение относительно модуля компиляции верно
A. import-выражения необязательны
A. import-выражения необязательны
B. в модуле компиляции может быть больше одного объявления пакета
B. в модуле компиляции может быть больше одного объявления пакета
C. хранится в текстовом .class-файле
C. хранится в текстовом .class-файле
#7. Какое утверждение относительно методов класса верно
A. к методу, объявленному с модификаторами public final, нельзя обратиться из класса-наследника
A. к методу, объявленному с модификаторами public final, нельзя обратиться из класса-наследника
B. метод, объявленный с модификатором native, должен быть написан на другом языке программирования
B. метод, объявленный с модификатором native, должен быть написан на другом языке программирования
C. методы не могут иметь модификатор доступа default
C. методы не могут иметь модификатор доступа default
#8. Каким образом на однопроцессорной машине исполняются многопоточные приложения
A. количество процессоров для многопоточной архитектуры не имеет значения
A. количество процессоров для многопоточной архитектуры не имеет значения
B. рабочее время процессора разбивается на небольшие интервалы, в течение которых выполняется одна задача, после чего происходит переключение на следующую задачу
B. рабочее время процессора разбивается на небольшие интервалы, в течение которых выполняется одна задача, после чего происходит переключение на следующую задачу
