Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3012

.pdf
Скачиваний:
0
Добавлен:
21.11.2023
Размер:
319.69 Кб
Скачать

МИНОБРНАУКИ РОССИИ Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

А. Я Лахов

РАЗРАБОТКА В СРЕДЕ OPEN SOURCE

Учебно-методическое пособие

по подготовке к лекциям и семинарским занятиям (включая рекомендации обучающимся по организации самостоятельной работы) по дисциплине «Разработка в среде Open Source»

для обучающихся по направлению подготовки 09.03.02 Информационные системы и технологии, направленность (профиль) Информационные системы и технологии

Нижний Новгород

2022

1

МИНОБРНАУКИ РОССИИ Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

А. Я Лахов

РАЗРАБОТКА В СРЕДЕ OPEN SOURCE

Учебно-методическое пособие

по подготовке к лекциям и семинарским занятиям (включая рекомендации обучающимся по организации самостоятельной работы) по дисциплине «Разработка в среде Open Source»

для обучающихся по направлению подготовки 09.03.02 Информационные системы и технологии, направленность (профиль) Информационные системы и технологии

Нижний Новгород ННГАСУ

2022

2

УДК 681.3 (075)

Лахов, А. Я А. Разработка в среде Open Source: учебно-методическое пособие / А. Я. Лахов, Нижегородский государственный архитектурно-строительный университет. – Нижний Новгород : ННГАСУ, 2022. – 11 с. : ил. – Текст : электронный.

Даются тематика лекций, их краткое содержание, а также методическиерекомендации по самостоятельной работе обучающихся по дисциплине

«Разработка в среде Open Source». Указывается необходимая литература и источники, разъясняется последовательность их изучения, выделяются наиболее сложные вопросы и даются рекомендации по их изучению.

Предназначено для обучающихся в ННГАСУ по дисциплине «Виртуальные технологии» по направлению подготовки 09.03.02 Информационные системы и технологии, направленность (профиль) Информационные системы и технологии

А. Я. Лахов, 2022ННГАСУ. 2022.

3

Учебно-методическое пособие по подготовке к лекциям (включая рекомендации по организации самостоятельной работы) по дисциплине «Разработка в среде Open Source» предназначены для студентов третьего курса, обучающихся по направлению 09.03.02 Информационные системы и технологии, и содержат программу для проведения лекционных занятий, а также методические рекомендации по самостоятельной работе.

Цель учебно-методического пособия: помочь студентам при изучении учебной программы с использованием лекционных материалов и рекомендуемой учебно-методической литературы при формировании необходимых компетенций дисциплины «Разработка в среде Open Source».

Целями освоения дисциплины Разработка в среде Open Source являются ознакомление студентов с основами создания и использования программных продуктов с открытым кодом; предоставление первоначальных сведений об интегрированной среде разработки Eclipse: принципах построения, установке, пользовательском интерфейсе, возможностях; изучение методов и средств языка программирования Java (ознакомление с использованием классов - композицией и наследованием, ознакомление с полиморфизмом, с внутренними классами, ознакомление с использованием массивов и коллекций, ознакомление с решением задач сортировки и поиска информации).

В лекциях излагается общая характеристика вопросов тем, даются практические примеры применения стандартов, осуществляется групповая работа студентов и преподавателя. Главной целью лекций является привитие студентам интереса к изучаемому материалу, формирование мотивации к последующему самостоятельному анализу рассматриваемой проблематики. На лекциях студентам раскрываются наиболее сложные вопросы и теоретические положения, показывается их практическая значимость, даются рекомендации по углубленному самостоятельному изучению теории и практики.

На лекциях по дисциплине «Разработка в среде Open Source» широко используются активные формы проведения занятий. Такие формы организации образовательного процесса, способствуют разнообразному (индивидуальному, групповому, коллективному) изучению учебных вопросов (проблем), активному взаимодействию студентов и преподавателя, живому обмену мнениями между ними, нацеленному на выработку правильного понимания содержания изучаемой темы и способов ее практического использования.

Материал пропущенных лекций студент восстанавливает самостоятельно и по всем непонятным положениям и вопросам обращается за разъяснением к преподавателю.

Самостоятельная работа направлена на развитие компетенций дисциплины: ПК-1. Способность выполнять интеграцию программных модулей и

компонент; ПК-2. Способность выполнять работы по созданию (модификации) и

сопровождению информационных систем.

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

4

систематическая проработка лекций, основной и дополнительной литературы;

подготовка к зачету.

Содержание разделов дисциплины «Разработка в среде Open Source» представлено в таблице 1.

 

 

Таблица 1 Содержание разделов дисциплины

п

Наименование раздела учебной

Аудиторная работа, час.

Формы текущего контроля

 

 

успеваемости

 

 

