Научная статья на тему 'Методы обучения студентов направления «Прикладная информатика», используемые в процессе преподавания дисциплины «Структуры данных в предметной области»'

Методы обучения студентов направления «Прикладная информатика», используемые в процессе преподавания дисциплины «Структуры данных в предметной области» Текст научной статьи по специальности «Науки об образовании»

CC BY
405
100
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБУЧЕНИЕ СТУДЕНТОВ / СТРУКТУРЫ ДАННЫХ / ПРИКЛАДНАЯ ИНФОРМАТИКА / TRAINING OF STUDENTS / DATA STRUCTURES / APPLIED INFORMATICS

Аннотация научной статьи по наукам об образовании, автор научной работы — Мокрый Валерий Юрьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по наукам об образовании , автор научной работы — Мокрый Валерий Юрьевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

METHODS OF TRAINING OF STUDENTS OF THE APPLIED INFORMATICS DIRECTION USED IN THE COURSE OF TEACHING DISCIPLINE “STRUCTURES OF DATA IN SUBJECT DOMAIN”

The article presents training methods of teaching discipline “Structures of data in subject domain” to the secondyear students of Аpplied Informatics direction. Describes the sections of the discipline in question, presents the most important ones. Gives the content of training, grounds the choice of methods and means of training. Analyses the results of the students’ individual work. Describes the difficulties encountered in the process of students’ training. Shows that the most effective approach to improvement of the training process lies in the development of educational and methodical materials on the discipline, in particular cases and research tasks.

Текст научной работы на тему «Методы обучения студентов направления «Прикладная информатика», используемые в процессе преподавания дисциплины «Структуры данных в предметной области»»

УДК 378.14: 004.021

В. Ю. Мокрый

МЕТОДЫ ОБУЧЕНИЯ СТУДЕНТОВ НАПРАВЛЕНИЯ «ПРИКЛАДНАЯ ИНФОРМАТИКА», ИСПОЛЬЗУЕМЫЕ В ПРОЦЕССЕ ПРЕПОДАВАНИЯ ДИСЦИПЛИНЫ «СТРУКТУРЫ ДАННЫХ

В ПРЕДМЕТНОЙ ОБЛАСТИ»

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

Ключевые слова: обучение студентов, структуры данных, прикладная информатика.

В Санкт-Петербургском гуманитарном университете профсоюзов (СПбГУП) осуществляется подготовка бакалавров направления «Прикладная информатика».

В условиях перехода на федеральные образовательные стандарты высшего профессионального образования (ФГОС ВПО) нового поколения деятельность по формированию основных образовательных программ безусловно является востребованной. ФГОС ВПО нового поколения дает больше возможностей образовательному учреждению по реализации собственного подхода. Данное исследование посвящено оптимизации содержания дисциплины «Структуры данных в предметной области» в рамках программы бакалавриата «Прикладная информатика».

ФГОС ВПО [1] и учебный план специальности «Прикладная информатика» предусматривают изучение студентами дисциплин: «Информатика и программирование», «Программная инженерия» (1-й курс), «Структуры данных в предметной области» (2-й семестр 2-го курса), «Объектно-ориентированное программирование» (3-й курс). Подробнее остановимся на содержании обучения студентов. Преподавание дисциплины осуществлялось для двух групп студентов 2-го курса бакалавриата, обучающихся по направлению «Прикладная информатика». Сначала остановимся на структуре содержания дисциплины «Структуры данных в предметной области».

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

Тема 1. Освоение интегрированной среды программирования Visual C++. Работа с файлами.

Тема 2. Данные динамической структуры.

Тема 3. Линейные динамические списки.

Тема 4. Рекурсия. Понятие рекурсии.

Тема 5. Древовидные структуры.

Тема 6. Обзор применения структурированных типов данных.

При отборе содержания авторы руководствовались рекомендациями по преподаванию информатики в университетах CC2001 [2], рабочей программой [3] и учитывали требования к структуре содержания следующих разделов: «Дискретные структуры» (ЭБ) и «Основы программирования».

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

