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

Минская коллекция рефератов (www.library.by/shpargalka) Основана в 1999 году

Телефон минского офиса: 8 (029) 777-57-90 (МТС)

ON/OFF:          

РЕФЕРАТЫ ЗДЕСЬ:

Белорусская история
Белорусская литература
Белорусский язык
Белорусская культура
Авиация
Астрономия
Автомобили
Английский язык
Архитектура
Биографии знаменитостей
Биология
Бухгалтерия и аудит
Военное дело
География
Дизайн
Иностранные языки
Интернет
Искусство
История
Компьютеры
Культурология
Лингвистика
Литература
Маркетинг и реклама
Математика
Медицина
Музыка
Немецкий язык
Образование и обучение
Политология
Право
Программирование
Психология
Разное
Религия
Сексология
Сельское хозяйство
Спорт
Технологии
Физика
Философия
Химия
Экология
Экономика
Начало
ПЛАТНЫЕ YСЛYГИ:

Заказать реферат\курсовую

"Шпаргалка" рекомендует...

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

ИСТОЧНИК: СЛУЖБА ИНФОРМАЦИИ BELSONET

КАЧЕСТВО РАБОТЫ: 76%






 

ИССЛЕДОВАНИЕ ТЕХНОЛОГИЙ ПРОГРАММИРОВАНИЯ

Важное место в программном обеспечении современных ЭВМ зани­мают системы программирования. Основное их назначение - освобо­дить программиста от необходимости работать на языке машинных ко­манд. Язык программирования, с которым работает система програм­мирования, называется ее входным языком. Системы программирования именуются по названию своего входного языка. Например: Бейсик - система, Паскаль - система, система пролог. Иногда в название систем включаются префиксы, обозначающие, например, фирменное происхождение системы. Очень популярны системы с приставкой "Тур­бо": Турбо - Паскаль, Турбо - Си и др. Это системы программирова­ния, разработанные фирмой Borland.

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

Языки программирования претерпели большие изменения с тех пор, как в сороковых годах началось их использование. Они все еще продолжают изменяться и теперь даже быстрее, чем когда либо ра­нее.

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

Для того, чтобы облегчить общение человека с ЭВМ были созда­ны языки программирования типа Ассемблер. Переменные величины стали изображаться символическими именами. Числовые коды операций заменились на мнемонические (словесные) обозначения, которые лег­че запомнить. Язык программирования приблизился к человеческому языку, но удалился от языка машинных команд. Чтобы ЭВМ могла ра­ботать на языке Ассемблера, необходим транслятор - системная программа, переводящая текст программы на Ассемблере в эквива­лентные ей машинные команды. Языки типа Ассемблер - машиноориен­тированные, потому что они настроены на структуру машинных команд конкретного компьютера. Разные компьютеры с разными типами про­цессоров имеют разный Ассемблер.

В пятидесятых годах, с широким развитием ЭВМ и применением их в различных областях науки и техники, возникла серьезная проб­лема: простой пользователь не мог работать с ЭВМ из-за сложности языков программирования, а подготовленный программист был просто не в состоянии обслужить огромное количество пользователей. Раз­решением данной проблемы явилось создание языков программирования высокого уровня (ЯПВУ). Форма записи программ на ЯПВУ по сравне­нию с Ассемблером и машинными языками ближе к традиционной мате­матической форме и разговорному языку. Они легко изучаются, хоро­шо поддерживают структурную методику программирования, и еще, что очень важно, ЯПВУ являются машинонезависимыми языками. Одна и та же программа на таком языке может быть выполнена на ЭВМ различных типов, оснащенных соответствующим транслятором. Однако программы, написанные на языках высокого уровня, занимают больше памяти и медленнее выполняются, чем программы на машинных языках или язы­ках Ассемблера.

Первыми популярными языками высокого уровня, появившимися в 50-х годах, были Фортран, Кобол (в США) и Алгол (в Европе). Для первых ЯПВУ была характерна их предметная ориентация. Так языки Фортран и Алгол были ориентированы на научно - технические расче­ты математического характера. Кобол - язык для программирования экономических задач. В нем, по сравнению с двумя другими языками программирования, слабее развиты математические средства, зато хорошо развиты средства обработки текстов, организация вывода данных в форме требуемого документа.

