Темы диссертаций по педагогике » Теория и методика обучения и воспитания (по областям и уровням образования)

автореферат и диссертация по педагогике 13.00.02 для написания научной статьи или работы на тему: Методика обучения многопоточному программированию бакалавров физико-математического образования

Автореферат по педагогике на тему «Методика обучения многопоточному программированию бакалавров физико-математического образования», специальность ВАК РФ 13.00.02 - Теория и методика обучения и воспитания (по областям и уровням образования)
Автореферат
Автор научной работы
 Коротков, Андрей Вячеславович
Ученая степень
 кандидата педагогических наук
Место защиты
 Санкт-Петербург
Год защиты
 2005
Специальность ВАК РФ
 13.00.02
Диссертация по педагогике на тему «Методика обучения многопоточному программированию бакалавров физико-математического образования», специальность ВАК РФ 13.00.02 - Теория и методика обучения и воспитания (по областям и уровням образования)
Диссертация

Автореферат диссертации по теме "Методика обучения многопоточному программированию бакалавров физико-математического образования"

На правах рукописи УДК 378.016:5

КОРОТКОВ АНДРЕЙ ВЯЧЕСЛАВОВИЧ

МЕТОДИКА ОБУЧЕНИЯ МНОГОПОТОЧНОМУ ПРОГРАММИРОВАНИЮ БАКАЛАВРОВ ФИЗИКО-МАТЕМАТИЧЕСКОГО ОБРАЗОВАНИЯ

13.00.02 — теория и методика обучения и воспитания (информатика, уровень профессионального образования)

Автореферат

диссертации на соискание учёной степени кандидата педагогических наук

Санкт-Петербург 2005

Работа выполнена па кафедре информатики государственного образовательного учреждения высшего профессионального образования «Российский государственный педагогический университет им. А.И. Герцена».

Научный руководитель:

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

Официальные оппоненты:

доктор педагогических наук, профессор Татьяна Алексеевна Бороненко

кандидат технических наук, профессор Александр Георгиевич Степанов

Ведущая организация:

Московский педагогический государственный университет

Защита состоится 22 декабря 2005 года в /<? на заседании Диссертационного Совета Д 212.199.03 по защите диссертаций на соискание учёной степени доктора педагогических наук в Российском государственном педагогическом университете им. А.И. Герцена по адресу: 191186, Санкт-Петербург, наб. р. Мойки, д. 48, корп. 1, ауд. 237.

С диссертацией можно ознакомиться в фундаментальной библиотеке РГПУ им. А.И. Герцена.

Автореферат разослан 22 ноября 2005 г.

Учвный секретарь Диссертационного Совета

гооь-А

2254000

з

ОБЩАЯ ХАРАКТЕРИСТИКА ИССЛЕДОВАНИЯ

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

- так, на компьютере можно запустить несколько приложений, которые будут "параллельно" выполнять каждое свою работу;

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

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

Однако, при обучении студентов информатике в педагогическом вузе, в частноеги, при обучении программированию уделяется очень мало внимания (если уделяется вообще!) параллельным вычислениям.

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

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

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

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

- философская и мировоззренческая функция состоит в изучении многопоточного программирования как инструмента моделирования понятия «параллельность» («одновременность»);

- пропедевтическая функция состоит в изучении многопоточного про-

- прагматическая функция состоит в изучении многопоточного программирования как более эффективного или простого способа решения некоторых классов задач.

Необходимость наличия знаний у школьного учителя информатики по различным парадигмам программирования отмечается многими авторами, среди которых: Я.Н. Зайдельман, Л.Е. Самовольнова, Г.В. Лебедев (1993).

Дисциплины профильной подготовки в области информатики Государственного образовательного стандарта по направлению "540200. Физико-математическое образование" включают разделы ("Парадигмы программирования", "Технологии программирования", "Разделение ресурсов компьютера", "Формальные языки и автоматы"), которые предполагают присутствие элементов парадигмы многопоточного программирования.

Таким образом, актуальность исследования также подтверждают:

1) несоответствие уровня подготовки будущих учителей информатики в области многопоточного программирования современным требованиям, предъявляемым учителю информатики;

2) отсутствие методики обучения многопоточному программированию бакалавров физико-математического образования;

3) нехватка учебно-методических пособий для обучения многопоточному программированию в педагогическом вузе.

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

В дальнейшем будем понимать методику обучения конкретному учебному предмету согласно Т.А. Бороненко (1997), как раздел педагогической науки, объектом которого является процесс обучения учебному предмету, предметом - проектирование, конструирование, реализация (внедрение в педагогическую практику), анализ (педагогический эксперимент) и развитие (оптимизация) методической системы обучения рассматриваемому учебному предмету.

Целью исследования является разработка методической системы обучения многопоточному программированию бакалавров физико-математического образования как составляющей методической системы их фундаментальной подготовки в предметной области.

Объектом исследования выступает процесс обучения многопоточному программированию бакалавров физико-математического образования в педагогическом университете.

Предметом исследования является методическая система обучения многопоточному программированию бакалавров физико-математического образования.

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

1. Философскими концепциями развития научного знания (по Т. Куну и И. Лакатосу) для уточнения понятия "парадигма программирования" и конкретизации ее структуры;

2. Моделью парадигмы многопоточного программирования, имеющей выделенную структуру;

3. Классификацией парадигм программирования и классификацией специфических технологий многопоточного программирования;

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

Для решения обозначенной выше проблемы и проверки достоверности гипотезы исследования были поставлены следующие задачи.

Первая группа задач (методологического характера) - определение исходных методологических принципов и концепций построения методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1. Выбрать философскую и специально-научную методологию исследования в области методики обучения многопоточному программированию;

2. Выделить концептуальные шаги метода межпарадигмальной рефлексии при отборе содержания обучения многопоточному программированию;

3. На основе понятия "логико-семиотический анализ содержания обучения информатике" выделить основные этапы проведения логико-семиотического анализа содержания обучения многопоточному программированию;

4. Выбрать технологии отбора элементов методической системы обучения многопоточному программированию.

Вторая группа задач (теоретического характера) - построение методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1. Уточнить определение понятия "парадигма программирования" и конкретизировать общую структуру парадигмы программирования;

2. На основе анализа научной и учебно-методической литературы, а также выделенной структуры парадигмы программирования, построить модель парадигмы многопоточного программирования;

3. Сформулировать цели обучения многопоточному программированию;

4. Осуществить отбор (оптимизацию и достраивание) содержания обучения многопоточному программированию;

5. Выбрать методы и формы обучения многопоточному программированию;

6. Выбрать (или создать) средства обучения многопоточному программированию.

Третья группа задач (практического характера) - частичная реализация построенной методической системы обучения многопоточному программированию бакалавров физико-математического образования:

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

2. Провести экспериментальную проверку разработанных теоретических положений.

Для решения сформулированных задач использовались следующие методы исследования:

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

- анализ научной литературы по математике, информатике, вычислительной технике, методике преподавания математики и информатики;

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

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

Научная новизна исследования заключается в разработке нового подхода к отбору содержания обучения многопоточному программированию, при котором:

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

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

многопоточного программирования на конкретном языке, реализация специфических технологий на конкретном языке программирования).

Теоретическая значимость исследования состоит в том, что обоснованы теоретические положения отбора содержания методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1) предложено уточнение определения понятия "парадигма программирования" и конкретизирована структура парадигмы программирования;

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

3) построена методическая система обучения многопоточному программированию бакалавров физико-математического образования как составляющая методической системы их фундаментальной подготовки в предметной области.

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

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

Апробация результатов исследования осуществлялась через публикации (2002-2005 гг.), участие во Всероссийской научно-практической конференции "Математическое моделирование, информационные технологии и образование (ММИТО-2004)" (21-23 апреля 2004 г., ЛГУ им. A.C. Пушкина, РГПУ им. А.И. Герцена), а также через выступления на научно-методическом семинаре "Вопросы теории и методики обучения информатике" для аспирантов кафедры информатики факультета математики РГПУ им. А.И. Герцена (ноябрь 2004 г. - май 2005 г.).

Внедрение результатов исследования проводилось в 2002-2005 гг. на факультете математики РГПУ им. А.И. Герцена:

1) в форме спецкурса "Введение в программирование на языке Java" для студентов V курса 3-5 группы специальности "Математика" (2002 г.);

2) в курсе "Практикум по решению задач" для студентов II курса 1 и 3 группы по направлению "Физико-математическое образование" (2003 г.);

3) в курсе "Дисциплины специализации" для студентов IV курса 3-4 группы специальности "Математика" (2003-2004 гг.);

4) в курсе "Практикум по решению задач" для студентов I курса магистратуры по направлению "Физико-математическое образование" (2004 г.);

5) в курсе "Практикум по решению задач" для студентов II курса 1-3 группы по направлению "Физико-математическое образование" (2004 г.);

6) в курсе "Теоретические основы и реализация языков программирования" для студентов I курса магистратуры по направлению "Физико-математическое образование" (2004 г.);

7) в курсе "Теория алгоритмов" для студентов V курса 1 группы специальности "Информатика" (2004 г.);

8) в курсе "Практикум по решению предметно-ориентированных задач" для студентов IV курса 1-2 группы по направлению "Физико-математическое образование" (2004 г.);

9) в курсе "Практикум по решению задач" для студентов V курса 1 группы специальности "Информатика" (2004-2005 гг.);

10) в форме спецкурса "Реализация абстрактных типов данных на языке С" для студентов II курса 3 группы специальности "Информационные системы" (2005 г.);

11) в форме спецкурса "Элементы теории алгоритмов" для студентов II курса 1-2 группы по направлению "Физико-математическое образование" (2005 г.);

12) в курсе "Практикум по решению задач" для студентов II курса 2 группы по направлению "Физико-математическое образование" (2005 г.).

На защиту выносятся:

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

2. Модель парадигмы многопоточного программирования, построенная в соответствии с предложенной структурой парадигмы;

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

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

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

числительных моделей, которыми являются: автомат Неймана (итеративный автомат), параллельная машина с неограниченными регистрами (ПМНР);

б. Применение для обучения многопоточному программированию учебно-ориентированных библиотек на языках: С, Pascal, Assembler, Java.

Последовательность решения основных задач исследования определила структуру построения диссертации. Диссертация состоит из введения, трех глав, заключения, библиографии и приложений. Основной текст занимает 181 с. (в том числе 15 рисунков, 11 таблиц), библиография (190 наименований) - 10 е., приложения - 31 с.

ОСНОВНОЕ СОДЕРЖАНИЕ ДИССЕРТАЦИИ

Во введении обоснована актуальность исследования; сформулирована его проблема, объект и предмет; выдвинута гипотеза исследования; определены задачи и методы исследования; раскрыта научная новизна, теоретическая и практическая значимость работы; изложены основные положения, выносимые на защиту.

В первой главе "Теоретические основы построения методики обучения многопоточному программированию" выделены теоретические и методологические основы исследования, а также сформулированы основные теоретические положения, определяющие построение методической системы обучения многопоточному программированию.

В § 1.1 рассмотрены: а) понятия и модели методики обучения конкретному учебному предмету; б) философские направления и концепции науки, учитываемые при конструировании определения парадигмы программирования в § 1.3 и при построении модели парадигмы многопоточного программирования в § 1.5; в) модели образования с выделением значительной роли "мысле-развивающей" модели в обучении программированию.

В § 1.2 выделены и проанализированы способы представления модели знаний. Основным способом представления модели знаний, применяемым в исследовании, выбран графовый способ.

В § 1.3 предложен вариант уточнения понятия "парадигма программирования" и конкретизирована структура парадигмы программирования [8].

Парадигма программирования - это система знаний, объединенная концептуальными основаниями, принятая в некотором научном сообществе и зафиксированная в литературе. Парадигма программирования имеет следующую структуру (см. Рис.1).

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

2 Количество исполнителей и тип их связей Данный элемент концептуальных оснований парадигмы программирования содержит информацию о количестве исполнителей программы (один или несколько) и типе их связей (в случае нескольких исполнителей). Возможны "сильные" и "слабые" связи исполнителей (по И.О. Одинцову).

Концептуальные основания

Семантические основания

Рис. I Структура парадигмы программирования

Концептуальные основания парадигмы программирования обычно формулируются на естественном языке и являются "основной" отличительш й особенностью парадигмы.

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

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

Математические основания и метаязыки для описания вычислений являются семантическими основаниями парадигмы программирования, т.е. определяют (формально или полуформально) семантику вычислительного процесса.

5. Специфические технологии программирования - это методы программирования, которые позволяют эффективно использовать концептуальные основания парадигмы для решения определенного класса задач.

6. Классические алгоритмы представляют собой "общепризнанные" (в данном научном сообществе) образцы решения задач, сформулированные на метаязыке данной парадигмы.

В качестве метаязыков для описания фрагментов технологических оснований парадигмы программирования применяются формальные и полуформальные языки семантических оснований данной парадигмы.

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

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

Каждый элемент структуры парадигмы программирования содержит идеи из концептуальных оснований этой парадигмы. Основную часть парадигмы программирования составляют концептуальные, семантические и технологические основания. Прагматические расширения парадигмы программирования можно рассматривать как дополнительные приложения данной парадигмы. Большинство элементов парадигмы программирования подвержены изменениям. Стабильными являются только концептуальные основания. Иногда дополняются (или модифицируются) семантические основания парадигмы. В условиях бурного развития аппаратного и программного обеспечения наиболее изменчивыми являются прагматические расширения. Меньшим изменениям подвергаются специфические технологии программирования.

В § 1.3 также рассмотрена классификация парадигм программирования, в которой выделяются: 1) по ориентированности на процессы: последовательное и параллельное (многопоточное, синхронное параллельное, распределенное) программирование; 2) по характеру операционной семантики: императивное. функциональное, продукционное и логическое программирование.

В § 1.4 описаны технологии отбора элементов методической системы обучения многопоточному программированию. В п. 1.4.1 рассмотрена концепция профессионально-педагогической направленности обучения информатике. В п. 1.4.2 проанализирован метод межпарадигмальной рефлексии (по И.А. Колесниковой) и описано его применение при отборе содержания обучения многопоточному программированию. В п. 1.4.3 проанализирован метод (принцип) отбора и коррекции содержания - логико-семиотический анализ содержания обучения многопоточному программированию, включающий выделение в каждой теме содержания образов (моделей) основных понятий и специфических технологий многопоточного программирования. В п.1.4.4 сформулирована технология отбора содержания обучения многопоточному программированию. В п. 1.4.5 описано влияние дидактических и методических принципов на элементы методической системы обучения, а также пред-

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

В §1.5, основываясь на определении понятия "парадигма программирования" и применении концептуальных шагов метода межпарадигмальной рефлексии, построена модель парадигмы многопоточного программирования. Представим её в форме следующего списка.

Модель парадигмы многопоточного программирования

❖ Концептуальные основания парадигмы

• Программа как описание системы процессов, разделяющих время одного исполнителя

• Понятия процесс, поток, задача, сопрограмма

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

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

• Грамматические системы

• Сети потохов данных

• Моделирование параллельных процессов с помощью сетей Петри

• Комбинаторная теория следов Мазуркевича

• Модальная и темпоральная логика для спецификации и верификации программ

• р-исчисление Милнера и структуры действий

• Алгебры процессов

■ Теория взаимодействующих последовательных процессов Xoapa(CSP)

■ Теория CCS

■ Теория АСР

• Сети из автоматов

■ Автоматы Неймана (итеративные автоматы)

■ Клеточные автоматы (итеративные автоматы)

■ Другие виды автоматов (одномерные и мноюмерные)

• Системы машин Тьюринга

• Параллельная машина с неограниченными peí истрами (ПМНР)

> Метаязыки для описания вычислений

• Метаязык параллельных вычислений (МГ1В)

• Унифицированный язык моделирования (UML) Технологические основания парадигмы

> Специфические технологии программирования

• Технологии реализации уровня параллелизма

• параллелизм на уровне микрокоманд

• параллелизм на уровне операторов (кроме циклов)

• параллелизм на уровне циклов

• параллелизм на уровне подпрограмм

• параллелизм на уровне потоков управления

• параллелизм на уровне процессов

• параллелизм на уровне приложений