Обучение студентов осуществлялось в несколько этапов: этап введения нового материала, этап закрепления полученных знаний и этап самостоятельной работы. На этапе введения нового материала изучались основные понятия по каждому разделу дисциплины, рассматривались примеры реализации простейших программ на языке С++, основные алгоритмы обработки статических и динамических структур данных. Основное внимание на теоретических занятиях уделялось формированию у студентов навыков работы с динамическими переменными и указателями, а также представления о динамических структурах данных, таких как список, стек, очередь, дерево, граф. Как показал анализ опыта обучения студентов, наиболее трудными для изучения являются темы 2 и 3. Для понимания студентами принципов работы с динамическими структурами данных необходимо рассмотреть как вопросы программной реализации алгоритмов и операций со структурами данных, так и вопросы анализа алгоритмов (сложность по времени и памяти, классы входных данных, наилучший, средний и наихудший случаи).

В. Ю. Мокрый. Методы обучения студентов направления «Прикладная информатика».

Закрепление материала осуществлялось на практических занятиях. Со студентами рассматривались интерфейс среды программирования Visual C++ 6.0, основные операторы языка C++, алгоритмические конструкции (линейные алгоритмы, ветвление и цикл), алгоритмы обработки динамических структур данных (большая часть учебного времени была уделена спискам - линейному, двунаправленному и кольцевому). Успели рассмотреть базовые операции над стеками, очередями и деревьями.

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

Разработаны специализированные лабораторные по различным разделам дисциплины, в том числе направленные на использование динамических структур данных [4]. Организация практических занятий по дисциплине «Структуры данных в предметной области» осуществлялась с учетом анализа данных [5-8].

Для поддержки самостоятельной работы студентов преподавателями университета разработан и постоянно обновляется электронный учебно-методический комплекс по дисциплине (ЭУМКД). В ЭУМКД есть материалы для выполнения трех лабораторных работ по следующим темам: тема № 1 «Освоение интегрированной среды Visual C++», тема № 2 «Обработка линейных динамических списков», тема № 3 «Алгоритмы построения и обхода бинарных деревьев». Студентам были предложены для выполнения дополнительные задания -лабораторные работы по операторам языка C++ и графам. В том числе были использованы материалы раздела «Динамические структуры данных».

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

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

ния. В нашем случае это среда Visual C++ 6.0.

Использование среды позволяет освоить способы создания проектов, которые состоят из одного или нескольких файлов, сформировать базовые навыки программирования на языке C++ и разрабатывать программы, реализующие основные операции над динамическими структурами данных. В настоящее время разработчики предлагают различные среды программирования. Для изучения основ программирования можно использовать различные версии интегрированных систем программирования Visual C++ и Visual Studio. Как показывает анализ возможностей систем программирования, для изучения основ программирования достаточно использовать среду Visual C++ 6.0.

При изучении структуры программы на языке C++ студентам важно пояснить необходимость использования следующих директив и операторов: include, main, printf, return, открывающие и закрывающие фигурные скобки. Важно обратить внимание на используемые типы данных в приведенном примере.

Еще одним важным моментом является анализ ошибок, возникающих в коде программы. Для изучения процесса компиляции понадобится окно, в котором выводится информация об ошибках. У студентов, начинающих изучать программирование, как правило, чаще встречаются синтаксические ошибки: неправильно написан оператор, при вычислении значения выражения обращаются к необъявленной переменной, не поставлена точка с запятой после оператора или выражения, использован оператор "= =" вместо "=" и другие. Помимо этого, у студентов возникали трудности с использованием ключевых алгоритмических структур, особенно циклических (с предусловием и постусловием).

Одним из основных результатов обучения студентов являются программы, реализующие изученные алгоритмы и отчеты о выполнении лабораторных работ. Приведем основные выводы, полученные по результатам анализа выполненных студентами работ и представленных материалов.

С заданиями лабораторной работы № 1 «Освоение интегрированной среды Visual C++» студенты справились без затруднений. Они должны были изучить интерфейс среды, создать проекты (консольные приложения), состоящие как из одного, так и из нескольких файлов.

После изучения среды программирования студенты выполняли лабораторные работы, посвященные изучению операторов языка C++. Это оператор присваивания, операторы ветвления if, цикла while, for, перехода goto, continue, останова break.