/

дисциплины (модуля).

 

 

 

 

 

 

п

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тема занятия

Лекц.

Лаб.

Практ.

Лекц.

 

Лаб.

 

Практ.

 

 

Семин.

 

 

Семин.

 

 

 

 

 

 

 

 

 

 

1

2

3

4

5

6

 

7

 

8

 

 

 

 

 

 

 

 

 

 

 

 

СЕМЕСТР № 6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Использование классов.

2

2

 

устный

 

отчет по

 

 

 

 

Использование классов.

 

 

 

опрос

 

лаборат

 

 

 

 

Применение композиции и

 

 

 

 

 

орной

 

 

 

 

наследования.

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Полиморфизм. Полиморфизм.

2

2

 

устный

 

отчет по

 

 

 

 

Восходящее преобразование.

 

 

 

опрос

 

лаборат

 

 

 

 

Конструкторы и полиморфизм.

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Внутренние классы. Внутренние

2

2

 

устный

 

отчет по

 

 

 

 

классы. Создание внутренних

 

 

 

опрос

 

лаборат

 

 

 

 

классов. Конструкции this и new.

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Массивы. Массивы. Массив как

2

2

 

устный

 

отчет по

 

 

 

 

объект. Возврат массива.

 

 

 

опрос

 

лаборат

 

 

 

 

 

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Коллекции. Коллекции.

2

2

 

устный

 

отчет по

 

 

 

 

Типизированные контейнеры. List.

 

 

 

опрос

 

лаборат

 

 

 

 

Итераторы. LinkedList.

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Сортировка и поиск. Сортировка и

2

2

 

устный

 

отчет по

 

 

 

 

поиск. Сортировка методом

 

 

 

опрос

 

лаборат

 

 

 

 

пузырька. Бинарный поиск.

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Программное обеспечение Open

2

2

 

устный

 

отчет по

 

 

 

 

Source. Программное обеспечение

 

 

 

опрос

 

лаборат

 

 

 

 

Open Source

 

 

 

 

 

орной

 

 

 

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

1

Система контроля версий GitHub.

3

3

 

устный

отчет по

 

 

Система контроля версий GitHub.

 

 

 

опрос

лаборат

 

 

Open Source проекты.

 

 

 

 

орной

 

 

 

 

 

 

 

работе

 

 

 

 

 

 

 

 

 

ИТОГО:

17

17

0

 

 

 

 

 

 

 

 

 

 

 

Рекомендуется проработать конспект лекций, затем повторить теоретический материал, пользуясь рекомендованной основной и дополнительной литературой. Если после этого остаются вопросы, рекомендуется выписать их и обратиться к преподавателю на консультациях или через электронную информационно-образовательную среду ННГАСУ (i.nngasu.ru).

Примерная тематика расчетно-графических работ

Семестр № 6:

1.Создание Java приложения реализации сортировки методом пузырька и поиска методом последовательный поиск

2.Создание Java приложения реализации сортировки прямыми включениями и поиска методом индексно-последовательный поиск

4.Создание Java приложения реализации сортировки прямым выбором и поиска методом бинарный поиск

5.Создание Java приложения реализации Шейкер-сортировки и поиска методом последовательный поиск

6.Создание Java приложения реализации сортировки включениями с убывающими приращениями (сортировка Шелла) и поиска методом индекснопоследовательный поиск

7.Создание Java приложения реализации сортировки с помощью дерева и поиска методом бинарного поиска

8.Создание Java приложения реализации пирамидальной сортировки и поиска методом последовательный поиск

9.Создание Java приложения реализации быстрой сортировки и поиска методом индексно-последовательный поиск

10.Создание Java приложения реализации сортировки слиянием и поиска методом бинарного поиска

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

6

Студент допускается к зачету, если он сдал все лабораторные работы и выполнил РГР. При подготовке к зачету после получения перечня вопросов рекомендуется:

1)внимательно прочитать материал лекций;

2)постараться разобраться с непонятными, в частности, новыми терминами, используя рекомендованную литературу;

3)просмотреть все лабораторные работы;

4)выписать вопросы для подробного обсуждения с преподавателем на консультации.

Перечень примерных вопросов, выносимых на зачет.

Таблица 2. Примерные вопросы

 

 

Индикаторы

 

Вопросы (задания, тестовые вопросы и др.)

достижения

 

 

компетенций

1.

Какие существуют виды программного обеспечения в

ПК-1.3, ПК-1.7

зависимости от стоимости использования и возможности

 

использования исходного кода.

 

2.

Какие идеи лежат в основе Open Source.

ПК-1.3, ПК-1.7

 

 

 

3.

Опишите две основные лицензии на использование Open

ПК-1.3, ПК-1.7

Source.

 

4.

