Разработка методики преподавания факультатива по программированию на языке JavaScript

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

Содержание факультативного курса «Программирование на языке JavaScript»

Занятие 1. Основы объектно-ориентированного программирования.

Основополагающим понятием объектно-ориентированного программирования является понятие объекта. «Объект представляет собой конкретный опознаваемый

предмет, единицу или сущность (реальную или абстрактную), имеющую четко определенное функциональное назначение в данной предметной области».

С понятием объекта связаны три отличительных признака: состояние (state), поведение (behavior) и идентичность (identify).

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

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

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

В объектно-ориентированных языках программирования операции, выполняемые над объектами, называются методами.

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

Идентичность (индивидуальность) – это природа объекта. То, что отличает его от других объектов в конкретной области.

Итак, в каждый момент времени объект характеризуется присущим именно ему набором свойств (properties) и методов (methods) – операций, совершаемых над данным объектом, а также объект реагирует на события (events). Событие – это действие, распознаваемое объектом, после чего следует реакция со стороны объекта.

Возьмем, например, объект «Собака». Какими свойствами он может обладать? (порода, имя, цвет шерсти, цвет глаз, внешний вид, вес, наличие ошейника и т.д.). Свойства объекта в определенный момент времени приобретают из множества значений конкретное: порода – пудель, имя – Джек, цвет шерсти – белый, цвет глаз – коричневый, внешний вид – грязный, вес – 15 кг, наличие ошейника – да. Слева от знака тире указаны наименования свойств, справа – значения свойств. Если значение свойства нельзя изменить, то такое свойство называется постоянным, иначе оно называется переменным. Среди всех свойств особое место занимают логические свойства, т.е. такие свойства, которые принимают только два значения: True (истина) и False (ложь). Какие свойства в нашем примере являются постоянными, а какие переменными? (Постоянными свойствами являются свойства «порода» и «цвет глаз», остальные свойства являются переменными; имя для собаки можно придумать другое, шерсть перекрасить, собаку можно помыть, накормить, снять ошейник). Свойство «наличие ошейника» является логическим.

Какие методы (действия) могут быть у собаки? (Лаять, кусаться, грызть кость, сторожить, вилять хвостом). Как и всякий объект, собака может реагировать, а может и не реагировать на события.

Если положить перед собакой аппетитную косточку, то для нее возникнет событие «Кость». Поскольку у всех собак имеется «встроенный метод» – «грызть кость», то возникает соответствующая реакция: собака начинает ее грызть. Если же попытаться организовать событие «Ко мне!», то реакции может не последовать, поскольку собаки от рождения не обладают этим методом. Для того, чтобы собака могла распознавать данное событие, придется писать специальный «программный код», попросту говоря, дрессировать собаку.

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

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

В технологии ООП объекты сохраняют свою целостность, все свойства объекта и его поведение описывается внутри самого объекта.

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

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

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

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

К традиционным преимуществам ООП относятся инкапсуляция или скрытие (encapsulation), полиформизм (polymorphism) и наследование или повторное использование (reuse).

Объединения всех свойств предмета (составляющих его состояние и поведение) и ограничения доступа к реализации этих свойств получило название инкапсуляция.

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

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

интерфейс – совокупность доступных извне элементов реализации абстракции (основные характеристики состояния и поведения);

реализация – совокупность недоступных извне элементов реализации абстракции (внутренняя организация абстракции и механизмы реализации ее поведения).

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

Страница:  1  2  3  4  5  6  7  8  9  10  11  12  13  14 


Другие рефераты на тему «Педагогика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы