МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ОРГАНИЗАЦИИ ДИСТАНЦИОННОГО ФАКУЛЬТАТИВНОГО КУРСА «ОСНОВЫ ЯЗЫКА ЛИСП» - Студенческий научный форум

V Международная студенческая научная конференция Студенческий научный форум - 2013

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

Сорих Т.В. 1
1Тобольская государственная социально-педагогическая академия им. Д.И.Менделеева
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Введение

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

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

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

В тоже время необходимость получения основного образования в течение всей жизни или переквалификации развивают потенциал дистанционного обучения. С развитием и распространением Интернет технологий у дистанционного обучения появились новые возможности. В мире появилось огромное количество курсов дистанционного обучения и целые университеты дистанционного обучения [2]. Теперь стоит вопрос: «Какую тему стоит выбрать для разработки такого курса?»

Функциональное программирование представляет собой одну из сформировавшихся в процессе исторического развития парадигм. Каждая из них реализует модель, описывающую какое-либо понятие, которое определяет вычислительный процесс и связано с понятием алгоритма. Отличительной чертой функционального программирования является то, что оно основывается на математическом аппарате (-исчислении, исчислении комбинаторов и теории рекурсивных функций), основные понятия которого моделируют понятие вычислимой функции [24].

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

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

Функциональному программированию на языке LISP посвящены работы отечественных и зарубежных специалистов - К.Н. Бенерта и М.Л. Герасина, Р. Брукс, С. С. Лаврова и Г. С. Силагадзе, Дж. Маккарта и других. Во многих работах отмечается необходимость включения в содержание обучения разделов, представляющих все парадигмы программирования, в том числе и функциональную. Поэтому становится необходимым построение методических рекомендаций для обучения функциональному программированию на базе языка LISP [24].

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

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

Анализ возникшей проблемной ситуации и поиски выхода из нее составляют содержание настоящей работы.

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

Предметом исследования является структура, содержание и форма организации дистанционного факультативного курса «Основы языка Лисп».

Цель исследования: Разработать методические рекомендации по организации дистанционного обучения функциональному программированию в школе на основе языка LISP.

Для достижения поставленной цели были поставлены следующие задачи:

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

  2. Определить возможности организации дистанционного обучения в школе;

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

  4. Разработать методические рекомендации по организации дистанционного факультативного курса «Основы языка Лисп» в образовательной системе «Moodle».

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

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

• Анализ различных методов функционального программирования.

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

Глава I. Теоретические аспекты организации дистанционного обучения в школе

  1.  
    1. Основные формы и методы дистанционного обучения

Дистанционное обучение (ДО) — совокупность технологий, обеспечивающих доставку обучаемым основного объема изучаемого материала, интерактивное взаимодействие обучаемых и преподавателей в процессе обучения, предоставление обучаемым возможности самостоятельной работы по освоению изучаемого материала, а также в процессе обучения [7].

ДО — это метод, который может использоваться как в рамках новой, дистанционной формы получения образования, так и в рамках традиционной формы — очной. Строго говоря, самостоятельная работа с литературой или изучение электронного курса на CD-ROM при обучении несут в себе элемент «дистанционности», поскольку обучаемый работает со знаниями, заложенными удаленным от него по расстоянию автором. При использовании современных средств телекоммуникаций можно более серьезно говорить о применении ДО в очном обучении. Это, как правило, выполнение лабораторных работ, а также получение консультаций. Выполнение учениками лабораторных работ на домашнем компьютере с последующей сдачей работы в аудитории давно стало общепринятой практикой. Поэтому в связи с интенсивным развитием телекоммуникационных сетей, следующим логическим шагом отечественной системы образования становится получение заданий на учебном сервере и пересылка их результатов преподавателю для проверки по E-mail или FTP. Такой подход позволяет ученику не только работать дома, в более комфортных условиях, но и сделать обсуждение работы более подробным (не надо искать учителя для того, чтобы задать вопрос, возникший в ходе изучения той или иной дисциплины, а можно просто послать запрос по сети и получить консультацию) [8].

В настоящее время перспективным является интерактивное взаимодействие с учащимся посредством информационных коммуникационных сетей, из которых массово выделяется среда интернет-пользователей. В 2003 году инициативная группа ADL начала разработку стандарта дистанционного интерактивного обучения SCORM, который предполагает широкое применение интернет-технологий. Введение стандартов способствует как углублению требований к составу дистанционного обучения, так и требований к программному обеспечению. В настоящее время имеются отечественные разработки программного обеспечения, которые достаточно широко применяются как отечественными, так и зарубежными организациями, предоставляющими услуги по дистанционному обучению [7].

Дистанционное обучение занимает всё большую роль в модернизации образования. Согласно приказу 137 Министерства образования и науки РФ от 06.05.2005 «Об использовании дистанционных образовательных технологий», итоговый контроль при обучении с помощью ДОТ (дистанционных образовательных технологий) можно проводить как очно, так и дистанционно. Госдума РФ рассматривает проект поправок к закону об образовании, связанных с дистанционным обучением [7].

Формы дистанционного обучения

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

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

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

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

В основе такой системы заложен метод обучения, который получил название «Природный процесс обучения» (Natural Learning Manner). Дистанционное обучение — это демократичная простая и свободная система обучения. Она была изобретена в Великобритании и сейчас активно используется жителями Европы, для получения дополнительного образования. Теоретические знания усваиваются без дополнительных усилий, органично вплетаясь в тренировочные упражнения. Формирование теоретических и практических навыков достигается в процессе систематического изучения материалов и прослушивания и повторения за диктором упражнений на аудио и видеоносителях.

  1. Телеприсутствие. Его примером служит дистанционное присутствие с помощью робота R.Bot 100. Сейчас в Москве в одной из школ, идёт эксперимент по такому виду дистанционного обучения. Мальчик инвалид, находясь дома за компьютером, слышит, видит, разговаривает при помощи робота. Учитель задаёт ему вопросы, он отвечает. При этом и учитель видит ученика, потому что на роботе находится монитор. При этом у мальчика создаётся почти полное впечатление, что он находится в классе вместе со своими сверстниками на уроке. На переменах, он может так же общаться со своими одноклассниками [2]. Если эксперимент станет удачным, он может открыть дорогу большому проекту, по внедрению, такого метода дистанционного обучения по всей России [7].

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

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

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

  3. Контакты с учителем (изменение роли преподавателя в значительной степени связанное с разделением функций разработчиков курсов, тьюторов и др.), в основном, осуществляемые посредством телекоммуникаций. Большинство известных программ и курсов по дистанционному образованию включают в себя и очные контакты. Это прежде всего сдача экзаменов, а также, в ряде случаев, выполнение лабораторных и практических работ на оборудовании [8].

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

  1.  
    1. Возможности организации дистанционного обучения в школе

Прежде всего, для организации дистанционного обучения необходим выход в Интернет. В нашей стране пока лишь 10% школ имеют доступ к Интернет. Однако, несколько лет назад Рунета (русскоязычной сети), как серьезного русскоязычного информационного ресурса, вообще не существовало. И говорить об образовательных информационных ресурсах для целей дистанционного обучения было сложно. В настоящее время картина достаточно радикально изменилась. Развитие образовательного сегмента Рунет идет довольно бурно. В настоящее время в Рунете можно найти множество виртуальных библиотек, музеев, баз данных, интересных и полезных информационных ресурсов, созданных ведущими научными центрами страны (МГУ, МЭСИ, МИЭМ, РАО, пр.). Все эти ресурсы могут с успехом использоваться в дистанционном обучении. К сожалению, развитие этой сферы тормозится не только нехваткой финансирования, но и отсутствием понимания ее значимости на уровне региональных властей. В этой связи важен опыт отдельных регионов в создании своей региональной информационно-образовательной среды. Примером может служить проект «Российские Гражданские Сети». И как часть его - проект «Челябинская гражданская сеть», который стартовал в мае 1998 года. Данный ресурс не разрабатывался специально для целей дистанционного обучения, но, как всякий информационный ресурс, он может использоваться как источник данных для формирования учебной информации. Новосибирская область – одна из немногих областей, имеющих собственную образовательную сеть. (НООС - Новосибирская областная образовательная сеть). По некоторым источникам НООС объединяет более 600 ресурсов. Всем этим информационным богатством пользуются около 120 тысяч человек, доступ в Интернет которым обеспечивают более 20 провайдеров. Но здесь нет специализированных курсов для учителей и учащихся средних школ, которые хотя бы отдаленно напоминали СИСТЕМУ дистанционного обучения. Есть много методических материалов, информация о передовом педагогическом опыте, авторские разработки программ и много полезного для работы школьного учителя с точки зрения самообразования, но регулярных дистанционных курсов повышения квалификации нет. Нет и курсов для учащихся. Отдельные фирмы (Например, компания «Кирилл и Мефодий», «Новый диск») выпускают CD- диски с курсами по отдельным учебным предметам. Но все они предназначены для самообразования, а не для дистанционного обучения [18].

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

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