Огромное количество новых языков программирования стало по­являться в 60-х, 70-х годах. За всю историю ЭВМ их было создано более тысячи. Однако распространились и выдержали испытание вре­менем немногие.

В 1965 году появились два новых важных языка. Профессорами университета в городе Дартмуне Т. Куртцем и Д. Кемени был разра­ботан язык для обучения программированию, который являлся упро­щенной версией Фортрана и получил название Бейсик (Beginner's All-purpose Simbolic Instruction Code, т.е. многоцелевой код сим­волических команд для начинающих). Бейсик предоставляет разнооб­разные средства для диалога: пользователь имеет возможность "об­щаться" с Бейсик-программой во время ее выполнения. Программа мо­жет "попросить" пользователя ввести данные, проверить их, осу­ществить выбор и т.д. Наибольшее признание Бейсик получил с появ­лением микроЭВМ начиная с 1975 года. Сейчас Бейсик со всеми его реализациями вполне можно назвать наиболее известным и широко распространенным языком высокого уровня.

Вторым языком, появившемся в 1965 году, был ПЛ/1 (Program­ming Language 1, т.е язык программирования 1). ПЛ/1 был разрабо­тан при содействии фирмы IBM. При этом преследовалась цель соз­дать язык, сочетающий в себе лучшие свойства Алгола, Кобола и Фортрана. ПЛ/1 действительно подходит для решения широкого круга задач и является более гибким по сравнению с Алголом, Коболом и Фортраном. При появлении языка ПЛ/1 предсказывали, что он станет основным языком и в конечном итоге заменит своих предшественни­ков. Однако этого не произошло. Главная причина по-видимому свя­зана с тем, что некоторые пользователи Кобола и Фортрана не ощу­тили тех преимуществ языка ПЛ/1, которые оправдали бы переход к нему. Другая причина связана с "размерами" языка. Большое коли­чество средств и разнообразие операторов ПЛ/1 привели к тому, что он оказался довольно сложным в изучении.

В 1971 году профессор Н. Вирт из Технического университета в Цюрихе разработал новый язык, известный под названием "Паскаль" (в честь хорошо известного математика 17-го века Блеза Паскаля). Язык паскаль основан на Алголе, но содержит ряд усовершенствова­ний. Первоначально он создавался как учебный язык, в нем аккурат­но соблюдена структурная линия программирования. Наибольший успех и распространение языку Паскаль принесли первые персональные компьютеры. Фирма Borland Internetional Inc (США) разработала систему Турбо - Паскаль для ПК. Турбо - Паскаль - это не только язык и транслятор с него, но еще и операционная оболочка, позво­ляющая пользователю удобно работать на Паскале. Турбо - Паскаль вышел за рамки учебного предназначения и стал языком профессио­нального программирования с универсальными возможностями. В силу своих достоинств Паскаль послужил источником для создания многих основных современных языков программирования, таких как Ада, Си, Модула-2 и др.

Язык Си первоначально был разработан для мини - ЭВМ исполь­зующих операционную систему UNIX. Он является относительно прос­тым языком, в нем нет операций над символьными строками и списка­ми, но, в отличии от Паскаля, в нем заложены возможности непос­редственного обращения к некоторым машинным командам, к опреде­ленным участкам памяти компьютера. Си широко используется как инструментальный язык для разработки операционных систем, транс­ляторов, баз данных т других системных и прикладных программ.

В 1965 году появился язык программирования Лисп (LISt Pro­cessing, т.е. обработка списков). Он служит для обработки строк и рекурсивных данных. Лисп располагает также средствами для выпол­нения арифметических и логических операций. Он находит широкое применение в исследованиях по созданию искусственного интеллекта.

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

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

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

Среди процедурных языков можно выделить в свою очередь структурные и операционные языки. В структурных языках одним опе­ратором записываются целые алгоритмические структуры: ветвления, циклы. В операционных языках для этого используются несколько операций. Широко распространены структурные языки: Паскаль, Си, Ада, ПЛ/1. Операционные: Фортран, Бейсик, Фокал.

Непроцедрное (декларативное) программирование появилось в начале 70-х годов, но стремительное его развитие началось в 80-е годы, когда был разработан японский проект создания ЭВМ пятого поколения, целью которого явилась подготовка почвы для создания интеллектуальных машин. К непроцедурному программированию отно­сятся функциональные и логические языки.

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

Наиболее распространенными среди функциональных языков явля­ются Лисп и Рефал. Лисп - язык обработки списков давно и активно применяется в системах искусственного интелекта. Рефал, построен­ный на алгоритмах Маркова, удобен для обработки текстов и единс­твенный из распространенных в мире языков программирования, раз­работанный в нашей стране.

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

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

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

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

ВЫБОР ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ ДЛЯ УЧЕБНОГО ПРОЦЕССА

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

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

В настоящее время существуют три наиболее распространенных подхода к преподаванию программирования:

1) преподавание программирования как теоретической дисципли­ны вообще, без освоения конкретных языков и систем;

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

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

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