• Технологии организации параллельной программы

• программа, параллельная по данным " программа, параллельная по задачам

• Технологии (модели) организации процессов

■ итеративный параллелизм

• рекурсивный параллелизм

■ производители и потребители (конвейеры, фильтры)

■ клиенты и серверы

• взаимодействующие равные

• Технологии взаимодействия процессов

■ Технологам передачи данных между процессами

- программирование с разделяемыми переменными

- программирование с помощью пересылки сообщений

- асинхронная отправка и синхронный прием сообщения

- синхронная отправка и синхронный прием сообщения

- асинхронная отправка и асинхронный прием сообщения

- синхронная отправка и асинхронный прием сообщения

- программирование с помощью удаленного вызова операций

■ Технологии передачи управления между процессами

- на низком уровне (вызов процедуры передачи управления)

- на высоком уровне

- без планировщика (диспетчера)

- с планировщиком (диспетчером)

• Технологии синхронизации процессов

■ взаимное исключение (критическая секция)

• условная синхронизация

• Технологии реализации синхронизации

• программирование блокировок

• программирование барьеров

• программирование семафоров (сигналов)

• программирование мониторов

• программирование каналов

> Классические алгоритмы

• алгоритмы над простейшими типами данных

• алгоритмы над фундаментальными типами данных

• алгоритмы над динамическими структурами данных

• алгоритмы планирования процессов

• алгоритмы синхронизации процессов

♦> Прагматические расширения парадигмы

> Проекции специфических технологий программирования

• Архитектурные и операционные платформы

• Программная и аппаратная реализация многопоточности

• Аппаратные средства поддержки многопоточности

• Мультипрограммный режим работы микропроцессора

■ Невытесняющая и вытесняющая схемы многозадачности

■ Применение аппарата прерываний

• Языки и системы программирования

■ Специализированные языки параллельного (многопоточного) программирования

• Расширения обычных последовательных языков

• Специализированные библиотеки для применения в программах, написанных на

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

> Программная реализация классических алгоритмов

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

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

Значительная часть модели парадигмы многопоточного программирования пересекается (или является общей) с моделями парадигм синхронного параллельного и распределенного программирования. Это касается (в большей степени) семантических и технологических оснований.

В п. 1.5.1 проанализированы важнейшие понятия парадигмы многопоточного программирования: "процесс", "поток", "задача", "сопрограмма". В п. 1.5.2 представлено соответствие математических оснований парадигмы многопоточного программирования и классов формальных языков. В п. 1.5.3 рассмотрены метаязыки для описания параллельных вычислений. В п. 1.5.4 приведены типологии специфических технологий многопоточного программирования и классических алгоритмов. В п.1.5.5 рассмотрено несколько ти- I пологий архитектурных и операционных платформ, языков и систем программирования.

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

В § 2.1 проанализировано содержание (относящееся к области многопоточного программирования), включенное в следующие нормативные документы: государственный образовательный стандарт по направлению "Физико-математическое образование" (2000 г.); межправительственную программу по информатике (ЮНЕСКО-1Р1Р, 1994 г.); американскую образовательную программу по информатике Сигпси1а'2001. На основе данного анализа сформулированы: цель-образ (внешняя цель) и цель-задание (внутренняя цель) обучения многопоточному программированию бакалавров физико-математического ■> образования. Внешней целью обучения многопоточному программированию является формирование у студентов знаний и умений по описанию (моделированию) параллельных процессов с помощью построения: а) математических моделей; б) компьютерных информационных моделей (структур данных и алгоритмов) для архитектуры однопроцессорной вычислительной системы. Внутренние цели обучения многопоточному программированию представлены в форме уровня достижения знаний и умений по каждой теме содержания.

В § 2.2 представлено отобранное содержание обучения многопоточному программированию бакалавров физико-математического образования (профиль информатика).

В п.2.2.1 выделена совокупность из восьми концептуальных линий в содержании обучения многопоточному программированию: 1) линия метаязыков; 2) линия формальных языков; 3) линия парадигм программирования; 4) линия моделирования парадигм параллельного программирования; 5) линия формальной семантики; 6) линия специфических технологий парадигмы многопоточного программирования; 7) линия примитивов синхроиизации; 8) линия классических параллельных алгоритмов.

В п.2.2.2 произведен отбор языков для обучения многопоточному программированию и выявлена роль учебно-ориентированных библиотек в обучении многопоточному программированию.

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

Рис 2. Логическая структура содержания обучения многопоточному программированию бакапавров физико-математического образования

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

В двойные рамки заключены номера и названия модулей, которые мы предлагаем обязательно включать в содержание обучения. В одинарные рамки помещены номера и названия модулей, которые из-за временных условий реального учебного процесса можно исключить из содержания или предложить студентам для самостоятельного изучения, или вынести в материал дополнительного спецкурса. Сплошной стрелкой показаны связи между модулями, отражающие порядок их изучения. Пунктирными стрелками показаны дополнительные связи, с помощью которых можно варьировать содержание обучения в зависимости от реальных условий учебного процесса. Первая цифра в номере модуля обозначает его принадлежность к одной из выделенных частей: а) цифра "О" означает, что модуль содержит необходимые на- i чальные знания из информатики для изучения фрагментов парадигмы многопоточного программирования; б) цифра "1" означает, что модуль содержит знания, относящиеся к математическим основаниям многопоточного программирования; в) цифра "2" означает, что модуль содержит знания, относящиеся к технологическим основаниям многопоточного программирования и их реализации на конкретном языке программирования; г) цифра "3" означает, что модуль содержит знания, относящиеся к связям математических оснований и многопоточного программирования на конкретном языке программирования.

В п.2.2.4 показаны основные этапы выполнения логико-семиотического анализа на примере проведения логико-семиотического анализа содержания темы "Автомат Неймана" в контексте парадигмы многопоточного программирования. В этом пункте также даны рекомендации по включению содержания обучения математическим основаниям многопоточного программирова- ,< ния в различные учебные курсы: "Дискретная математика", "Теория алгоритмов", "Программирование на языке LISP".

В п.2.2.5 представлено содержание обучения многопоточному программированию на языке: С, Modula-2, Pascal, Assembler, Java.

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

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

та, тематическая зачетная работа); итоговый контроль (тест, контрольная работа).

В § 2.5 представлена типология средств обучения многопоточному программированию, среди которых выделены: 1) информационные средства (учебные пособия); 2) дидактические средства (программные средства учебного назначения, демонстрационные примеры); 3) технические средства (компьютер, компьютерная сеть). Представлены программные средства учебного назначения: педагогические программные средства (методические указания к лабораторным работам и упражнениям), диагностические тестовые программы (программа "Test (v.1.0), 2002-2003"), предметно-ориентированные программные среды (автомат Неймана, ПМНР), учебные среды програм-1 мирования (языки и учебно-ориентированные библиотеки)

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

В § 3.1 сформулированы цели и задачи педагогического эксперимента; представлены структура и результаты основных этапов педагогического эксперимента; описано экспериментальное внедрение модульной программы содержания обучения многопоточному программированию в различные учебные курсы для студентов факультета математики РГПУ им. А.И. Герцена; отмечены методы и средства опытно-экспериментального исследования.

В § 3.2 описан фрагмент формирующего этапа педагогического эксперимента, в котором проводилась оптимизация модульной программы содер-i жания обучения многопоточному программированию по содержанию и по

времени методами теории графов. Результаты этой оптимизации использовались при построении логической структуры содержания обучения многопоточному программированию (п.2.2.3).

В § 3.3 представлены основные этапы анализа результатов контрольных работ на примере анализа результатов проведения контрольной работы по теме "Введение в теорию взаимодействующих последовательных процессов Ч Хоара". Анализ данной контрольной работы позволил провести коррекцию как теоретического, так и задачного материала содержания обучения многопоточному программированию по соответствующей теме. Сравнительный анализ результатов проведения некоторых других контрольных работ по многопоточному программированию представлен в приложениях.

В § 3.4 показано, что практическая реализация предлагаемой методической системы обучения многопоточному программированию бакалавров физико-математического образования, представленная в форме лекционных и практических занятий в учебных курсах, обладает следующими свойствами: 1) возможность достижения определенных прогнозируемых результатов обучения; 2) воспроизводимость результатов при обучении студентов различных групп одним преподавателем и при обучении студентов дру-

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

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