Факторы, влияющие на необходимость применения ДО:

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

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

3. Организация дополнительных элективных курсов. При организации дополнительных элективных курсов в виде дистанционных продуктов появляется возможность широкого доступа учащихся к данному виду обучения. Существенным плюсом подобной системы является то, что она не замыкается на рамки конкретного образовательного учреждения, а может служить результатом интегрального взаимодействия образовательных учреждений целого региона. В результате подобного взаимодействия объединяются усилия всех педагогов всех образовательных учреждений, и расширяется спектр предлагаемых курсов, а также у ученика появляется возможность выбора преподавателя для конкретного курса [6].

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

Для получения полноценного аттестата о среднем образовании возникает необходимость сдачи этих предметов экстерном, однако при отсутствии системной подготовки у ученика по предмету, подобная форма для него не всегда приемлема. Технологии дистанционного обучения позволят восполнить этот пробел [6].

  1. Организация профильного обучения для удаленных муниципальных образований. Профильное обучение на сегодняшний момент является одним из приоритетных направлений развития образования. Однако проблема нехватки кадров не позволяет реализовать программу профильного обучения в полной мере на отдаленных территориях РФ. Одним из решений вопроса может быть методика ДО [6].

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

7. Дистанционные уроки для пропускающих школьные занятия детей по причинам болезни. Актуальная проблема пропуска занятий школьников в результате болезни не имеет на сегодняшний день системного решения. Ученик, пропустивший 1 или 2 недели занятий выпадает из образовательного процесса и восполнить знания он может только через дополнительные занятия с репетитором, либо через самостоятельное освоение пропущенного материала. ДО могло бы возместить этот пробел в системе образования [6].

8. Организация школьных систем виртуального общения. Система ДО, внедренная в рамках конкретного образовательного учреждения могла бы расширить возможности для общения учащихся между собой и стать основой для кооперации и совместной работы и учебы, предоставляя возможность обмениваться мнениями не только по учебным вопросам [6].

9. Дистанционная форма обучения могла бы выступить серьезным конкурентом для всякого рода репетиторства при поступлении в высшие учебные заведения [18].

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

Достоинства

  1. Доступность и мобильность. При дистанционном обучении не нужно тратить время и деньги на дорогу. Для детей с ограниченными возможностями, например, это ещё сложнее. Дистанционное обучение инвалидов даёт им шанс получить полноценное образование. Вы никак не ограничены в месте проведения занятий – нужно только иметь доступ к сети Интернет. Дистанционное обучение школьников идеально подходит для разных регионов и городов, где другие возможности эффективной подготовки зачастую просто отсутствуют. Доступность образования в режиме онлайн приобретает особую важность в такой большой стране, как Российская Федерация.

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

  3. Практичность. Ученики могут заниматься в более гибком режиме и удобном темпе, сохраняя возможность прямого общения с конкретным преподавателем. Кроме того, дистанционное образование обеспечивает более высокое качество подготовки обучаемого (постоянный контакт с преподавателем, возможность учиться в удобное время и пр.), а также предоставляет ему возможность изучать различные курсы в различных образовательных учреждениях с перезачетом их в базовом учебном заведении [8].

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

В заключение необходимо отметить, что ДО опирается не только на использование средств телекоммуникаций, но и на использование глобальных сетей в учебном процессе. Для ДО эти сети в рамках любой формы обучения служат мощным средством пропаганды современных телекоммуникационных средств, т.е., фактически, являются дополнительной рекламой сетевых услуг. Поэтому коммерческие провайдеры объективно заинтересованы в поддержке такого рода проектов и предоставлении скидок и льгот для участников ДО. Это также делает возможным широкое использование в учебном процессе не только академических, но и коммерческих телекоммуникационных сетей. Кроме этого, развитие ДО позволяет привить студенту культуру использования современных средств телекоммуникаций, вырастить поколение «квалифицированных пользователей» INTERNET [8].