Второй подход часто используется при преподавании основ программирования в младших классах средней школы. Разработаны и специализированные языки для этих целей. В их числе можно назвать Школьник, Рапира (СССР), SMR (Великобритания), LOGO (США). Они предельно упрощены и рассчитаны на возможности младшего школьника в области программирования. Такой подход хорош при углубленном изучении информатики в специализированных классах при начальном этапе обучения.

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

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

Здесь стоит отметить, что Бейсик и Паскаль первоначально создавались как учебные языки, но со временем получили широкое распространение в качестве стандартных языков. Можно взять за ос­нову один из них. У каждого языка есть свои сторонники и против­ники, и конечный выбор определяется наличием аппаратных средств и личными наклонностями преподавателя. Ориентируясь на ЭВМ БК-0011М, имеющийся в наличии, целесообразно выбрать Бейсик - систему, реализованную на этих машинах.

ВЫВОДЫ ПО РАЗДЕЛУ

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

СПИСОК ЛИТЕРАТУРЫ

1. Концепции системной интеграции информационных технологий в высшей школе. М.: РосНИИСИ, 1993.

2. Герасименко В.А. Новый взгляд на информатику и информати­зацию: необходимость, проблемы становления и развития // Зарубеж­ная радиоэлектроника, 1995, № 2, 3.

3. Основы информатики и вычислительной техники в базовой школе. Пособие для учителей. Под редакцией Семакина И.Г., Пермь,1995.

4. Аляев Ю.А., Березинцев М.П. Программное обеспечение мик­ро-ЭВМ "Электроника БК-0010" (Пакет программ), ч. 1, 2, Пермь,1994.

5. Программное обеспечение ПЭВМ "Электроника БК-0011М". Учебно-методическое пособие, Пермь, 1992.

6. Аляев Ю.А., Кушев В.О., Лебедев В.В. Прикладное програм­мирование, ч. 1. Алгоритмизация и программирование. Учебно-мето­дическое пособие для самостоятельной работы.

7. Прикладное программирование. Сборник задач. Под редакцией Лебедева В.В., Пермь, 1997.

РАБОТА ДОБАВЛЕНА В АРХИВ: 25 СЕНТЯБРЯ 2001

Поиск по белорусским рефератам

Флаг Беларуси Поиск по крупнейшим коллекциям Беларуси: LIBRARY.BY, STUDENT.BY, BIBLIOTEKA.BY и прочие


Комментарии к работе:

Другой популярный контент:



 

МИНСКАЯ КОЛЛЕКЦИЯ РЕФЕРАТОВ ™ 1999-2011
Телефонная "горячая линия": +375 (29) 7777-***
Для жителей других стран: WWW.STUDENT.BY
Мы работаем с 10:00 до 20:00
 

HIT.BY на Youtube

Официальный канал на Ютуби проекта HIT.BY

Здесь собраны ТОЛЬКО видео хиты из Минска, Гомеля, Могилева, Бреста, Гродно и Витебска!

Ежедневные топ-видео из Беларуси

Любовь по-белорусски!

Проект KAHANNE.COM! Быстрые знакомства в Минске, Гомеле, Бресте, Могилеве, Витебске, Гродно! Только реальные люди. Мобильная версия. Около 112.000 анкет белорусов.

KAHANNE.COM

Что происходит? Скандалы и расследования


Минская коллекция рефератов (old version) - дочерний проект при библиотеки LIBRARY.BY, бесплатная и постоянно пополняемая пользователями коллекция белорусских рефератов, белорусских дипломных работ, белорусских курсовых работ, белорусских контрольных, белорусских докладов и белорусских эссе. Работает с 1999 года.