В приложениях приведены: 1) модульная программа содержания обучения многопоточному программированию; 2) тематические планы учебных курсов по программированию на языке: LISP, С, Modula-2, Pascal, Java; 3) взаимосвязь содержания, методов, форм и средств обучения многопоточному программированию; 4) тексты некоторых контрольных работ; 5) результаты эксперимента (результаты проведения контрольных работ).

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ

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

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

Основные результаты исследования нашли отражение в следующих публикациях:

1. Короткое А В. Лебедева И А , Швецкий М В Система лабораторных работ по обучению программированию па языке С. Простейшие и фундаментальные типы данных. Учебное пособие. - СПб.: Изд-во "Интсрлайн", 2002. -23,25 пл. / 7,75 пл. авт.

2. Короткое А В, Швецкий MB Система лабораторных работ по обучению программированию на языке С. Абстрактные типы данных: списки, деревья, графы. Элементы многопоточного программирования. Учебное пособие. - СПб.: Изд-во "Интерлайн", 2004.-23,75 пл. /12 п.л. авт.

3. Короткое А В К вопросу об актуальности обучения многопоточному, параллельному и распределенному программированию будущих учителей информатики // Теоретические и методические проблемы обучения в школе и вузе (математика, информатика). Межвузовский сборник научных трудов. -С.-Петербург, Мурманск, 2004. - 0,1 п.л.

4. Короткое AB К вопросу о классификации парадигм параллельного программирования // Теоретические и методические проблемы обучения в школе и вузе (математика, информатика). Межвузовский сборник научных трудов. - С.-Петербург, Мурманск, 2004. - 0,23 пл.

5. Короткое А В. О содержании обучения многопоточному программированию будущих учителей математики // Математическое моделирование: естественнонаучные, технические и гуманитарные приложения. Сборник, научных трудов / Под ред. Ю.А. Пичугина, A.B. Копыльцова. - СПб: ЛГУ им. A.C. Пушкина, 2004. - 0,25 пл.

6. Короткое A.B., Кудрявцева И.А., Стефанова Т.С., Швецкий М.В. Язык функционального программирования LISP: лабораторные работы и упражнения. Часть I. Учебное пособие. - СПб.: Изд-во "Интерлайн", 2004. -24,75 пл. /4,88 пл. авт.

7.ГолановаА.В., Короткое A.B., Кудрявцева И.А., Стефанова Т.С., Швецкий М.В. Язык функционального программирования LISP: лабораторные работы и упражнения. Часть II. Учебное пособие. - СПб.: Изд-во "Интерлайн", 2005 (февраль). - 25,25 пл. / 7,4 пл. авт.

8. Короткое А. В, Кудрявцева И А. К определению понятия "парадигма программирования" // Теоретические и методические проблемы обучения в школе и вузе (математика, информатика). Межвузовский сборник научных трудов. - С.-Петербург, Мурманск, 2005 (май). - 0,29 пл. / 0,14 пл. авт.

»26 2 85

РНБ Русский фонд

2006-4 28198

Подписано в печать 19.11.2005 Печать офсет. Бумага офсет. Формат бумаги 60x84/16. Объем 1,25 п.л. Тираж 100 экз. Заказ № 1243.

Отпечатано в типографии ГНУ ИОВ РАО, 191180, Санкт-Петербург, наб. р. Фонтанки, 78

Содержание диссертации автор научной статьи: кандидата педагогических наук, Коротков, Андрей Вячеславович, 2005 год

ВВЕДЕНИЕ

ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ПОСТРОЕНИЯ МЕТОДИКИ

ОБУЧЕНИЯ МНОГОПОТОЧНОМУ ПРОГРАММИРОВАНИЮ

§1.1. Философская методология исследования

§1.2. Способы представления модели знаний

§1.3. Классификация парадигм программирования.

§1.4. Технологии отбора элементов методической системы обучения многопоточному программированию

1.4.1. Концепция профессионально-педагогической направленности обучения информатике

1.4.2. Метод межпарадигмальной рефлексии как принцип отбора содержания обучения многопоточному программированию

1-. 4.3. Логико-семиотический анализ как принцип отбора и коррекции содержания обучения многопоточному программированию

1.4.4. Технология отбора содержания обучения многопоточному программированию

1-. 4. 5. Технология отбора методов, форм и средств обучения многопоточному программированию

§1.5. Модель парадигмы многопоточного программирования

1.5.1. Концептуальные основания парадигмы

1.5.2. Математические основания парадигмы

1.5.3. Метаязыки для описания вычислений

1.5.4. Технологические основания парадигмы

1.5.5. Прагматические расширения парадигмы

Выводы по главе

ГЛАВА 2. ПОСТРОЕНИЕ МЕТОДИЧЕСКОЙ СИСТЕМЫ ОБУЧЕНИЯ

МНОГОПОТОЧНОМУ ПРОГРАММИРОВАНИЮ.

§2.1. Цели обучения.

§2.2. Содержание обучения

2.2.1. Концептуальные содержательные линии

2.2.2. Отбор языков программирования

2.2.3. Логическая структура содержания обучения

2.2.4. Содержание обучения математическим основаниям многопоточного программирования

2.2.4.1. Логико-семиотический анализ содержания темы "Автомат Неймана" в контексте парадигмы многопоточного программирования

2.2.4.2. Курс по программированию на языке LISP

2.2.5. Содержание обучения технологическим основаниям многопоточного программирования

2.2.5.1. Курс по программированию на языке С.

2.2.5.2. Курс по программированию на языке Modula

2.2.5.3. Курс по программированию на языке Pascal

2.2.5.4. Курс по программированию на языке Assembler

2.2.5.5. Курс по программированию на языке Java

§2.3. Методы обучения.

§2.4. Формы обучения

§2.5. Средства обучения.

Выводы по главе 2.

ГЛАВА 3. ОРГАНИЗАЦИЯ И ПРОВЕДЕНИЕ ПЕДАГОГИЧЕСКОГО

ЭКСПЕРИМЕНТА.

§3.1. Основные этапы педагогического эксперимента

§3.2. Оптимизация учебной программы методами

•теории графов

§3.3. Использование анализа контрольных работ для корректировки содержания обучения.

§3.4. Проверка эффективности предложенной методической системы обучения многопоточному программированию

Выводы по главе

Введение диссертации по педагогике, на тему "Методика обучения многопоточному программированию бакалавров физико-математического образования"

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

- так, на компьютере можно запустить несколько приложений, которые будут "параллельно" выполнять каждое свою работу;

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

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

Однако, при обучении студентов информатике в педагогическом вузе, в частности, при обучении программированию уделяется очень мало внимания (если уделяется вообще!) параллельным вычислениям.

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

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

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

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

- философская и мировоззренческая функция состоит в изучении многопоточного программирования как инструмента моделирования понятия "параллельность" ("одновременность");

- пропедевтическая функция состоит в изучении многопоточного программирования как пропедевтики синхронного параллельного и распределенного программирования;

- прагматическая функция состоит в изучении многопоточного программирования как более эффективного или простого способа решения некоторых классов задач.

Необходимость наличия знаний у школьного учителя информатики по различным парадигмам программирования отмечается многими авторами, среди которых: Я. Н. Зайдельман, Л. Е. Самовольнова, Г.В.Лебедев [60].

Дисциплины профильной подготовки в области информатики Государственного образовательного стандарта по направлению "540200. Физико-математическое образование" [50] включают разделы ("Парадигмы программирования", "Технологии программирования", "Разделение ресурсов компьютера", "Формальные языки и автоматы"), которые предполагают присутствие элементов парадигмы многопоточного программирования.

Таким образом, актуальность исследования также подтверждают:

1) несоответствие уровня подготовки будущих учителей информатики в области многопоточного программирования современным требованиям, предъявляемым учителю информатики;

2) отсутствие методики обучения многопоточному программированию бакалавров физико-математического образования;

3) нехватка учебно-методических пособий для обучения многопоточному программированию в педагогическом вузе.

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