При всех достоинствах дистанционного образования также существует и несколько недостатков:

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

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

  3. Техническая оснащённость. Необходимость в персональном компьютере и доступе в Интернет. Нужна хорошая техническая оснащенность, но не все желающие учиться имеют компьютер и выход в Интернет, нужна техническая готовность к использованию средств дистанционного обучения [9].

  4. Аутентификация. Одной из ключевых проблем интернет обучения остается проблема аутентификации пользователя при проверке знаний. Поскольку до сих пор не предложено оптимальных технологических решений, большинство дистанционных программ по-прежнему предполагает очную экзаменационную сессию. Невозможно сказать, кто на другом конце провода. В ряде случаев это является проблемой и требует специальных мер, приемов и навыков у преподавателей – тьюторов. Отчасти эта проблема решается с установкой видеокамер на стороне обучающего и соответствующего программного обучения [9].

  5. Контроль. Отсутствует постоянный контроль над обучающимися, который для российского человека является мощным побудительным стимулом. Сложность мотивации слушателей. Как правило, обучающиеся ощущают недостаток практических занятий [9].

  6. Стоимость. Высокая стоимость построения системы дистанционного обучения, на начальном этапе создания системы, велики расходы на создание системы дистанционного обучения, самих курсов дистанционного обучения и покупку технического обеспечения [9].

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

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

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

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

  • характером объяснения учителя;

  • соотношением теории и учебных упражнений;

  • содержанием познавательных вопросов и задач;

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

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

Очень большое значение для успешности усвоения материала имеет подбор задач.

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

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

  1. Важной задачей является раскрытие психолого-педагогических основ организации факультативных занятий как осуществление профильной дифференциации;

  2. Основным направлением предложенных рекомендаций является максимальное повышение эффективности работы факультативных занятий;

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

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

Предложенные рекомендации учитывают дидактические принципы:

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

  2. Возможность учащихся удовлетворять потребность в развитии своих способностей, углублять свои знания.

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

Для успешного функционирования факультатива по информатике предусматриваются следующие условия:

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

  2. Профильную дифференциацию целесообразно осуществлять по средствам факультативов по информатике;

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

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

  1.  
    1. Основы функционального программирования

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

В функциональных языках программа описывает вычисление некоторой функции. Один из основных элементов в функциональных языках - рекурсия, то есть вычисление значения функции через значение этой же функции от других элементов. Функциональное программирование объединяет разные подходы к определению процессов вычисления на основе достаточно строгих абстрактных понятий и методов символьной обработки данных. Сформулированная Джоном Маккарти (1958) концепция символьной обработки информации компьютером восходит к идеям Черча и других математиков, известным как лямбда-исчисление с конца 20-х годов прошлого века. λ-исчисления являются основой для функционального программирования, многие функциональные языки можно рассматривать как «надстройку» над ними [8].

Лямбда-исчисление (λ-исчисление, лямбда-исчисление) — формальная система, разработанная для формализации и анализа понятия вычислимости. λ-исчисление может рассматриваться как семейство прототипных языков программирования. Языки в этом семействе являются функциональными, поскольку они основаны на представлении о функции или операторе, включая функциональную аппликацию и функциональную абстракцию [2].

Выбирая лямбда-исчисление как теоретическую модель, Маккарти предложил рассматривать функции как общее базовое понятие. Существует различие в понимании функции в математике и функции в программировании. Функция в математике не может изменить вызывающее её окружение и запомнить результаты своей работы, а только предоставляет результат вычисления функции [9].

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

Основные свойства функциональных языков программирования:

  1. Краткость и простота. Программы на функциональных языках обычно намного короче и проще, чем те же самые программы на императивных языках. Пример (быстрая сортировка Хоара на абстрактном функциональном языке) [9]:

quickSort ([]) = []

quickSort ([h : t]) = quickSort (n | n t, n h)

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

  2. Модульность. Механизм модульности позволяет разделять программы на несколько сравнительно независимых частей (модулей) с чётко определёнными связями между ними. Тем самым облегчается процесс проектирования и последующей поддержки больших программных систем.

  3. Функции — объекты вычисления. В функциональных языках функции могут быть переданы другим функциям в качестве аргумента или возвращены в качестве результата. Функции, принимающие функциональные аргументы, называются функциями высших порядков или функционалами.

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

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

Особенности функционального программирования

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

  2. Отсутствует оператор присваивания.

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

Рис. 1. Структура функциональной программы

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

  2. Отказ от циклов в пользу рекурсии [8].

  3. Функциональное программирование есть программирование, управляемое данными. В строго функциональном языке однажды созданные (введенные) данные не могут быть изменены!

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

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

  6. Функциональное программирование предполагает наличие функционалов – функций, аргументы и результаты которых могут быть функциями.

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

