504
.pdfМинистерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования
«Нижегородский государственный архитектурно-строительный университет»
Молькин Н.В.
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ
Учебно-методическое пособие по подготовке к лекциям, практическим занятиям
(включая рекомендации по организации самостоятельной работы)
для обучающихся по дисциплине «Объектно-ориентированное программирование»
по направлению подготовки 09.03.04 Программная инженерия профиль Разработка программно-информационных систем
Нижний Новгород
2018
УДК 004.9
Молькин Н.В. / Объектно-ориентированное программирование [Электронный ресурс]: учеб.- метод. пос. / Н.В. Молькин; Нижегор. гос. архитектур. - строит. ун-т – Н. Новгород: ННГАСУ, 2018. – 13 с.– 1 электрон. опт. диск (CD-RW).
В настоящем учебно-методическом пособии по дисциплине «Объектно-ориентированное программирование» даются конкретные рекомендации учащимся для освоения как основного, так и дополнительного материала дисциплины и тем самым способствующие достижению целей, обозначенных в учебной программе дисциплины. Цель учебно-методического пособия — это помощь в усвоении лекций, в подготовке к практическим занятиям.
Учебно-методическое пособие предназначено для обучающихся в ННГАСУ по дисциплине «Объ- ектно-ориентированное программирование» по направлению подготовки 09.03.04 Программная инженерия, профиль Разработка программно-информационных систем.
Учебно-методическое пособие ориентировано на обучение в соответствии с календарным учебным графиком и учебным планом по основной профессиональной образовательной программе направления 09.03.04 Программная инженерия, профиль Разработка программно-информационных систем, утверждённым решением учёного совета ННГАСУ от 02.03.2018 г. (протокол № 3).
© |
Н.В. Молькин, 2018 |
© |
ННГАСУ, 2018 |
2
Оглавление
1. |
Общие положения ............................................................................................................................................ |
4 |
|
|
1.1 |
Цели изучения дисциплины и результаты обучения ............................................................................. |
4 |
|
1.2 |
Содержание дисциплины.......................................................................................................................... |
4 |
2. |
Методические указания по подготовке к лекциям........................................................................................ |
6 |
|
|
2.1 |
Общие рекомендации по работе на лекциях........................................................................................... |
6 |
|
2.2 |
Общие рекомендации при работе с конспектом лекций........................................................................ |
6 |
|
2.3 |
Контрольные вопросы............................................................................................................................... |
6 |
3. |
Методические указания по подготовке к практическим занятиям ............................................................. |
8 |
|
|
3.1 |
Общие рекомендации по подготовке к практическим занятиям .......................................................... |
8 |
|
3.2 |
Примеры задач для практических занятий.............................................................................................. |
8 |
4. |
Методические указания по организации самостоятельной работы .......................................................... |
10 |
|
|
4.1 |
Общие рекомендации для самостоятельной работы............................................................................ |
10 |
|
4.2 |
Темы для самостоятельного изучения................................................................................................... |
11 |
|
4.3 |
Учебно-методическое обеспечение самостоятельной работы............................................................ |
11 |
|
4.4 |
Задания для самостоятельной работы ................................................................................................... |
12 |
3
1. Общие положения
1.1 Цели изучения дисциплины и результаты обучения
Основными целями освоения учебной дисциплины «Объектно-ориентированное программирование» являются изучение основ классической теории объектно-ориентированного программирования, в том числе:
•пути эволюции технологий программирования от алгоритмического к ООП;
•основных принципов объектно-ориентированного построения программных систем (Абстракция, Инкапсуляция, Иерархия, Модульность, Типизация, Параллелизм, Сохраняемость);
•понятий классов, объектов, взаимоотношений между ними, а также многоуровневой модели
OMG.
Изучение средств объектно-ориентированного программирования языка Java, платформы Java, стандартной библиотеки классов, основ многопоточного и распределенного программирования, безопасности программных систем использующих технологию Java.
В процессе освоения дисциплины студент должен
Знать:
- языки программирования и приемы разработки или модификации программного кода;
Уметь:
- разрабатывать программное обеспечение для прикладных задач;
Владеть:
- навыками программирования приложений и их отладки.
Данная дисциплина позволит студентам не только систематизировать полученные теоретические знания, укрепить исследовательские навыки, но и даст возможность ориентироваться в новом предметном поле программной инженерии.
1.2 Содержание дисциплины
Материал дисциплины сгруппирован по следующим разделам:
1. Основы Java.
Простые программы, Комментарии, Простые типы данных и литералы, Приведение типов, Основные операторы Java.
2. Управляющие инструкции Java.
Условная инструкция if(), Условная инструкция switch(), Инструкция цикла for(), Инструкция цикла while(), Инструкция do-while(), Метки и инструкции break() и continue().
3. Массивы.
Создание одномерного массива, Двухмерные и многомерные массивы, Символьные массивы, Присваивание и сравнение массивов.
4
4. Классы и объекты.
Знакомство с ООП, Создание классов и объектов, Статические элементы, Доступ к членам класса, Ключевое слово this, Внутренние классы, Анонимные объекты.
5. Методы и конструкторы.
Перегрузка методов, Конструкторы, Объект как аргумент и результат метода, Способы передачи аргументов.
6. Наследование и переопределение методов.
Создание подкласса, Доступ к элементам суперкласса, Конструкторы и наследование, Ссылка на элемент суперкласса, Переопределение методов при наследовании, Многоуровневое наследование, Объектные переменные суперкласса и динамическое управление методами, Абстрактные классы.
7. Пакеты и интерфейсы.
Пакеты в Java, Интерфейсы, Интерфейсные ссылки, Расширение интерфейсов
8. Работа с текстом.
Объекты класса String, Метод toString(), Методы для работы со строками, Сравнение строк, Поиск подстрок и индексов, Изменение текстовых строк, Класс StringBuffer, Аргументы командной строки.
9. Обработка исключительных ситуаций.
Исключительные ситуации, Классы исключений, Описание исключительной ситуации, Множественный блок catch{}, Вложенные блоки try, Искусственное генерирование исключений, Выбрасывание исключений методами, Контролируемые и неконтролируемые исключения, Создание собственных исключений.
10. Многопоточное программирование.
Поточная модель Java, Создание потока, Создание нескольких потоков, Синхронизация потоков.
11. Система ввода-вывода.
Байтовые и символьные потоки, Консольный ввод с использованием объекта System.in, Консольный ввод с помощью класса Scanner, Использование диалогового окна, Работа с файлами.
12. Создание программ с графическим интерфейсом.
Создание простого окна, Обработка событий, Приложение с кнопкой, Классы основных компонентов, Создание графика функции, Основы создания апплетов.
5
2. Методические указания по подготовке к лекциям
2.1 Общие рекомендации по работе на лекциях
Лекция является главным звеном дидактического цикла обучения. Ее цель — формирование основы для последующего усвоения учебного материала. В ходе лекции преподаватель в устной форме, а также с помощью презентаций передает обучаемым знания по основным, фундаментальным вопросам изучаемой дисциплины.
Назначение лекции состоит в том, чтобы доходчиво изложить основные положения изучаемой дисциплины, ориентировать на наиболее важные вопросы учебной дисциплины и оказать помощь в овладении необходимых знаний и применения их на практике.
Личное общение на лекции преподавателя со студентами предоставляет большие возможности для реализации образовательных и воспитательных целей.
При подготовке к лекционным занятиям студенты должны ознакомиться с презентаций, предлагаемой преподавателем, отметить непонятные термины и положения, подготовить вопросы с целью уточнения правильности понимания. Рекомендуется приходить на лекцию подготовленным, так как в этом случае лекция может быть проведена в интерактивном режиме, что способствует повышению эффективности лекционных занятий.
2.2Общие рекомендации при работе с конспектом лекций
Входе лекционных занятий необходимо вести конспектирование учебного материала. Конспект помогает внимательно слушать, лучше запоминать в процессе осмысленного записывания, обеспечивает наличие опорных материалов при подготовке к семинару, зачету, экзамену.
Полезно оставить в рабочих конспектах поля, на которых делать пометки из рекомендованной литературы, дополняющие материал прослушанной лекции, а также подчеркивающие особую важность тех или иных теоретических положений.
Вслучае неясности по тем или иным вопросам необходимо задавать преподавателю уточняющие вопросы. Следует ясно понимать, что отсутствие вопросов без обсуждения означает в большинстве случаев неусвоенность материала дисциплины.
2.3Контрольные вопросы
1.Приведение типов.
2.Модульность.
3.Инкапсуляция.
4.Простые типы данных и литералы.
5.Основные операторы Java.
6.Условная инструкция if().
7.Условная инструкция switch().
8.Инструкция цикла for().
9.Инструкция цикла while().
10.Инструкция do-while().
11.Метки и инструкции break() и continue().
12.Создание одномерного массива.
13.Двухмерные и многомерные массивы.
14.Символьные массивы.
15.Присваивание и сравнение массивов.
16.Создание классов и объектов.
6
17.Статические элементы.
18.Доступ к членам класса.
19.Ключевое слово this.
20.Внутренние классы.
21.Анонимные объекты.
22.Перегрузка методов.
23.Конструкторы.
24.Объект как аргумент и результат метода.
25.Способы передачи аргументов.
26.Наследование и переопределение методов.
27.Пакеты в Java, Интерфейсы. Интерфейсные ссылки.
28.Работа с текстом.
7
3. Методические указания по подготовке к практическим занятиям
3.1Общие рекомендации по подготовке к практическим занятиям
Входе подготовки к практическим занятиям необходимо изучать основную литературу, знакомиться с дополнительной литературой, а также с новыми публикациями в периодических изданиях: журналах, газетах и т.д. При этом необходимо учесть рекомендации преподавателя и требования учебной программы.
Всоответствии с этими рекомендациями и подготовкой полезно дорабатывать свои конспекты лекции, делая в нем соответствующие записи из литературы, рекомендованной преподавателем и предусмотренной учебной программой. Целесообразно также подготовить тезисы для возможного выступлений по всем учебным вопросам, выносимым на практическое занятие.
При подготовке к занятиям можно также подготовить краткие конспекты по вопросам темы. Очень эффективным приемом является составление схем и презентаций.
Готовясь к докладу или реферативному сообщению, желательно обращаться за методической помощью к преподавателю. Составить план-конспект своего выступления. Продумать примеры с целью обеспечения тесной связи изучаемой теории с реальной жизнью. Своевременное и качественное выполнение самостоятельной работы базируется на соблюдении настоящих рекомендаций и изучении рекомендованной литературы. Студент может дополнить список использованной литературы современными источниками, не представленными в списке рекомендованной литературы, и в дальнейшем использовать собственные подготовленные учебные материалы при написании курсовых и дипломных работ.
3.2Примеры задач для практических занятий
Пример № 1 Вычисление экспоненты и числа Пи. Пример № 2
Вычисление скорости на маршруте. Пример №3 Расчёт орбиты спутника.
Пример № 4 Решение тригонометрического уравнения. Пример № 5 Умножение векторов.
Пример № 6 Числа Фибоначчи. Пример № 7
Сортировка массива. Пример № 8
Транспонирование и произведение матриц. Пример № 9 Работа с квадратными матрицами. Пример № 10
Траектория полёта тела. Пример № 11 Площади фигур. Пример № 12
Операции с векторами. Произведение полиномов и ряд Тейлора.
8
3.3Примеры тем расчетных работ
1.Контейнеры, потоки. Object, String. Реализация программы подсчета частоты встречаемости слов в файле
2.Шаблон проектирования «фабричный метод», журналирование, модульное тестирование. Реализация стекового калькулятора
3.Шаблон проектирования MVC. Графический интерфейс пользователя. Реализация игры сапер или тетрис (по выбору)
4.Многопоточность и параллелизм. Реализация фабрики-конвейера по сбору «изделий» из «де-
талей»
5.Распределенное программирование. Сетевое взаимодействие. Реализация многопользовательского чата
9
4. Методические указания по организации самостоятельной работы
4.1 Общие рекомендации для самостоятельной работы
Самостоятельная работа студентов является основным способом овладения учебным материалом в свободное от обязательных учебных занятий время.
Целями самостоятельной работы студентов являются:
-систематизация и закрепление полученных теоретических знаний и практических умений студентов;
-углубление и расширение теоретических знаний;
-формирование умений использовать нормативную, правовую, справочную документацию и специальную литературу;
-развитие познавательных способностей и активности студентов:
-формирования самостоятельности мышления, способностей к саморазвитию, самосовершенствованию и самореализации.
Запланированная в учебном плане самостоятельная работа студента рассматривается как связанная либо с конкретной темой изучаемой дисциплины, либо с подготовкой к курсовой, дипломной работе, а также к защите ВКР. В данном разделе рассматривается только самостоятельная работа первого вида.
Самостоятельная работа выполняется в два этапа: планирование и реализация. Планирование самостоятельной работы включает:
-уяснение задания на самостоятельную работу;
-подбор рекомендованной литературы;
-составление плана работы, в котором определяются основные пункты предстоящей подготовки. Составление плана дисциплинирует и повышает организованность в работе.
На втором этапе реализуется составленный план. Реализация включает в себя:
-изучение рекомендованной литературы;
-составление плана (конспекта) по изучаемому материалу (вопросу);
-взаимное обсуждение материала.
Необходимо помнить, что на лекции обычно рассматривается не весь материал. Оставшаяся восполняется в процессе самостоятельной работы. В связи с этим работа с рекомендованной литературой обязательна.
Работа с литературой и иными источниками информации включает в себя две группы приемов: техническую, имеющую библиографическую направленность, и содержательную. Первая группа – уяснение потребностей в литературе; получение литературы; просмотр литературы на уровне общей, первичной оценки; анализ надежности публикаций как источника информации, их относимости и степени полезности. Вторая – подробное изучение и извлечение необходимой информации.
Для поиска необходимой литературы можно использовать следующие способы:
-поиск через систематический каталог в библиотеке;
-просмотр специальных периодических изданий;
-использование материалов, размещенных в сети Интернет.
Для того, чтобы не возникало трудностей понимания текстов учебника, монографий, научных статей, следует учитывать, что учебник и учебное пособие предназначены для студентов и магистрантов, а монографии и статьи ориентированы на исследователя. Монографии дают обширное описание проблемы, содержат в себе справочную информацию и отражают полемику по тем или иным дискуссионным вопросам. Статья в журнале кратко излагает позицию автора или его конкретные достижении в иссле-
10