Как выглядит типичная сессия отладки программного

ПК-1.3, ПК-1.7

обеспечения в Eclipse.

 

5.

Какими способами можно сконструировать объект в Java?

ПК-1.3, ПК-1.7

6.

Рассказать про java.util.collection.

ПК-1.3, ПК-1.7

7.

Устройство ArrayList, LinkedList, HashMap, HashSet. Когда

ПК-1.3, ПК-1.7

следует использовать

 

8.

Итератор по коллекции, его св-ва и интерфейс .

ПК-1.3, ПК-1.7

9.

Интеррфейсы и абстрактные классы, в чем отличие?

ПК-1.3, ПК-1.7

10. Перегрузка и переопределение методов, в чем отличие?

ПК-1.3, ПК-1.7

11. Создайте простой класс. Во втором классе определите

ПК-2.4, ПК-2.15

объект первого класса. Используйте инициализацию для

 

создания этого класса перед использованием этого класса.

 

12. Создайте базовый класс с 2 методами. В первом методе

ПК-2.4, ПК-2.15

вызовите второй метод. Унаследуйте класс и переопределите 2

 

метод. Создайте объект производного класса, проведите

 

восходящее преобразование к базовому типу и вызовите 1

 

метод.

 

13. Создайте класс, у которого есть конструктор с параметрами.

ПК-2.4, ПК-2.15

Создайте 2 класс, в котором есть метод возвращающий ссылку

 

на первый класс. В этом методе возвращаемое значение

 

сделайте в виде безымянного внутреннего класса, который

 

наследует от 1 класса.

 

14. Заполните массив случайным числами и выведите

ПК-2.4, ПК-2.15

максимальное, минимальное и среднее значение. Для

 

7

 

генерации случайного числа используйте метод Math.random(),

 

 

 

 

 

 

 

который возвращает значение в промежутке [0, 1].

 

 

 

 

 

 

 

15. Реализуйте алгоритм сортировки пузырьком для

ПК-2.4, ПК-2.15

 

сортировки массива.

 

 

 

 

 

 

 

 

 

 

 

16. Дан массив целых чисел и ещѐ одно целое число. Удалите

ПК-2.4, ПК-2.15

 

все вхождения этого числа из массива (пропусков быть не

 

 

 

 

 

 

 

должно).

 

 

 

 

 

 

 

 

 

 

 

17. Создайте класс, который описывает вектор (в трѐхмерном

ПК-2.4, ПК-2.15

 

пространстве). У него должны быть: конструктор с

 

 

 

 

 

 

 

параметрами в виде списка координат x, y, z; метод,

 

 

 

 

 

 

 

вычисляющий длину вектора. Корень можно посчитать с

 

 

 

 

 

 

 

помощью Math.sqrt().

 

 

 

 

 

 

 

 

 

 

 

18. Выполните — реализацию связного списка (реализовать

ПК-2.4, ПК-2.15

 

только add() и get()).

 

 

 

 

 

 

 

 

 

 

 

19. Напишите метод, который проверяет, входит ли в массив

ПК-2.4, ПК-2.15

 

заданный элемент или нет. Используйте перебор или двоичный

 

 

 

 

 

 

 

поиск для решения этой задачи.

 

 

 

 

 

 

 

 

 

 

20. Найдите корень уравнения cos(x) = x на отрезке [0; 1.5] с

ПК-2.4, ПК-2.15

 

точностью по x не хуже, чем 0.001. Известно, что на этом

 

 

 

 

 

 

 

промежутке корень единственный. Используйте для этого

 

 

 

 

 

 

 

метод деления отрезка пополам.

 

 

 

 

 

 

 

 

 

 

Показатели оценки по зачету представлены в таблице 3.

 

 

 

 

 

 

 

 

 

Таблица 3 Показатели оценки по зачету

 

Показатели

Бал-

 

 

 

 

 

 

 

 

 

 

оценивания

Оценка

 

Критерий оценки

 

 

лы

 

 

 

компетенций

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Результаты

4,5 -

«отлично

 

ставится

 

обучающемуся,

 

 

освоения

5,0

»

 

показавшему

 

 

 

глубокие

 

 

дисциплины

 

 

 

систематизированные

знания

 

 

соответствует

 

 

 

учебного материала,

в полной мере

 

 

требованиям

 

 

 

соответствующие

требованиям к

 

 

ФГОС

 

 

 

уровню подготовки обучающегося,

 

 

 

 

 

 

проявившему

 

 

 

творческие

 

 

 

 

 

 

способности

 

в

 

понимании,

 

 

 

 

 

 

изложении

и

 

использовании

 

 

 

 

 

 

учебного материала

при решении

 

 

 

 

 

 

поставленных

задач,

умеющему

 

 

 

 

 

 