Достоинства функционального программирования:

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

  2. Удобство организации модульного тестирования. Поскольку функция в функциональном программировании не может порождать побочные эффекты, менять объекты нельзя как внутри области видимости, так и снаружи. Единственным эффектом от вычисления функции является возвращаемый ей результат, и единственный фактор, оказывающий влияние на результат — это значения аргументов [8].

Таким образом, имеется возможность протестировать каждую функцию в программе, просто вычислив её от различных наборов значений аргументов. При этом можно не беспокоиться ни о вызове функций в правильном порядке, ни о правильном формировании внешнего состояния. Если любая функция в программе проходит модульные тесты, то можно быть уверенным в качестве всей программы. В императивных программах проверка возвращаемого значения функции недостаточна: функция может модифицировать внешнее состояние, которое тоже нужно проверять, чего не нужно делать в функциональных программах [1].

  1. Возможности оптимизации при компиляции. Описание программф в так называемом «декларативном» виде, когда жесткая последовательность выполнения многих операций, необходимых для вычисления результата, в явном виде не задаётся, а формируется автоматически в процессе вычисления функций. Это обстоятельство, а также отсутствие состояний даёт возможность применять к функциональным программам достаточно сложные методы автоматической оптимизации [8].

  2. Возможности параллелизма. Поскольку отсутствие побочных эффектов гарантировано, в любом вызове функции всегда допустимо параллельное вычисление двух различных параметров — порядок их вычисления не может оказать влияния на результат вызова [8].

Недостаток функционального программирования:

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

Применение языков функционального программирования:

  1. Системы автоматизированного проектирования.

  2. Программирование игр.

  3. Математическая лингвистика.

  4. Реализация ленивых вычислений.

Виды языков функционального программирования

Наиболее известными языками функционального программирования являются:

  1. LISP (Джон МакКарти, 1958) — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов.

  2. Haskell — функциональный язык программирования. Является одним из самых распространённых ленивых языков программирования. Имеет очень развитую систему типизации, однако система модулей разработана хуже. Берёт своё начало из языка Miranda.

  3. XQuery — язык запросов, разработанный для обработки данных в формате XML. XQuery использует XML как свою модель данных.

  4. ML — семейство строгих языков функционального программирования с развитой полиморфной системой типов и параметризуемыми модулями.

  5. Miranda — имеет строгую полиморфную систему типов, поддерживает типы данных пользователя. Функциональные объекты строятся с помощью карринга существующих функций. Обладает ленивой семантикой. Программа представляет собой множество определений.

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

  7. Nemerle — это гибридный язык высокого уровня со статической типизацией, органично сочетающий в себе возможности функционального и объектно-ориентированного программирования. Главная особенность языка, это очень мощная система метапрограммирования. Реализована поверх .NET и Mono, компилируется в MSIL (и является CLS-compliant).

  8. F# — это функциональный язык программирования общего назначения. Структура F# во многом схожа со структурой OCaml с той лишь разницей, что F# реализован поверх библиотек и среды исполнения .NET.

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

Лисп (от англ. LISt Processing language — «обработка списков») — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов. Слово «lisp» имеет также значение «детский лепет», что не случайно, так как тематика, которая интересовала создателя Лиспа, Джона Маккарти была тесным образом связана с исследованиями человеческой речи: Маккарти занимался исследованиями в области искусственного интеллекта и созданный им язык по сию пору является одним из основных средств моделирования различных аспектов ИИ.

Применение Лиспа

Первые области применения Лиспа были связаны с символьной обработкой данных и процессами принятия решений.

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

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

Лисп используется как язык сценариев в САПР AutoCAD (диалект AutoLISP)

Лисп является одним из базовых средств текстового редактора Emacs (Диалект EmacsLISP). По сути, большая часть Emacs написана на EmacsLISP, что даёт неограниченные возможности расширения функциональности.

В оконном менеджере Sawfish применяется специальный диалект Лиспа Rep, который в значительной степени повторяет диалект Лиспа от Emacs.

Диалект Scheme используется в качестве одного из скриптовых языков в графическом процессоре Gimp.

Диалект GOAL используется для высокодинамичных трёхмерных игр.

Лисп может использоваться для написания скриптов в аудиоредакторе Audacity

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

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

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

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

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

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

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