В дальнейшем будем понимать методику обучения конкретному учебному предмету согласно Т. А. Бороненко [25], как раздел педагогической науки, объектом которого является процесс обучения учебному предмету, предметом - проектирование, конструирование, реализация (внедрение в педагогическую практику), анализ (педагогический эксперимент) и развитие (оптимизация) методической системы обучения рассматриваемому учебному предмету.

Целью исследования является разработка методической системы обучения-многопоточному программированию бакалавров физико-математического образования как составляющей методической системы их фундаментальной подготовки в предметной области.

Объектом исследования выступает процесс обучения многопоточному программированию бакалавров физико-математического образования в педагогическом университете.

Предметом исследования является методическая система обучения многопоточному программированию бакалавров физико-математического образования.

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

1. Философскими концепциями развития научного знания (по Т. Куну и И.Лакатосу) для уточнения понятия "парадигма программирования" и конкретизации ее структуры;

2. Моделью парадигмы многопоточного программирования, имеющей выделенную структуру;

3. Классификацией парадигм программирования и классификацией специфических технологий многопоточного программирования;

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

Для решения обозначенной выше проблемы и проверки достоверности гипотезы исследования были поставлены следующие задачи.

Первая группа задач (методологического характера) - определение исходных методологических принципов и концепций построения методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1. Выбрать философскую и специально-научную методологию исследования в области методики обучения многопоточному программированию;

2. Выделить концептуальные шаги метода межпарадигмальной рефлексии при отборе содержания обучения многопоточному программированию;

3. На основе понятия "логико-семиотический анализ содержания обучения информатике" выделить основные этапы проведения логико-семиотического анализа содержания обучения многопоточному программированию;

4. Выбрать технологии отбора элементов методической системы обучения многопоточному программированию.

Вторая группа задач (теоретического характера) - построение методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1. Уточнить определение понятия "парадигма программирования" и конкретизировать общую структуру парадигмы программирования;

2. На основе анализа научной и учебно-методической литературы, а также выделенной структуры парадигмы программирования, построить модель парадигмы многопоточного программирования;

3. Сформулировать цели обучения многопоточному программированию;

4. Осуществить отбор (оптимизацию и достраивание) содержания обучения многопоточному программированию;

5. Выбрать методы и формы обучения многопоточному программированию:

6. Выбрать (или создать) средства обучения многопоточному программированию.

Гретья группа задач (практического характера) - частичная реализация построенной методической системы обучения многопоточному программированию бакалавров физико-математического образования:

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

2. Провести экспериментальную проверку разработанных теоретических положений.

Для решения сформулированных задач использовались следующие лштоЗы исследования:

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

- анализ научной литературы по математике, информатике, вычислительной технике, методике преподавания математики и информатики;

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

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

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

Заключение диссертации научная статья по теме "Теория и методика обучения и воспитания (по областям и уровням образования)"

Выводы по главе 3

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

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

- 178 держанию и по времени методами теории графов. Результаты этой оптимизации использовались при построении логической структуры содержания обучения многопоточному программированию (см. п. 2. 2.3).

3. В §3.3 представлены основные этапы анализа результатов контрольных работ на примере анализа результатов контрольной работы по теме "Введение в теорию взаимодействующих последовательных процессов Ч.Хоара". Анализ данной контрольной работы позволил провести коррекцию как теоретического, так и задачного материала содержания обучения многопоточному программированию по соответствующей теме. Сравнительный анализ результатов проведения некоторых других контрольных работ по многопоточному программированию представлен в приложениях.

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

- 179 -ЗАКЛЮЧЕНИЕ

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

Перечислим основные результаты работы.

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

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

- 180

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

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

Опишем перспективные направления развития предложенной методической системы обучения многопоточному программированию бакалавров физико-математического образования:

1) Дальнейшее развитие содержания обучения многопоточному программированию может включать исследование следующих разделов: "Модель ПРАМ", "Формальная дедуктивна и денотационная семантика параллельного выполнения", "Элементы унифицированного языка моделирования (UML)", "Клеточные автоматы";

2) Создание конкретных курсов по программированию, включающих элементы многопоточного программирования (например: создание курсов по программированию на языках С++, Delphi и Perl);

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

4) Исследование вопросов, касающихся использования для обучения многопоточному программированию других форм, методов и средств обучения;

- 181

5) Исследование возможности изучения некоторых разделов многопоточного программирования в школе (например: "ПМНР", "Элементы многопоточного программирования на языке Pascal").

Список литературы диссертации автор научной работы: кандидата педагогических наук, Коротков, Андрей Вячеславович, Санкт-Петербург

1. Аверьянов А. H. Системное познание мира: Методологические проблемы. - М. : Политиздат, 1985. - 263 с.

2. Агафонов В. Н. Спецификация программ: понятийные средства и их организация. Новосибирск: Наука, 1987. 240 с.

3. Андрианов А.Н., Бычков С.П., Хорошилов А. И. Программирование на языке симула-67. М. : Наука. Глав. ред. физ. -мат. лит., 1985. - 288 с.

4. Анохин П. К. Избранные труды: Философские аспекты теории функциональной системы. М. : Наука, 1978. - 400 с.

5. Арнолд К., Гослинг Дж., Холмс Д. Язык программирования Java.- M.: Издательский дом "Вильяме", 2001. 624 с.

6. Архангельский А. Я. Программирование в С++ Builder 6. -M.: ЗАО "Издательство БИНОМ", 2003. 1152 с.

7. Архангельский С. И. Учебный процесс в высшей школе, его закономерные основы и методы. М. : Высшая школа, 1980. - 368 с.

8. Бабанский Ю.К. Концепция содержания, методов и форм организации обучения в современной общеобразовательной школе // Избранные педагогические труды. М.: Педагогика, 1989.- С. 416-434.

9. Баранова Е.В., Числер H.A. Введение в программирование на языке Java: Уч. пособие, СПб.: Изд-во "СОЮЗ", 2001. - 91 с.

10. Баранова Е.В. Введение в язык UML. СПб.: Изд-во "Анатолия", 2003, - 51 с. И. Барздинь Я.М. Моделирование логических сетей на автоматах Неймана-Черча. "Проблемы кибернетики", 1966, в. 17.

11. Батурина Г. И., Байер У. Цели и критерии эффективности обучения // Советская педагогика, 1975, №4. С. 41-49.

12. Белецкий Я. ТопСпид: Расширенная версия языка МОДУЛА-2 для персональных компьютеров IBM. М. : Машиностроение, 1993.- 608 с.

13. Белошапка В. К. 0 языках, моделях и информатике // Информатика и образование, 1987, №6. С. 12-16.

14. Белошапка В. К. Три аспекта мироздания или мир как информационная структура // Информатика и образование, 1988, №5.- С. 3-9.

15. Белошапка В. К. Информатика как наука о буквах // Информатика и образование, 1992, №1. С. 6-12.

16. Бен-Ари М. Языки программирования. Практический сравнительный анализ. М. : Мир, 2000. - 366 с.

17. БеспалькоВ.П. Теория учебника. М. : Педагогика, 1988. 160 с.

18. Беспалько В. П. Слагаемые педагогической технологии. М.: Педагогика, 1989. - 192 с.- 183

19. Бешенков С. А. Школьная информатика: новый взгляд, новый курс // Педагогическая информатика, 1993, №2. С.5-10.

20. Богачёв К.Ю. Основы параллельного программирования. М.: БИНОМ. Лаборатория знаний, 2003. - 342 с.

21. Болтянский В. Г. Как устроена теорема? // Математика в школе, 1973, №1. С. 41-50.

22. Большой энциклопедический словарь. М.: Большая Российская энциклопедия; СПб.: Норинт, 1998. - 1456 с.

23. Бороненко Т. А. Методика обучения информатике. Теоретические основы. СПб.: РГПУ им. А. И. Герцена, 1997. - 99 с.

24. Бороненко Т,А. Теоретическая модель системы методической подготовки учителя информатики. Дисс. д.п.н. СПб., - 1997.

25. Бочкин А. И. Методика преподавания информатики: Учеб. пособие. Мн.: Выш. шк., 1998. - 431 с.

26. Буга П. Г. Создание учебных книг для вузов. М.: МГУ, 1993.- 223 с.

