Обучение объектно-ориентированному программированию будущих бакалавров информатики

УДК 378.14 Садулаева Билянт Султановна

кандидат педагогических наук, доцент кафедры информационных технологий и прикладной информатики Чеченского государственного педагогического университета

Мунаев Умар Сайд-Ахмедович

ассистент кафедры информационных технологий и прикладной информатики Чеченского государственного педагогического университета

ОБУЧЕНИЕ

ОБЪЕКТНО-ОРИЕНТИРОВАННОМУ ПРОГРАММИРОВАНИЮ БУДУЩИХ БАКАЛАВРОВ ИНФОРМАТИКИ

Sadulaeva Bilyant Sultanovna

PhD in Education Science, Assistant Professor, Information Technology and Applied Computer Science Department, Chechen State Pedagogical University

Munaev Umar Said-Akhmedovich

Assistant, Information Technology and Applied Computer Science Department, Chechen State Pedagogical University

TEACHING OBJECT-ORIENTED PROGRAMMING TO FUTURE BACHELORS OF COMPUTER SCIENCE

Аннотация:

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

Ключевые слова:

объектно-ориентированное программирование, языки программирования, бакалавр информатики, обучение в вузе.

Summary:

The article presents a block-modular structure of object-oriented programming teaching that supposes the intermediate control of knowledge according to the method of diagnostic procedures of knowledge and skills, based on the estimation of mini-projects at the end of each new topic. The authors have developed the themes of individual final projects, which will allow the teachers to carry out unambiguous control of the acquired knowledge in this field.

Keywords:

object-oriented programming, programming languages, Bachelor of Computer Science, teaching at the university.

Объектно-ориентированный подход является основной современной парадигмой программирования и представляет собой наиболее прогрессивную технологию разработки программ. Объектный подход в программировании состоит в том, что разработчику предлагается определенный набор объектов и инструментов с возможностью изменения их свойств, а также их объединения в систему. Практически все современные профессиональные языки программирования основаны на объектно-ориентированном подходе: С++, Java и т. д. Широкое распространение получили системы визуального программирования, образованные на основе объектно-ориентированной технологии (Delphi, JBuilder и т. д.).

Объектно-ориентированный подход устойчиво занимает лидирующие позиции и является наиболее перспективным для создания программного обеспечения. Однако эта новая методология на современном этапе недостаточно отражена в системе подготовки будущих учителей информатики, что сужает рамки мировоззренческой базы изучаемых профильных курсов и наносит ущерб профессиональной подготовке студентов [1].

Возникает необходимость практического обучения современным программным средствам и технологиям их разработки. Для будущей успешной работы в области программирования студентам становится недостаточно знания одного или нескольких языков, необходимо целостное представление о методологии разработки программных средств. Будущим бакалаврам информатики требуется знание не только пользовательских программных средств, но и идеологии их проектирования и разработки. Наиболее популярные языки объектно-ориентированного программирования - C++ и его версии Turbo C++ и Borland C++. Среды визуального программирования Delphi, Visual Basic, Java также основаны на объектном подходе.

Объектные системы обычно характеризуются четырьмя базовыми компонентами: идентификацией, состоянием, поведением и инкапсуляцией. Идентификация в большинстве объектно-ориентированных языков является неявным понятием, состоящим в том, что у любого объекта

ПЕДАГОГИЧЕСКИЕ НАУКИ

имеется уникальный идентификатор, отделенный от его состояния: два объекта с одинаковым состоянием являются отдельными самостоятельными объектами, хотя зеркально отображаются один на другой. Инкапсуляция является важным элементом объектного подхода, предотвращающим внешнее манипулирование внутренними частями объекта и обеспечивающим возможность эволюции интерфейса объекта. В профессиональной подготовке будущих бакалавров информатики объектно-ориентированное программирование представляет известную сложность, в связи с чем Тед Ньюард [2] определяет его как «Вьетнам компьютерной науки».

Значительное внимание специалистов в области информатики (М.А. Зайцева, Ю.В. Калмыков, Е.В. Келлер, Н.В. Коробков, Т.Б. Корнеева, Е.К. Кравцова, Л.В. Краева, А.П. Пермякова, В.А. Сидоров и др.) уделяется обучению объектно-ориентированным языкам после получения базовых знаний структурного программирования. Такой подход можно назвать классическим, и он требует значительных временных затрат. Кроме того, возникает барьер на этапе перехода от сравнительно простого интерфейса оболочки структурного языка программирования к сложному виду среды объектно-ориентированного языка. Решением указанных проблем является применение в практике преподавания объектно-ориентированного программирования научно-методического подхода, основанного на изучении курса без предварительного изучения структурной парадигмы. Учебный курс может быть реализован на основе алгоритмических конструкций языка, на примерах работы с объектами. В этом случае даже в условиях сокращения времени обучения основам программирования у будущих бакалавров не возникают барьеры при переходе от одной программной среды к другой [3].

Обучение объектно-ориентированному программированию целесообразно вести в блочно-модульной структуре. Первый блок обучения ориентирован на рассмотрение основ объектно-ориентированного программирования; второй блок способствует расширению знаний в области основ объектно-ориентированного программирования. Базовый блок включает следующие разделы: алгоритмы и исполнители; основные понятия объектно-ориентированного программирования; основные операторы языка; компоненты объектно-ориентированного языка программирования Delphi; создание собственных компонентов. Следующий уровень состоит из следующих тем: технология Drag & Drop; создание подпрограмм: процедур и функций; решение арифметических задач повышенной сложности; понятие технической записки; мультимедиа и графика; внедрение и связывание объектов; динамический обмен данными; обработка исключительных ситуаций. Определены формы, методы и средства обучения. Проведение диагностических процедур целесообразно строить на методах проведения компьютерного тестирования, анкетирования, интервьюирования, собеседования, выполнения практических заданий с целью выявления базовых умений и навыков и готовности к решению задач творческого уровня.

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

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

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

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

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

таких понятий, как «объект», «ориентация», «программирование», «свойство», «метод», «событие», «инкапсуляция», «наследование» и «полиморфизм». Студенты находят определения предложенных понятий в энциклопедических, философских и других источниках и обязательно с точки зрения теоретической информатики. По окончании выступлений совместно со студентами педагог делает выводы о том, как определить эти понятия относительно объектно-ориентированного программирования. Особенно стоит подчеркнуть, что перед выполнением домашнего задания по поиску информации со студентами проводится мастер-класс, на котором предлагаются основные положения по поиску информации в печатных изданиях и в интернет-источниках.

Ссылки:

1. Макарова Н.В. Концепция базового курса информатики на базе объектно-информационного подхода [Электронный ресурс]. URL: http://www.bitpro.ru (дата обращения: 19.08.2013).

2. Neward Т. The Vietnam of Computer Science. 2006. June 26.

3. Садулаева Б.С., Мунаев У.С. Особенности изучения объектно-ориентированного программирования в подготовке учителей информатики // Информационные технологии в образовательном процессе педагогического вуза и школы : сб. материалов междунар. науч.-практ. конф. Махачкала, 2014.