Глава II . Методические аспекты организации дистанционного

факультативного курса «Основы языка Лисп» в системе Moodle

  1.  
    1. Организация дистанционного факультативного курса в образовательной системе Moodle

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

Курс «Основы языка Лисп» мы будем разрабатывать в образовательной системе Moodle.

Система «Moodle» («Modular Object-Oriented Dynamic Learning Environment») или «Моодус» («Модульная Объектно-Ориентированная Динамическая Обучающая Среда») – это среда дистанционного обучения, которая предназначена для разработки и размещения учебных и методических материалов в сетях Интернет/Интранет и организации учебного процесса на их основе.

Этот программный продукт используется во многих странах мира университетами, школами, компаниями и независимыми преподавателями.

Каждый курс образовательной системы Moodle имеет блочную структуру: различные элементы курса сгруппированы в отдельные блоки. Блоки курса можно условно разделить на:

· административно-технические;

· деятельностные;

· выполняющие контрольные функции;

· ресурсные.

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

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

Стандартный дистанционный курс содержит:

  1. Текстовые файлы, содержащие большой объем дополнительной информации;

  2. Ресурсы и деятельностные (интерактивные) элементы курса;

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

Ресурсы – это статичные материалы курса. Ими могут быть: тексты лекций; различного рода изображения – карты, иллюстрации, схемы, диаграммы, формулы; веб-страницы; аудио и видео-файлы; анимационные ролики, 3D-модели, в том числе анимированные, ссылки на ресурсы Интернет и т.п.

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

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