Для разработки занятий по данной теме использовались как материалы, представленные в ЭУМКД, так и дополнительные материалы.

Последовательность подачи теоретического материала по данному разделу была следующей: сначала приводилось определение понятия «оператор», затем изучались различные приемы использования оператора присваивания (рассматриваются как обычная, так и специальная форма записи оператора в выражениях). Изучив принципы использования оператора присваивания, со студентами обсуждались базовые операторы языка программирования C++.

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

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

Студентам необходимо объяснить, что указатель задает ссылку на определенную область памяти. После этого необходимо рассмотреть примеры использования указателей, рассмотрев операции адресации (&) и разыменования (*). Например, проанализировать со студентами строку кода: char* p = &a[0]. Данная запись состоит из двух частей: в левой части зафиксировано, что переменная p указывает на область памяти char (символ), в правой -&a[0] указывает на элемент массива а[0]. Таким образом, вся строчка означает, что *p указывает на а[0]. Потренировавшись с другими примерами, можно анализировать более сложные структуры с указателями: когда структура состоит из заголовка и одного или нескольких звеньев. Дальше можно обсудить, каким образом используются указатели на функции.

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

треть операцию инициализации указателя * и адресации &.

После получения основных навыков использования указателей в программах можно переходить к операциям над динамическими структурами данных. Для изучения алгоритмов работы со списками студенты выполняли работу № 2 «Алгоритмы обработки линейных динамических списков», размещенную в ЭУМКД «Структуры данных в предметной области».

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

На завершающем этапе обучения рассматривались основные операции со следующими структурами данных: стеки, очереди, деревья и графы. Для изучения основных операций над структурами данных «стек» и «очередь» студентам предлагались дополнительные задания, а для исследования операций с древовидными структурами данных использовались материалы лабораторной работы № 3 «Алгоритмы построения и обхода бинарных деревьев».

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

1) продолжить изучение возможностей современных систем программирования, в том числе Visual C++ 2013 Visual Studio 2013;

2) продолжить разработку учебно-методических материалов дисциплины, обратив особое внимание на разделы «Рекурсия, сортировка и поиск», «Динамические структуры данных»;

3) разрабатывать задания на программирование операций над динамическими структурами данных различного уровня сложности;

4) разрабатывать материалы для кейсов по дис-

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

1. Федеральный государственный образовательный стандарт высшего профессионального образования 230700 «Прикладная информатика». Приказ Министерства образования и науки Российской Федерации № 783 от 22 декабря 2009 г. URL: http://www.edu.ru/db-mon/mo/ Data/d_09/m783.html (дата обращения: 25.09.2014).

2. Рекомендации по преподаванию информатики в университетах. Computing Curricula 2001: Computer Science.

3. Потягайло А. Ю. Программа учебной дисциплины «Структуры данных в предметной области», кафедра информатики и математики. СПбГУП, 2009. 8 с.

4. Мокрый В. Ю., Спицын А. В. Методические рекомендации по проведению самостоятельной работы студентов по дисциплине «Структуры данных в предметной области». СПбГУП, 2013. 11 с.

В. Ю. Мокрый. Методы обучения студентов направления «Прикладная информатика»...

5. Стась А. Н., Прусских О. Н. Формирование алгоритмического мышления в процессе обучения теории графов // Вестн. Томского гос. пед. ун-та (TSPU Bulletin). 2012. Вып. 2. С. 166-169.

6. Сокольская М. А. О методах обучения бакалавров направления «Педагогическое образование» по профилю «Информатика» основам параллельного программирования // Вестн. Томского гос. пед. ун-та (TSPU Bulletin). 2012. Вып. 5. С. 41-45.

7. Шварева О.В. Кейс-тест: инновационное оценочное средство компетентности бакалавров // Научно-педагогическое обозрение (Pedagogical Review). 2013. Вып. 1. С. 28-32.

8. Первушина Н. А. Успешность визуализации информации в процессе обучения // Научно-педагогическое обозрение (Pedagogical Review). 2013. Вып. 2. С. 30-34.

