Данный курс посвящен изучению программирования на языке Object Pascal в среде Delphi.
Напомню, что назначение программирования – разработка программ управления компьютером с целью решения различных информационных задач. Все программы составляются на каком-либо языке программирования.
Язык программирования – это фиксированная система обозначений для описания алгоритмов и структур данных.
Вы уже сталкивались с программированием – писали программы на языке Qbasic. В рамках этого курса мы будем использовать язык Object Pascal и среду Delphi. Чем же отличаются друг от друга языки программирования?
Существуют различные парадигмы (методологии) программирования:
· «Спагетти». Выполнение шагов программы один за другим. Основное использование получает оператор go to.
· Структурное программирование. Языки программирования имеют определенные структурные единицы, позволяющие организовывать процесс программирования таким образом, что программа имеет ясную и понятную структуру (используются условные операторы и циклы).
· Модульное программирование. Программа разбивается на отдельные части – модули, которые могут программироваться независимо. Конечная программа – объединение разработанных модулей (используются процедуры и функции).
· Объектно-ориентированное программирование. Это целая философия, совершенно особый подход к проектированию приложений. В основе ООП лежит такое понятие, как класс. Любой класс имеет поля, методы и свойства.
Сейчас мы не будем останавливаться на этом. Мы поговорим об этом позднее, когда перейдем к программированию в среде Delphi.
Сначала мы будем работать с вами на языке OPAscal в консольном приложении среды Delphi. Позже мы перейдем к ООП с использованием интерфейса программы.
Знакомство с языком OPascal мы начнем с написания первой программы. Вы должны ощутить уверенность в себе, понять, что раз вы смогли написать одну программу, сможете написать и другие.
Итак. Нашей первой программой будет программа – приветствие. Она выведет на экран текст и завершит свою работу.
Открываем: Delphi – File – New – Other – Consol Application.
У вас открылось окошко, в котором уже написаны ключевые слова. Ваша задача – написать действия, которые должна выполнить эта программа. Назовемее First.
Program First;
Uses SysUtils;
Begin
Write (‘Hello, ’);
Writeln (‘friends!’)
End.
Запускпрограммы – F9.
Успели что прочитать? Но программа была выполнена! Чтобы была возможность прочитать надпись на экране, надо в программу добавить одну строчку:
Begin
Write (‘Hello, ’);
Writeln (‘friends!’);
Readln
End.
На этом наш первый урок закончен. Надеюсь, вам понравилось!
Урок 2.
Программа работает с величинами. При использовании в программе много раз величины одного и того же значения (числа или строки), лучше употреблять константы.
Константы – имена для фиксированных значений, ссылка на которые используется в программах.
Константы позволяют обращаться к значениям по имени, а не использовать числа.
Пример описания констант: Const Pi = 3.14;
Значение константы – число или результат вычислений с использованием других констант.
Имя константы может состоять из латинских букв, цифр и знаков подчеркиваний, но не может начинаться с цифры. Регистр значения не имеет, то есть имена X_time и x_TimE считаются одинаковыми.
Переменные – именованный объект данных заранее определенного типа.
Переменная имеет три важные характеристики:
1. Имя – дает способ ссылаться на уникальное место в памяти, которое занимает переменная.
2. Тип – определяет, сколько памяти отводится для переменной, какие значении она может принимать и какие операции можно с ней производить.
3. Значение – любая информация, которая в настоящий момент хранится в занимаемой переменной области памяти.
Объявление переменных:
Var a, b, c: Тип1;
Sum1: Тип2;
Переменная величина получает значение в результате присваивания. Например: a := 1.
Основные свойства присваивания:
1. Значение переменной неопределенно, если ей не присвоено никакого значения.
2. Новое значение, присеваемое переменной, заменяет ее старое значение.
Общий синтаксис программы на языке Opascal выглядит следующим образом:
Program <Имя_программы>;
Uses <Модули>;
Type <список констант>;
Const <типы данных, определяемых пользователем>;
Var <список всех используемых переменных>;
<список функций и процедур>;
begin
<операторы>
end.
Важно: точку с запятой (;) можно не ставить только перед словом end, в остальных случаях отсутствие этого знака считается ошибкой.
Теперь попробуем написать программу, которая меняет местами значения переменных.
Алгоритм:
a | b | |
Было | 1 | 2 |
стало | 2 | 1 |
1) Нужно взять дополнительную переменную, поместить туда временно одно из значений:
оператор | a | b | c | |
a ® c | c := a | 1 | 2 | 1 |
b ® a | a := b | 2 | 2 | 1 |
c ® b | b := c | 2 | 1 | 1 |
2) Без использования дополнительной переменной:
a | b | |
1 | 2 | |
a := a + b | 3 | 2 |
b := a – b | 3 | 1 |
a := a – b | 2 | 1 |
Program Obmen;
Uses SysUtils;
Var a, b: Integer;
Begin
Write (‘a = ’);
Readln (a);
Write (‘b = ’);
Readln (b);
a := a + b;
b := a – b;
a := a – b;
Writeln (‘a = ’, a, ‘; b = ‘, b);
Readln
End.
Домашнее задание: Написать программу обмена значений трех переменных (А - В - С - А).
Выводы:
Выбирая стратегию преподавания информатики в школе, необходимо учитывать, что задача общеобразовательного курса – это в большой степени выработка определенного стиля мышления, формирование наиболее общих навыков, умений и представлений, нежели освоение тех или иных конкретных языков и технических средств программирования. В то же время такой курс должен служить базой для последующего профессионального изучения программирования в высшей школе или старших классах средней школы (в рамках профессионального обучения).
Тенденция понижения роли алгоритмизации и программирования в современном курсе информатики является основной проблемой.
Основная идея обновления старшей ступени общего образования состоит в том, что образование здесь должно стать более дифференцированным, индивидуализированным, функциональным и эффективным.
Многолетняя практика убедительно показала, что, как минимум, начиная с позднего подросткового возраста, примерно с 15 лет, в системе образования должны быть созданы условия для реализации обучающимися своих интересов, способностей и дальнейших (послешкольных) жизненных планов. Социологические исследования доказывают, что большинство старшеклассников (более 70%) отдают предпочтение тому, чтобы знать основы главных предметов, а углубленно изучать только те, которые выбираются, чтобы в них специализироваться. Иначе говоря, профилизация обучения в старших классах соответствует структуре образовательных и жизненных установок большинства старшеклассников. При этом традиционную позицию как можно глубже и полнее знать все изучаемые в школе предметы (химию, физику, литературу, историю и т.д.) поддерживают около четверти старшеклассников.
К 15 – 16 годам у большинства учащихся складывается ориентация на сферу будущей профессиональной деятельности. Так, по данным социологических опросов, проведенных в 2002 году Центром Социологических исследований Минобразования России, профессиональное самоопределение тех, кто в дальнейшем намерен учиться в ПТУ или техникуме (колледже), начинается уже в 8-м классе и достигает своего пика в 9-м, а профессиональное самоопределение тех, кто намерен продолжить учебу в вузе, в основном складывается в 9-м классе. При этом примерно 70 – 75% учащихся в конце 9-го класса уже определились в выборе возможной сферы профессиональной деятельности. Большинство профессий в данное время связаны с компьютерами и программированием, поэтому широко распространяются элективные курсы по информационным технологиям, в том числе и по программированию, о которой шла речь в нашей работе. Выбор языка программирования ObjectPascalобусловлено рядом их преимуществ:
1. ObjectPascal позволяет справляться со сложностью. Первое важное преимущество объектно-ориентированных систем вытекает из природы их связи с реальным миром.
2. ObjectPascal предназначен для изменений. Второе преимущество объектно-ориентированных систем обусловлено способом взаимосвязи объектов через сообщения.
3. Объекты могут использоваться несколько раз. Третье преимущество объектно-ориентированных систем заключается в том, что классы могут наследовать процедуры от других классов. Компания может составить библиотеки наиболее часто используемых классов, содержащих процедуры, предназначенные для специфических нужд и применяющихся в последующих прикладных задачах.
4. ObjectPascal легко поддерживается. Четвертое преимущество заключается в способе комплектования объектно-ориентированных программных модулей.
Вследствие этих преимуществ, а также еще ряда причин, ООП является в настоящее время самым перспективным, распространенным и эффективным направлением в программировании.
1.Ваграменко Я.А., Зобов Б.И., Осипов А.П. "Педагогический виртуальный университет: основные задачи, принципы построения, структура информационных ресурсов. // "Педагогическая информатика", 1, 2002г.