27. Бурбаки Н. Очерки по истории математики. М.: ИЛ, 1963.- 292 с.

28. Васильев В.М. Выпускная квалификационная работа бакалавра физико-математического образования, профиль "информатика".- СПб.: Изд-во РГПУ им. А.И.Герцена, 2004. 92 с.

29. Векторизация программ: теория, методы, реализация. Сб. статей: Пер. с англ. и нем. М.: Мир. 1991. - 275 с.

30. Вербицкий A.A. Активное обучение в высшей школе: контекстный подход. М.: Высшая школа, 1991. - 353 с.

31. Вирт Я. Программирование на языке М0ДУЛА-2. М.: Мир, 1987.- 224 с.

32. Водолазкий В., Семериков В. Энциклопедия Perl. СПб.: Питер, 2002. - 576 с.

33. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. СПб.: БХВ-Петербург, 2004. 608 с.

34. Вопросы теории и практики обучения информатике. Сборник научных трудов. / Под редакцией В.В.Лаптева Санкт-Петербург, РГПУ, 1998. - 146 с.

35. Гадамер Г.-Г. Актуальность прекрасного. М.: Искусство, 1991.

36. Гадамер Г. -Г. Истина и метод: Основы философской герменевтики. М.: Прогресс, 1988.

37. Гершунский Б. С. Прогнозирование содержания обучения в техникумах. М., 1980. - 144 с.

38. Гершунский Б. С. Компьютеризация в сфере образования: Проблемы и перспективы. М.: Педагогика, 1987. - 264 с.

39. Гинецинский В. И. Основы теоретической педагогики. СПб.: Изд-во С.-Петерб. ун-та, 1992. - 154 с.

40. Глушков В.М. Теория автоматов и формальные преобразования микропрограмм. "Кибернетика", 1965, №5.

41. Глушков В.М. Кибернетика. Вопросы теории и практики. М.: Наука, 1986. - 488 с.

42. Голанова A.B. Методика обучения теории алгоритмов' будущих учителей информатики. Дисс. к. п. н. СПб., 2003. - 201 с.- 184

43. Голанова A.B., Короткое A.B., Кудрявцева И. А., Стефано-ва Т. С., Швецкий М.В. Язык функционального программирования LISP: лабораторные работы и упражнения. Часть II. Учебное пособие. СПб.: Изд-во "Интерлайн", 2005. - 404 с.

44. Голицын Г. А. Информация и творчество: на пути к интегральной культуре. М.: Информационно-издательское агенство "Русский мир", 1997. - 304 с.

45. Головкин Б. А. Вычислительные системы с большим числом процессоров. М.: Радио и связь, 1995. - 320 с.

46. Гордеев A.B., Молчанов А. Ю. Системное программное обеспечение. СПб.: Питер, 2001. - 736 с.

47. Горский Л. В. Определение. М.: Мысль, 1974. - 312 с.

48. Дедков А.Ф. Абстрактные типы данных в языке АТ-Паскаль.- М.: Наука, 1989. 200 с.

49. Дидактика средней школы. Некоторые проблемы современной дидактики / Под ред. М. А. Данилова и М. Н. Скаткина М.: Просвещение, 1975. - 304 с.

50. Дименштейн Р., Яковлев А. Информатика или компьютерное дело // Информатика и образование, 1989, №3. С. 105-107.

51. Дрижун H.J1. Профессиограмма преподавателя химии (Дидакти-ко-методический аспект). СПб.: Образование, 1992. - 72 с.

52. Дружинин В. В., Которое Д. С. Проблемы системологии (проблемы теории сложных систем). М.: Сов.радио, 1976. - 296 с.

53. Ершов А.П., Звенигородский Г.А., Первин Ю.А. Школьная информатика (концепции, состояния, перспективы) // Информатика и образование. 1995. N1. С. 3-19.

54. Загвязинский В. И. 0 современной трактовке дидактических принципов // Сов. педагогика. 1978. N10. С.66-72.

55. Загвязинский В. И., Гриценко Л. И. Основы дидактики высшей школы. Тюмень: Изд-во Тюменск.госуд.ун-та, 1978. 91 с.

56. Загузов Н.И., Писарева С.А., Тряпицина А.П. Современные диссертационные исследования по педагогике: книга для эксперта. Монография. М.: ИРП0, 2003. - 168 с.

57. Зайдельман Я. Н., Самовольнова Л. Е., Лебедев Г. В. Три кита школьной информатики // Информатика и образование. 1993. N4.- С. 13-17.

58. Звенигородский Г.А. Некоторые особенности учебных языков и систем программирования // Экспериментальная информатика. Новосибирск, 1981. С.81-91.

59. Звенигородский Г. А. Анализ требований к программным средствам // Проблемы школьной информатики. Новосибирск, 1986.- С. 16-23.

60. Извозчиков В.А. Инфоноосферная эдукология. Новые информационные технологии обучения. СПб.: Образование, 1991.- 120 с.- 185

61. Ильин В. В. Теория познания. Эпистемология. М.: Издательство МГУ, 1994. - 136 с.

62. Илюшин Л. С. Методология и методика кросс-культурного исследования образовательной мотивации современных школьников: Автореф. докт. дис. Специальность: 13.00.01 общая педагогика, история педагогики и образования. СПб., 2004. - 46 с.

63. Информатика в понятиях и терминах: Кн. для учащихся ст.классов сред. шк. / Г. А. Бордовский, В. А. Извозчиков, Ю. В. Исаев, В.В.Морозов. М.: Просвещение, 1991. - 208 с.

64. Иртегов Д. В. Введение в операционные системы. СПб.: БХВ-Петербург, 2002. - 624 с.

65. История языков программирования. Хронологическая таблица // Монитор. 1991. N2. С. 28-29.

66. Йенсен К., Вирт Н. Паскаль: Руководство для пользователя. М.: Компьютер, 1993. 256 с.

67. Каган Б.М. Электронные вычислительные машины и системы.- М.: Энергоатомиздат, 1991. 592 с.

68. Канке В. А. Основные философские направления и концепции науки. Итоги XX столетия. М.: Логос, 2000. - 320 с.

69. Карри X. Основания математической логики. М.: Мир, 1969.- 568 с.

70. Кейлингерт П. Элементы операционных систем. Введение для пользователей / Пер. с англ. Б.Л. Лисса и С.П.Тресковой.- М.: Мир, 1985. 295 с.

71. Киров С. Н. Методика обучения теории параллельных вычислений в условиях двухступенчатой подготовки специалистов по информатике в педагогических вузах. Дисс. к.п.н. СПб., 1996.

72. Кнут Д. Искусство программирования для ЭВМ. Т. 1: Основные алгоритмы. М.: Мир, 1976. - 736 с.

73. Кнут Д. Искусство программирования для ЭВМ. Т. 2: Получисленные алгоритмы. М.: Мир, 1977. - 724 с.

74. Кнут Д. Искусство программирования для ЭВМ. Т. 3: Сортировка и поиск. М.: Мир, 1978. - 844 с.

75. Кокин А.Г. Моделирование систем: Учебное пособие. Курган: Изд-во Курганского гос. ун-та, 1998. - 100 с.

76. Кокин А.Г. Процессы: Учебное пособие. Курган: Изд-во Курганского гос. ун-та, 2000. - 59 с.

77. Колесникова И. А. Педагогическая реальность: опыт межпарадиг-мальной рефлексии. Курс лекций по философии педагогики.- СПб.: "ДЕТСТВО-ПРЕСС", 2001. 288 с.

78. Колесникова И.А. Основы технологической культуры педагога: Научно-методическое пособие для системы повышения квалификации работников образования. СПб.: Изд-во "Дрофа", 2003.- 285 с.- 186

79. Компьютеры на СБИС: В 2 кн. Пер. с япон. Кн.1 / Мотоока Т., Томита С., Танако X. и др. М.: Мир, 1988. - 392 с.

80. Кондаков Н. И. Логический словарь-справочник. М.: Наука, 1976. - 720 с.

81. Корнеев В. В. Параллельные вычислительные системы. М.: Но-лидж, 1999.

82. Короткое A.B. К вопросу о классификации парадигм параллельного программирования // Теоретические и методические проблемы обучения в школе и вузе (математика, информатика). Межвузовский сборник научных трудов. С.-Петербург, Мурманск,2004, с. 102-105.

83. Короткое A.B., Кудрявцева И.А. К определению понятия "парадигма программирования" // Теоретические и методические проблемы обучения в школе и вузе (математика, информатика). Межвузовский сборник научных трудов. С.-Петербург-Мурманск,2005, с. 107-112.

84. Короткое А. В., Кудрявцева И. А., Стефанова Т. С., Швецкий М.В. Язык функционального программирования LISP: лабораторные работы и упражнения. Часть I. Учебное пособие. СПб.: Изд-во "Интерлайн", 2004. - 396 с.

85. Короткое А. В., Лебедева И. А., Швецкий М.В. Система лабораторных работ по обучению программированию на языке С. Простейшие и фундаментальные типы данных. Учебное пособие. СПб.: Изд-во "Интерлайн", 2002. 372 с.

86. Короткое А. В., Швецкий М.В. Система лабораторных работ по обучению программированию на языке С. Абстрактные типы данных: списки, деревья, графы. Элементы многопоточного программирования. Учебное пособие. СПб.: Изд-во "Интерлайн", 2004. - 380 с.

87. Косова И.С. Использование языка LISP при обучении функциональному программированию будущих учителей математики и информатики. Дисс. к.п.н. СПб., 2001.

88. Котов В. Е. Сети Петри. М.: Наука, 1984. - 160 с.

89. Кувалдина Т. А. Разработка модели знаний по информатике выпускника общеобразовательной школы: Автореф. канд. дис. Специальность: 13.00.02 информатика. М., 1997. - 18 с.

90. Кун Т. Структура научных революций. М.: Прогресс, 1977.- 187

91. Кусжанова А. Ж. Социально-философские проблемы теории образования. Монография. СПб. Из-во Синтез-Полиграф, 2003.- 471 с.

92. Лабораторные и практические работы по методике преподавания математики: Учеб. пособие для студентов физ.-мат. спец. пед. ин-тов / Е.И. Лященко, К. В. Зобкова, Т.Ф.Кириченко и др.; Под ред. Е.И.Лященко. М.: Просвещение, 1988. - 223 с.

93. Лакатос И. История науки и ее рациональные реконструкции // В сб. Структура научных революций: Пер.с англ. / Т.Кун; Сост. В.Ю. Кузнецов. М.: ООО "Изд-во ACT", 2001.

94. Лакатос И. Фальсификация и методология научно-исследовательских программ // В сб. Структура научных революций: Пер.с англ. / Т.Кун; Сост. В.Ю. Кузнецов. М.: ООО "Изд-во ACT", 2001.

95. Ланина И. Я. Методика формирования познавательного интереса школьников в процессе обучения физике: Автореф. докт. дис. Л., 1986.

96. Лаптев В., Немцев А. Учебные компьютерные модели // Информатика и образование. 1991. N4. С.70-73.

97. Лаптев В. В., Рыжова Я. И., Швецкий М.В. Методическая теория обучения информатике. Аспекты фундаментальной подготовки.- СПб.: Изд-во С. -Петерб. ун-та, 2003. 352 с.

98. Лаптев В.В., Швецкий М.В. Метод демонстрационных примеров в обучении информатике студентов педагогического вуза // Педагогическая информатика, 1994, №2. С. 7-16.

99. Лаптев В.В., Швецкий М.В. Методическая система фундаментальной подготовки в области информатики: теория и практика многоуровневого педагогического университетского образования.- СПб.: Издательство Санкт-Петербургского университета, 2000. 508 с.

100. Леднев B.C. Содержание образования. М.: Высшая школа, 1989. - 360 с.

101. Лекции лауреатов премии Тьюринга. М.: Мир, 1993. 560 с.

102. Леоненков A.B. Самоучитель UML. -СПб.: БХВ-Петербург, 2002.- 304 с.

103. Лященко Е.И. Лабораторные и практические занятия по методике преподавания математики. Метод, реком. для студ. Л.: ЛГПИ им. А.И.Герцена, 1988. - 52 с.

104. Лященко Е.И., Радионова Н.Ф., РегушЛ.А., Степанова Н. Л. Развернутые планы лекций и учебные задания для студентов по курсу "Теоретические основы обучения математике" (Т00М). -СПб.: Изд-во "Образование", 1997. 37 с.

105. Мак-Коннел Дж. Анализ алгоритмов. Вводный курс. М.: Техносфера, 2002. - 304 с.

106. Математика. Большой энциклопедический словарь / Гл. ред. Ю.В. Прохоров. 3-е изд. - М.: Большая Российская энциклопедия, 2000. - 848 с.

107. Математика: Школьная энциклопедия. М.: Большая Российская энциклопедия, 2003. - 528 с.- 188

108. Математическая энциклопедия. В 5-ти т. М. : Советская энциклопедия, 1977-1985.

109. Матросов А. В., ЧаунинМ.П. Perl. Программирование на языке высокого уровня. СПб. : Питер, 2003. - 608 с.

110. Махмутов М.И. Организация проблемного обучения в школе.- М. : Просвещение, 1977. 240 с.

111. Методика преподавания математики в средней школе: Общая методика/В.А.Оганесян, Ю. М. Колягин, Г. Л. Луканкин, В. Я. Сан-нинский. М. : Просвещение, 1980. - 368 с.

112. Методы обучения в современной общеобразовательной школе. Сост. Г.Д.Кириллова. Л.: ЛГПИ, 1986. - 44 с.

113. Мордкович А. Г. Профессионально-педагогическая направленность специальной подготовки учителя математики в педагогическом институте: Автореф. докт. дис. М., 1986.

114. Мур Э.Ф. Математические модели самовоспроизведения. Улая С. Некоторые математические проблемы, связанные с процессом роста фигур. В кн. : Математические проблемы в биологии. Пер с англ. М., 1966.

115. Нейман Дж. Теория самовоспроизводящихся автоматов. Пер. с англ. / Под. ред. В. И. Варшавского. М. : Мир, 1971.- 382 с.

116. Немнюгин С.А., Стесик 0.J1. Параллельное программирование для микропроцессорных вычислительных систем. СПб.: БХВ-Петер-бург, 2002. - 400 с.

117. Непомнящий В.А. , Рякин О.М. Прикладные методы верификации программ. М. : Радио и связь, 1988. - 256 с.

118. Никитина H.H., Железнякова О. М., Петухов М. А. Основы профессионально-педагогической деятельности: Учеб. пособие для студ. учреждений сред. проф. образования. М.: Мастерство, 2002. - 288 с.

119. НоутонП., Шилдт Г. Java™2. -СПб.: БХВ-Петербург, 2001.- 1072 с.

120. Оганесян В. А. Принципы отбора основного содержания обучения математике в средней школе. Ереван: Луйс, 1984. 215 с.

121. Одинцов И.О. Профессиональное программирование. Системный подход. СПб.: БХВ-Петербург, 2002. - 512 с.

122. Ожегов С. И., Шведова Н.Ю. Толковый словарь русского языка: 80000 слов и фразеологических выражений / Российская академия наук. Институт русского языка им. В. В. Виноградова. -4-е изд., дополненное. М.: Азбуковник, 1999. - 944 с.

123. Олифер В.Г., Олифер H.A. Сетевые операционные системы.- СПб.: Питер, 2001.

124. Основы педагогики высшей школы. М. : Моск. технол. ин-т пищевой пром-ти, 1987. - 123 с.- 189

125. Основы педагогики и психологии высшей школы. М.: Изд-во Моск. ун-та, 1986. - 304 с.

126. Педагогика высшей школы. Л.: Изд-во Ленингр. госуд. пед. ин-та, 1974. - 116 с.

127. Пертков В. И., Савинков В.М. Толковый словарь по информатике. М.: Финансы и статистика, 1995. - 544 с.

128. Пидкасистый П. И. Самостоятельная деятельность учащихся.- М.: Педагогика, 1972. 184 с.

129. Пирогов В.Ю. Ассемблер для Windows. 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2003. - 656 с.

130. Питерсон Дж. Теория сетей Петри и моделирование систем.- М.: Мир, 1984. 264 с.