Мокрый В. Ю., кандидат педагогических наук, доцент. Санкт-Петербургский гуманитарный университет профсоюзов.

Ул. Фучика, 15, Санкт-Петербург, Россия, 192238. E-mail: [email protected]

Материал поступил в редакцию 29.09.2014.

V Yu. Mokriy

METHODS OF TRAINING OF STUDENTS OF THE APPLIED INFORMATICS DIRECTION USED IN THE COURSE OF TEACHING DISCIPLINE "STRUCTURES OF DATA IN SUBJECT DOMAIN"

The article presents training methods of teaching discipline "Structures of data in subject domain" to the second-year students of Аpplied Informatics direction. Describes the sections of the discipline in question, presents the most important ones. Gives the content of training, grounds the choice of methods and means of training. Analyses the results of the students' individual work. Describes the difficulties encountered in the process of students' training. Shows that the most effective approach to improvement of the training process lies in the development of educational and methodical materials on the discipline, in particular cases and research tasks.

Key words: training of students, data structures, applied Informatics.

References

1. Federal'niy gosudarstvenniy obrazovateTniy standart vysshego professional'nogo obrazovaniya 230700 "Prikladnaya informatika"[Federal state educational standard of higher education 230700 «Applied Informatics». Order of the Ministry of Education and Science of the Russian Federation № 783 from December 22 2009]. URL: http://www.edu.ru/db-mon/mo/Data/d_09/m783.html (accessed 25 September 2014) (in Russian).

2. Rekomendatsiipo prepodavaniu informatiki v universitetakh. Computing Curiculla 2001: Computernye nauki [Recommendations about teaching informatics at universities. Computing Curricula 2001: Computer Science] (in Russian).

3. Potyagaylo A. Yu. Programma uchebnoydistsipliny "Strukturydannykh vpredmetnoy oblasti [The program of the discipline "Structures of data in subject domain" the department of informatics and mathematics]. Saint-Petersburg University of Human and Social Science, 2009. 8 p. (in Russian).

4. Mokriy V. Yu., Spitsin A. V. Methodicheskie recomendatsii po provedeniu samostoatelnoy raboti studentov po distsiplne "Strukturi dannikh v predmetnoy oblasti" [Methodical recommendations about carrying out independent work of students about discipline "Structures of data in subject domain"]. Department of informatics and mathematics, St. Petersburg University of Human and Social Science, 2013. 11 p. (in Russian).

5. Stas A. N., Prusskih O. N. Formirovanie algoritmitcheskogo myshleniya v protsesse izucheniya teorii grafov [Shaping the algorithmic thinking in the process of the education graph theory]. Vestnik Tomskogo gosudarstvennogo pedagogicheskogo universiteta - TSPU Bulletin, 2012, vol. 2, pp. 166-169 (in Russian).

6. Sokolskaya M. A. O metodakh obucheniya bakalavrov napravleniya "Pedagogicheskoe obrazovanie" po profilu "Informatika" osnovam parallelnogo programmirovaniya [About the methods of teaching undergraduate students in pedagogical education, degree programme "computer science" to basics of parallel programming]. Vestnik Tomskogo gosudarstvennogo pedagogicheskogo universiteta - TSPU Bulletin, 2012, vol. 5, pp. 41-45 (in Russian).

7. Shvareva O. V. Keys-test: innovatsionnoe otsenochnoe sredstvo competentnosti bakalavrov [Case-test: innovative evaluation means of the competence of undergraduate students]. Nauchno-Pedagogicheskoe obozrenie - Pedagogical Review, 2013, vol. 1, pp. 28-32 (in Russian).

8. Pervushina N. A. Uspeshnost vizualizatsii informatsii v protsesse obucheniya [Successful visualization of information in education]. Nauchno-Pedagogicheskoe obozrenie - Pedagogical Review, 2013, vol. 2, pp. 30-34 (in Russian).

Saint-Petersburg University of Humanities and Social Sciences.

Ul. Fuchika, 15, Saint-Petersburg, Russia, 192238. E-mail: [email protected]

i Надоели баннеры? Вы всегда можете отключить рекламу.