бесплатно рефераты скачать
  RSS    

Меню

Быстрый поиск

бесплатно рефераты скачать

бесплатно рефераты скачатьМетодика преподавания языков программирования... - (реферат)

Методика преподавания языков программирования... - (реферат)

Дата добавления: март 2006г.

     21. АНАЛИЗ КОНЦЕПЦИЙ СОВРЕМЕННОЙ
     2ИНФОРМАТИКИ И НОВЫХ
     2ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

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

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

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

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

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

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

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

    2) широкий круг пользователей.

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

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

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

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

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

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

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

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

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

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

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

Информатика как образовательная дисциплина быстро развивает ся. Если 3 - 4 года назад базовый курс информатики состоял из изучения основ алгоритмизации и программирования, основ устройс тва и применения вычислительной техники, то сегодня целью курс информатики в школе является повышение эффективности применения человеком компьютера как инструмента. Компьютерная грамотность определяется не только умением программировать, а, в основном, умением использовать готовые программные продукты, рассчитанные на пользовательский уровень. Эта тенденция появилась благодаря широкому рассмотрению "мягких" продуктов, ориентированных на не подготовленных пользователей. Разработка таких программно - ин формационных средств является весьма дорогостоящим делом в силу его высокой наукоемкости и необходимости совместной работы высо коквалифицированных специалистов: психологов, компьютерных дизай

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

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

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

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

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

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

Страницы: 1, 2, 3, 4


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  бесплатно рефераты скачать              бесплатно рефераты скачать

Новости

бесплатно рефераты скачать

© 2010.