131. Платонова Н. М., Якунин В. А. Педагогика. Теория обучения: Учебное пособие. -СПб.: Изд-во С.-Петерб. ун-та, 1993.- 84 с.

132. Подготовка учителя математики: Инновационные подходы: Учеб. пособие / Под ред. В. Д. Шадрикова. М.: Гардарики, 2002.- 383 с.

133. Пратт Т., Зелковиц М. Языки программирования: разработка и реализация. СПб.: Питер, 2002. - 688 с.

134. Пыткало А.М. Методическая система обучения геометрии в начальной школе: Автореф. докт. дис. М., 1975. 60 с.

135. Пшкало А.М. Содержание начального образования // Совершенствование содержания образования в школе. М.: Педагогика, 1985.

136. Реале Д., Антисери Д. Западная философия от истоков до наших дней. Том 4. От романтизма до наших дней. ТОО ТК "Пет-ро-полис", Санкт-Петербург, 1997. - 880 с.

137. Рекомендации по преподаванию информатики в университетах (Computing Curricula 2001: Computer Science): Пер. с англ. -СПб., 2002. 372 с.

138. Роберт И. В. Современные информационные технологии в образовании: дидактические проблемы; перспективы использования. -М.: Школа-Пресс, 1994. 205 с.

139. Романовский И. В. Дискретный анализ. СПб.: Невский диалект, 2003. - 254 с.

140. Рыжова Н.И. Развитие методической системы фундаментальной подготовки будущих учителей информатики в предметной области: Автореф. дисс. д. п. н. СПб., 2000. - 43 с.

141. Рыжова Я. И., Голанова А. В., Швецкий М.В. Упражнения по теории алгоритмов. Учебное пособие для студентов математического факультета / Под ред. В. В. Лаптева. СПб.: Изд-во "Дмитрий Буланин", 2000. - 304 с.

142. Себеста Р. У. Основные концепции языков программирования.- М.: Издательский дом "Вильяме", 2001. 672 с.

143. Советский энциклопедический словарь / Гл. ред. A.M. Прохоров. 4-е изд. - М.: Сов. энциклопедия, 1988. - 1600 с.

144. Современные проблемы методики преподавания (Методика как теория конкретно-предметной педагогики). Л.: Изд-во Ленингр. госуд. пед. ин-та, 1988. - 88 с.

145. Современный философский словарь / Под общей ред. д. ф.н., проф. В.Е.Кемерова. Лондон, Франкфурт-на-Майне, Париж, Люксембург, Москва, Минск. ПАНПРИНТ, 1998. 1064 с.

146. Соловьев Г.Я., Никитин В. Д. Операционные системы ЭВМ: Учеб. пособие для студентов вузов, обучающихся по спец. "ЭВМ, сист., компл. и сети" и "Автом. сист. обр. инф. и упр."- М.: Высш. шк., 1989. 255 с.

147. Сотникова О.А. Методологический подход к изучению теоретического материала курса алгебры и теории чисел в педвузе: Автореф. канд. дис. (13.00.00). СПб., 1996. - 18 с.

148. Спиркин А. Г. Философия: Учебник. 2-е изд. - М.: Гардарики, 2002. - 736 с.

149. Страуструп Б. Дизайн и эволюция С++. М.: ДМК Пресс, 2000.- 448 с.

150. Талызина Н.Ф. Теоретические проблемы программированного обучения. М.: МГУ, 1969. - 133 с.

151. Теоретические основы содержания общего среднего образования / Под ред. В. В. Краевского, И. Я. Лернера. М.: Педагогика, 1983. - 352 с.

152. Трахтенброт Б. А. Алгоритмы и вычислительные автоматы. М.: Сов. радио, 1974. - 200 с.

153. ТузоваЛ.В., Швецкий М.В. Система лабораторных работ для обучения императивному программированию будущих учителей информатики / Вопросы теории и практики обучения информатике. Сб. науч. тр. СПб.: РГПУ, 1996. - С. 89-92.

154. Тупальский Я. И. Основные проблемы вузовского учебника.- Минск: Вышэйш. шк., 1976. 183 с.

155. Уолл Л., Кристиансен Г., Ореант Д. Программирование на Perl.- СПб.: Символ-Плюс, 2002. 1152 с.

156. Успенский В. А., Семенов А.Л. Теория алгоритмов: основные открытия и приложения. М.: Наука, 1987. - 288 с.

157. Философия и методология науки: Учебное пособие для студентов высших учебных заведений/Под ред. В.И. Купцова. М.: Аспект Пресс, 1996. - 551 с.

158. Философский словарь / Под ред. И.Т.Фролова. 5-е изд. - М.: Политиздат, 1987. - 590 с.

159. Философский энциклопедический словарь. М.: Советская Энциклопедия, 1983. - 840 с.

160. Философский энциклопедический словарь, М.: Советская Энциклопедия, 1989. - 815 с. 169. Философский энциклопедический словарь. - М.: ИНФРА-М, 2002.- 576 с.- 191

161. Френкель А., Бар-Хиллел И. Основания теории множеств. М.: Мир, 1966. - 555 с.

162. Фридман J1.M. Сюжетные задачи по математике. История, теория, методика. М.: Школьная Пресса, 2002. - 208 с.

163. Хабибуллин И. Ш. Самоучитель Java. СПб.: БХВ-Петербург, 2001. - 464 с.

164. Хазанкин Р. Г., Зильбергер Н.И. Ключевые задачи в обучении математике // Учитель Башкирии. 1984. N9. С.58-61.

165. Хамов Г. Г. Методическая система обучения алгебре и теории чисел в педвузе с точки зрения профессионально-педагогического подхода. СПб.: Изд-во Российск. госуд. пед. ун-та, 1993. - 142 с.

166. Хоар Ч. Взаимодействующие последовательные процессы. М.: Мир, 1989. - 264 с.

167. Хокни Р., Джессхоуп К. Параллельные ЭВМ. Архитектура, программирование и алгоритмы. М.: Радио и связь, 1986. 392 с.

168. Чёрч А. Введение в математическую логику. Т. 1. М.: ИЛ, 1960. - 486 с.

169. Шварц J1. Р., Феникс Т. Изучаем Perl. 3-е издание. СПб.: Питер; К.: Издательская группа BHV, 2002. - 288 с.

170. Швецкий М.В. Система лабораторных работ по программированию на диалекте TURBO Pascal: Алгоритмы на графах. СПб: РГПУ, 1997. - 180 с.

171. Шнейдеров B.C. Занимательная информатика. СПб.: Политехника, 1994. - 304 с.

172. Щедровицкий Г. П., Розин В.М., Алексеев Я. Г., Непомнящая Н.И. Педагогика и логика. М.: КАСТ АЛЬ, 1993. 196 с.

173. Элиенс А. Принципы объектно-ориентированной разработки программ. М.: Издательский дом "Вильяме", 2002. - 496 с.

174. Эндрюс Г. Р. Основы многопоточного, параллельного и распределенного программирования. М.: Издательский дом "Вильяме", 2003. - 512 с.

175. Энциклопедия кибернетики. Т. 1. Киев: Гл. ред. Укр. Сов. энциклопедии, 1974. 607 с.

176. Ястребова Е.В. Параллельные алгоритмы и транспьютеры (Учебно-методическое пособие). М.: УРСС. 1997. - 163 с.

177. Aiken R., Balasubrahmanian А., Brauer W., Buckingham D., Hebenstreit J., Khvilon E., Levrat В., bovis F., Murray-Lasso M., Turner J., Weert van Т. A Modular Curriculum in Computer Science, UNESC0-IFIP, 1994. ED/94/WS/13.

178. Hernie F.C. Iterative arrays of lagical circuits. New York -London, 1961.

179. Hoare C.A.R. Monitors: an Operating System Structuring Concept // Comm. ACM. 1974. Vol. 17. N10. P. 549-557.

180. Hopfer R. Informationsverarbeitung mit PASCAL/Reiner Hopfer. 1. Aufl. - Berlin: Verl. Technik. 1989. - 336 s.

181. Kaaz, M. Albert. Elemente der mathematischen Logik fu'r den Gebrauch in Physik und Technik. 1. Aufl. - Mu'nchen, Wien: Oldenbourg, 1977. - 243 s.- 192