Пруцков Александр Викторович
Учебник включает разделы, посвященные основам объектно-ориентированного программирования, элементам языка Java, его стандартным классам и библиотекам. Разделы содержат более 50 примеров. Отдельная глава содержит 7 заданий, которые позволят закрепить учебный материал на практике.
В учебник вошли материалы лекционных и практических занятий дисциплин, связанных с изучением объектно-ориентированного программирования и языка Java и преподаваемых автором в высших учебных заведениях.
Предназначен для студентов технических направлений, в учебный план которых включены дисциплины «Объектно-ориентированное программирование», «Язык программирования Java», а также для всех желающих изучить язык программирования Java не только в теории, но и на практике.
Пруцков А. В. Программирование на языке Java. Введение в курс с примерами и практическими заданиями: учебник. — М.: КУРС, 2018. — 208 с.
Программы из примеров учебника
Вы можете открыть программы примеров в среде разработки Eclipse.
Этот учебник предназначен для читателей, владеющих основами программирования и желающих получить начальные знания программирования на языке Java. Выполнив практические работы на основе теоретических и справочных материалов, приведенных в учебнике, вы изучите язык Java и научитесь писать программы на этом языке.
Учебник включает лекционные материалы и задания практических работ курса, который автор преподавал студентам технических специальностей и направлений, связанных с программированием, в высших учебных заведениях: 09.03.04 – «Программная инженерия» и 09.05.01 – «Применение и эксплуатация автоматизированных систем специального назначения». Номера специальностей и направлений приводятся такими, какими они были на момент преподавания курса. За время преподавания автором были изданы учебные пособия и в соавторстве методические указания, материалы которых включены в этот учебник. Также в учебнике использовались материалы двухтомного учебника по информатике и программированию. Методика преподавания курса апробировалась на научно-методических конференциях.
Теоретические и справочные материалы учебника поделены на разделы. Каждый раздел неделим и посвящен одной теме. Такое деление объясняется желанием автора дать возможность читателям, еще не освоившим язык программирования Java, использовать учебное пособие в качестве справочного.
В главе «1. Основы языка программирования Java» излагаются основные понятия объектно-ориентированного программирования и языка Java: классы и объекты. Классы включают поля, конструкторы и методы. Метод main является точкой входа в программу. Все классы в языке Java являются прямыми или косвенными подклассами класса Object и наследуют его методы. Для структуризации программы используются пакеты, в которые помещаются классы с общей функциональностью или решающие одну или схожие задачи. Приведен пример использования классов и объектов. В этой и последующих главах для стандартных классов используются короткие имена, так как это не вызывает неоднозначности.
Глава «2. Элементы языка программирования Java» посвящена изложению базовых понятий языка Java, без которых невозможно начать писать программы на этом языке: базовые типы переменных, массивы, строки, управляющие конструкции и порядок ввода и вывода на консоль. Все типы в языке Java делятся на базовые и ссылочные. Базовые типы (целые, вещественные, символьный, логический) используются для определения полей классов. Ссылочные типы представлены в главе строками и массивами. Строки в языке Java – это объекты классов String, StringBuilder или StringBuffer. Массивы могут содержать элементы базовых и ссылочных типов. Операции сортировки, поиска, копирования, заполнения и сравнения собраны в классе-утилите Arrays. Язык Java имеет те же управляющие конструкции, как и большинство языков структурного программирования: ветвления и циклы.
В главе «3. Объектно-ориентированное программирование» продолжается и расширяется изложение базовых понятий объектно-ориентированного программирования, начатых в главе 1. Принципы этого типа программирования (инкапсуляция, наследование и полиморфизм) позволяют сократить дублирование строк программы и тем самым сделать программу легко расширяемой и изменяемой. Классам и их элементам можно придать различные свойства, сделав их абстрактными или статическими. Чтобы задать общее поведение классов, описывающих сущности из разных предметных областей, используются интерфейсы. Перечисления позволяют задать не только совокупность значений объекта, но и каждому значению задать свое собственное поведение. Глава завершается примером проектирования иерархии классов с использованием рассмотренных понятий.
В главе «4. Стандартные классы и библиотеки» представлены наиболее часто используемые стандартные классы и библиотеки языка Java. Язык Java предоставляет возможность разработки многоязычных интерфейсов программ. Чтение и запись в различные типы данных (файлы, массивы, строки) осуществляется единообразно с помощью потоков ввода и вывода данных. Ошибки при работе с потоками ввода или вывода, а также другие ошибки при выполнении программы обрабатываются с помощью исключений. Кроме массивов, для хранения и обработки данных используются коллекции.
Почти каждый раздел снабжен примерами, поясняющими описываемые понятия. Обозначение примера включает номер главы и через дефис порядковый номер примера в этой главе. Текст программ в примерах оформлен в соответствии с соглашениями Java Code Conventions [45].
Знание английского языка важно при программировании, так как проекты по разработке программного обеспечения ведутся международными группами программистов. Поэтому все названия элементов программ и комментарии в примерах приведены на английском языке.
Читателю (и студентам) предлагается закрепить теоретический материал на практике. Для этого в учебник включена глава «5. Практические работы». Практические работы охватывают все темы разделов учебника: строки и массивы; классы и их иерархии; потоки ввода и вывода; коллекции. Практические работы имеют различные варианты заданий, рассчитанные на одну студенческую группу (15-20 человек).
Существуют различные среды разработки программ на языке Java. Однако предполагается, что студенты будут использовать среду Eclipse. Освоить навыки работы в ней можно с помощью главы «6. Разработка программ в среде Eclipse».
На лекционных занятиях использовались специально подобранные примеры для пояснения понятий языка Java и объектно-ориентированного программирования. Примеры приведены в главе «7. Примеры программ для проведения лекционных занятий».
В главе «8. Дополнительные материалы» приводятся методические рекомендации по проведению лекционных и практических занятий на основе этого учебника.
Книги, учебные материалы и информационные ресурсы глобальной сети Интернет из библиографического списка использовались в качестве вспомогательных источников информации для написания теоретических разделов учебника и для разработки вариантов заданий к практическим работам. Библиографический список упорядочен в алфавитном порядке.
Перечислим основные принципы, которые положены в основу учебника.
1. Последовательность изложения.
Понятия объясняются на основе уже известных понятий. При написании разделов материал излагался максимально последовательно, без перескоков от одного понятия к другому. Однако в нескольких случаях приходилось упоминать о каком-то понятии, без которого невозможно последующее изложение, а затем раскрывать его более полно в следующих разделах. Этот недостаток присущ многим книгам, посвященным языку Java и другим объектно-ориентированным языкам программирования.
2. Минимум строк программ в примерах. Программы должны быть объемом не более одной страницы.
Примеры программ в учебнике упрощены и сокращены, чтобы сосредоточить их на конкретную тему. Программу объемом более одной страницы сложнее понимать.
3. Минимум требуемого теоретического материала.
Теоретический материал включает необходимые сведения для выполнения практических работ.
В учебнике используются следующие выделения шрифтами и специальный символ.
Сжатый шрифт без засечек
Листинг программ в примерах и теоретическом материале, заголовки методов в описании классов.
Моноширинный шрифт с засечками
Текст, выводимый программой на экран или консоль.
Символ □
Конец примера. Отделяет пример от последующего текста.
Александр Викторович Пруцков – доктор технических наук, профессор кафедры вычислительной и прикладной математики Рязанского государственного радиотехнического университета на протяжении более 10 лет читает курсы по программированию и информатике, активно сотрудничает с российскими и международными компаниями из отрасли информационных технологий.
Автор готов ответить на вопросы и дать консультации преподавателям, желающим использовать материалы учебника для постановки новых или обновления существующих курсов. Связаться с автором по всем интересующим вопросам можно через его Интернет-ресурс http://prutzkow.com. С этого же Интернет-ресурса можно загрузить примеры, приведенные в учебнике, в электронном виде.