обобщать

 

 

информацию,

 

 

 

 

 

 

аргументировано

и

 

практически

 

 

 

 

 

 

без ошибок ответившему на все

 

 

 

 

 

 

вопросы.

 

 

 

 

 

 

8

Результаты

 

3,5

-

«хорошо»

ставится

 

 

обучающемуся,

освоения

 

4,4

 

 

продемонстрировавшему

 

 

дисциплины

 

 

 

 

достаточно

 

полные

знания

соответствует

 

 

 

 

учебного материала, в целом

требованиям

 

 

 

 

соответствующие

требованиям к

ФГОС

 

 

 

 

уровню подготовки обучающегося,

 

 

 

 

 

способность

 

к

 

их

 

 

 

 

 

самостоятельному восполнению и

 

 

 

 

 

обновлению

в

ходе

решения

 

 

 

 

 

поставленных

задач,

умение

 

 

 

 

 

систематизировать

информацию,

 

 

 

 

 

допустившему негрубые ошибки и

 

 

 

 

 

недочеты.

 

 

 

 

 

Результаты

 

2,5

-

«удовлет-

ставится

 

 

обучающемуся,

освоения

 

3,4

 

воритель-

показавшему

уровень

знаний

дисциплины

 

 

 

но»

учебного

материала в

объѐме,

соответствует

 

 

 

 

минимально

необходимом

для

требованиям

 

 

 

 

решения

поставленных задач,

ФГОС

 

 

 

 

знание

основ

дисциплины,

 

 

 

 

 

владеющего навыками логического

 

 

 

 

 

мышления

 

и

допустившему

 

 

 

 

 

непринципиальные ошибки при

 

 

 

 

 

 

ответе на вопросы.

 

 

 

Результаты

 

0,0

-

«неудов-

ставится

 

 

обучающемуся,

освоения

 

2,4

 

летвори-

показавшему

 

существенные

дисциплины

НЕ

 

 

тельно»

пробелы

в

знании

основного

соответствует

 

 

 

 

учебного материала, допустившему

требованиям

 

 

 

 

принципиальные

ошибки

при

ФГОС

 

 

 

 

применении знаний, которые не

 

 

 

 

 

позволяют

ему

приступить

к

 

 

 

 

 

решению поставленных

задач без

 

 

 

 

 

дополнительной подготовки.

 

Перечень основной и дополнительной учебной литературы, необходимой для освоения дисциплины.

Печатные и электронные издания

1. Васюткина И. А.. Технология разработки объектно-ориентированных программ на JAVA : Учебно-методическое пособие. / Васюткина И. А. ; Васюткина И. А.. – Новосибирск : Новосибирский государственный технический университет, 2012. – 152 с. – URL: URL: http://www.iprbookshop.ru/45047.html. – ISBN ISBN 978-5-7782- 1973-1.

9

2.Гуськова, О. И.. Объектно ориентированное программирование в Java : учебное пособие. / Гуськова, О. И. ; О. И. Гуськова. – Москва : Московский педагогический государственный университет, 2018. – 240 с. – URL: URL: http://www.iprbookshop.ru/97750.html. – ISBN ISBN 978-5-4263-0648-6.

3.Джошуа Блох. Java. Эффективное программирование : практическое пособие. / Джошуа Блох ; Блох Джошуа; ред. Р. Усманов; пер. В. Стрельцов. – Саратов :

Профобразование, 2017. – 310 c. – URL: URL: http://www.iprbookshop.ru/64057.html. – ISBN ISBN 978-5-4488-0127-3.

4.Леднева С. Ю.. Программирование на Java. Ч.1 : Лабораторный практикум. / Леднева С. Ю., Ефимушкина Н. В., Цыганов А. А. ; С. Ю. Леднева, Н. В. Ефимушкина, А. А. Цыганов. – Самара : Самарский государственный технический университет, ЭБС АСВ, 2015. – 159 с. – URL: URL: http://www.iprbookshop.ru/90875.html. – ISBN ISBN 2227-8397

Перечень ресурсов информационно – телекоммуникационной сети «интернет» (далее - сеть «интернет»), необходимых для освоения дисциплины:

1.http://www.rsl.ru/ Российская государственная библиотека.

2.http://www.gpntb.ru/ Государственная публичная научно-техническая библиотека России.

3.http://elibrary.ru/ Научная электронная библиотека.

4.http://www.edu.ru Федеральный портал «Российское образование»

5.http://window.edu.ru. Единое окно доступа к образовательным ресурсам

6.www.intuit.ru - Интернет-Университет Информационных Технологий

7.www.techdays.ru - видео-портал Microsoft по современным технологиям и разработке

8.eclipse.org - сайт сообщества по разработке открытой интегрированной среды разработки Eclipse.

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]