Преподаватели могут использовать в образовательном процессе самые разнообразные форматы файлов – от простых текстовых до видео и аудио файлов. Большинство таких файлов может быть открыто средствами самой образовательной системы, но некоторые форматы требуют специального программного обеспечения. Одним из самых распространенных форматов такого типа является формат pdf. Для открытия файлов pdf требуется бесплатная программа Adobe Acrobat Reader, которую легко скачать с сайта разработчика (http://www.adobe.com/products/acrobat/readstep2.html).

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

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

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

В образовательной системе Moodle реализована гибкая и довольно сложная система оценок за все выполняемые задания (включая тесты), которые становятся доступны слушателю непосредственно на курсе в разделе «Оценки» панели «Управление».

Преподаватель может создавать и использовать в рамках курса любую систему оценивания (от 0 до 5, от 0 до 100, зачёт/незачёт и т.д.). Все отметки по каждому курсу хранятся в сводной ведомости.

«Moodle» даёт возможность контролировать «посещаемость», активность студентов, время их учебной работы в сети.

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

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

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

Вы можете обращаться к преподавателям курса по всем возникающим у вас в ходе обучения вопросам. Это можно сделать несколькими способами:

· Воспользоваться функцией «Обмен сообщениями»

· Отправить письмо через личную карточку вашего корреспондента

· Написать в форум

Общение с другими слушателями принципиально не отличается по форме от общения с преподавателями.

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

Полноценное использование системы управления обучением «Moodle» позволяет обеспечить:

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

- интерактивность обучения;

- многократное повторение изучаемого материала;

- структурирование контента и его модульность;

- создание постоянно активной справочной системы;

- самоконтроль учебных действий;

- выстраивание индивидуальных образовательных траекторий;

- конфиденциальность обучения;

- соответствие принципам успешного обучения.

При создании курса «Основы языка Лисп» в системе Moodle в качестве ресурса для изложения материала мы выбрали «Web-страницу ()», а также «Ссылку на каталог ()», в котором находится программа HomeLisp.

Для проверки усвоения знаний были использованы такие элементы как «Тест ()», «Задание в виде текста ()» и «Глоссарий ()».

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

  2. Верно/Неверно

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

Глоссарий – словарь терминов и определений.

  1.  
    1. Пояснительная записка к курсу «Основы языка Лисп»

1. Цели и задачи курса, ее место в учебном процессе, требования к уровню освоения содержания курса

Дистанционный курс «Основы языка Лисп» предназначен для подготовки учащихся физико-математического профиля.

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

1.1. Цели и задачи изучения курса

Цели курса:

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

  2. Развить устойчивые навыки практической реализации алгоритмов, раскрыть на этой основе значение и суть функционального стиля программирования

Задачи курса:

  1. Знакомство с методами функционального программирования;

  2. Обучение разработке алгоритмов на основе функционального подхода;

  3. Закрепление навыков алгоритмизации и программирования на основе изучения языка программирования Лисп;

  4. знакомство с основными структурами данных и типовыми методами обработки этих структур;

1.2. Требования к уровню подготовки обучающегося

Для прохождения курса, обучающийся должен владеть основами работы на компьютере в операционных системах семейства Windows, иметь доступ в Интернет и уметь выполнять базовые операции с любым из веб-браузеров по своему выбору (Internet Explorer, Mozilla, Chrome, Opera и др.): открывать сайт, заполнять форму, скачивать и посылать файл, владеть основами работы в программах текстовых редакторов (для набора и редактирования текстов электронного учебного курса, для написания отчета по нему).

Обучающиеся, завершившие изучение данного курса, должны …

иметь представление:

  1. О конструировании алгоритмов;

  2. О методах структурного и модульного программирования;

  3. Об абстракциях основных структур данных и методах их обработки и способах реализации;

  4. О методах и технологиях программирования.

знать:

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

  2. Типы данных, используемых в Лисп;

  3. Правила разработки алгоритмов;

  4. Описание структур данных;

  5. Описание основных базовых конструкций Лиспа;

  6. Синтаксис языка Лисп;

  7. Функции и методы, применяемые в Лисп;

уметь:

  1. Отличать парадигмы программирования;

  2. Разрабатывать алгоритмы;

  3. Реализовывать алгоритмы на языке Лисп;

  4. Описывать основные структуры данных;

  5. Реализовывать методы обработки данных;

  6. Работать в среде программирования Лисп.

2. Содержание дисциплины

  1.  
    1. Объем курса и виды учебной работы (в часах)

Виды учебных занятий

Кол-во часов

Всего часов на изучение материалов курса

14

Лекции

14

Всего часов самостоятельной работы

13

Лабораторные занятия

8

Тесты

5

ВСЕГО:

27

2.2. Разделы курса и виды занятий

№ п/п

Название раздела дисциплины

Количество часов

Лекции

Л/р

Тест

Всего

1

Классификация языков программирования

2

   

2

2

Язык Лисп

2

 

1

3

3

Основные функции

2

1

1

4

4

Создание собственных функции

2

1

1

4

5

Управляющие конструкции Лиспа

3

2

1

6

6

Геометрические построения

3

2

1

6

7

Итоговый контроль

 

2

 

2

 

ВСЕГО:

14

8

5

27

  1.  
    1. Содержание курса

При создании курса «Основы языка Лисп» в системе Moodle в качестве ресурса для изложения материала мы выбрали «Web-страницу ()», а также «Ссылку на каталог ()», в котором находится программа HomeLisp.

Для проверки усвоения знаний были использованы такие элементы как «Тест ()», «Задание в виде текста ()». Также был разработан «Глоссарий ()» с описанием основных понятий курса.

Структура курса «Основы языка Лисп»

модуля

Название модуля

Иконка элемента

1

ГЛАВА 1. Классификация языков программирования

 

Введение

 

Неструктурное программирование

 

Структурное программирование

 

Логическое программирование

 

Объектно-ориентированное (ОО) программирование

 

Функциональное программирование

 

2

ГЛАВА 2. Язык Лисп

О Лиспе

 

Типы данных

 

Общие сведения о среде HomeLisp

 

Тест №1

 

3

ГЛАВА 3. Основные функции

Присваивание значений Лиспе.

 

Математические, логические и геометрические функции

 

Функции ввода-вывода

 

Ресурс «Пояснение»: Управляющие конструкции см Гл 2.

 

Функции обработки списков

 

Ресурс «Пояснение»: Функции связи с автокадом см Гл 6.

 

Строковые функции и функции преобразования типов

 

Тест №2

 

Ресурс «Пояснение»: Выполнение заданий осуществляется в программе HomeLisp, которая находится в дополнительных материалах.

 

Задание №1 (в виде текста)

 

4

ГЛАВА 4. Создание собственных функций

Создание пользовательской функции

 

Вызов функций

 

Тест №3

 

Задание №2 (в виде текста)

 

5

ГЛАВА 5. Управляющие конструкции Лиспа

Ветвление

 

Циклы

 

Тест №4

 

Задание №3 (в виде текста)

 

6

ГЛАВА 6. Геометрические построения

Геометрические построения.

 

Тест №5.

 

Задание №4 (в виде текста)

 

7

Зачётная работа

 

8

Ресурс «Ссылка на каталог»: Дополнительные материалы.

 

Элемент курса «Глоссарий»: Основные понятия

 

Список литературы

 

3. Организация контроля знаний

модуля

Вид контроля

Вид отчёта

Контрольные сроки

Шкала оценивания

2

Тест №1 по теме «Язык Лисп»

Тест

4 неделя

0-9

3

Тест №2 по теме «Основные функции»

Тест

6 неделя

0-14

Задание 1

Текст

6 неделя

0-5

4

Тест №3 по теме «Создание собственных функций»

Тест

8 неделя

0-10

Задание 2

Текст

8 неделя

0-5

5

Тест №4 по теме «Управляющие конструкции Лиспа»

Тест

8 неделя

0-10

Задание 3

Текст

8 неделя

0-5

6

Тест №5 по теме «Геометрические построения»

Тест

11 неделя

0-10

Задание 4

Текст

14 неделя

0-5

7

Зачётная работа

Текст

16 неделя

0-10

Возможное количество баллов:

0-83

Для зачтения курса учащимся необходимо набрать от 66 до 83 баллов (от 80% до 100%).

4. Информационная поддержка самостоятельной работы

Д. Троицкий Программирование на AutoLISP // http://www.cad.dp.ua/kurs/index.html#CONTENTS, 13.11.10, 19:57 / [Электронный ресурс].

5. Материальное обеспечение дисциплины

Системные требования:

  1. Процессор: Pentium 233 MHz и выше;

  2. Операционная Система: Microsoft Windows 2000 с пакетом обновления 3 или более поздняя версия. Рекомендуется Windows XP или более поздняя версия;

  3. Память: 128 MB RAM (минимум). Рекомендуется 512 MB RAM;

  4. Дисковое пространство: 200 МB;

  5. Монитор Super VGA (1024 x 728) или более высокое разрешение с 256 цветами.

  6. Локальная сеть: 100/1000 мегабит/сек.

Программное обеспечение, необходимое для освоения курса:

  1. Любой из веб-браузеров по своему выбору (Internet Explorer (6 версии или выше), Mozilla, Chrome, Opera и др.);

  2. Программа HomeLisp , которая находится в курсе в дополнительных материалах.

    1. 2.3. Содержание дистанционного факультативного курса «Основы языка Лисп»

Весь материал курса разбит на 6 глав, каждая из которых содержит подпункты. Ниже представлено краткое содержание глав дистанционного элективного курса «Основы языка Лисп».

ГЛАВА 1. Классификация языков программирования

Введение

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

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

  1. неструктурный;

  2. структурный;

  3. логический;

  4. объектно-ориентированный;

  5. функциональный.

ГЛАВА 2. Язык Лисп

  1. О языке программирования Лисп

Лисп (от англ. LISt Processing language — «обработка списков») — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов. Слово «lisp» имеет также значение «детский лепет», что не случайно, так как тематика, которая интересовала создателя Лиспа, Джона Маккарти (рис. 2.1) была тесным образом связана с исследованиями человеческой речи: Маккарти занимался исследованиями в области искусственного интеллекта и созданный им язык по сию пору является одним из основных средств моделирования различных аспектов ИИ.

2. Синтаксис языка Лисп

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

3. Применение языка Лисп

4. Основные понятия языка Лисп:Алфавит, Атом, Список

5. Реализация языка Лисп – HomeLisp:

1) Общие сведения о среде HomeLisp

2) Типы данных

ГЛАВА 3. Основные функции

1. Присваивание значений в Лиспе.

Особенности организации памяти в Лиспе приводят к тому, что следует ясно различать два понятия: переменная и значение переменной.

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

Значение переменной - данные, записанные в динамической памяти начиная с адреса, записанного в переменной.

Для присваивания значения существует 2 функции: Set и SetQ

2. Математические и логические функции Лиспа.

Функция

Параметры

Возвращаемое значение

Описание

+

N1 N2 [… NM*]

N1+N2+…+NM

Сумма

-

N1-N2-…-NM

Разность

*

N1*N2*…*NM

Произведение

/

N1/N2/…/NM

Частное

=

N1 N2 или S1 S2

 

Проверка равенства двух чисел или строк

/=

Проверка неравенства двух чисел или строк

>

Проверка "N1 больше N2" или "S1 больше S2"?

=

Проверка "N1 больше или равно N2" или "S1 больше или равно S2"?

 


Просмотров работы: 4429