4.3. Системы программирования.
Составной частью системного (общего) программного обеспечения являются системы программирования с соответствующими языками программирования. Системы программирования предназначены для совершенствования процесса разработки и отладки программ, т.е. для повышения эффективности и производительности труда программистов.
Комплекс средств, включающих в себя входной язык программирования (исходный язык), транслятор, машинный язык, библиотеки стандартных программ, средства отладки оттранслированных программ и компоновки их в единое целое, называется системой программирования.
Так как каждое семейство ЭВМ имеет свой собственный, специфический внутренний (машинный) язык и может выполнять лишь те команды, которые записаны на этом языке, то для перевода исходных программ на машинный язык используются специальные программы – трансляторы. Работа всех трансляторов строится по одному из 2х принципов: интерпретации или компиляции.
Интерпретация осуществляет пошаговую трансляцию и немедленное выполнение оттранслированного оператора исходной программы. Трансляторы – интерпретаторы поддерживают диалоговый режим, их легче разрабатывать, обходятся дешевле, чем компиляторы с того же языка. Однако при интерпретации программа на машинном языке не сохраняется, и поэтому при каждом запуске исходной программы на выполнение ее нужно (пошагово) транслировать заново. Кроме этого, интерпретирующая команда должна находиться в памяти ЭВМ в течение всего процесса выполнения исходной программы, т.е. занимать определенный объем памяти.
При компиляции процессы трансляции и выполнение программы разделены во времени. Сначала компилируемая программа преобразуется в набор объектных модулей на машинном языке, которые затем собираются (компонуются) в единую машинную программу, готовую к выполнению в виде файла на магнитном диске. Это программа может быть выполнена многократно без повторной трансляции. Следовательно, для одной и той же программы трансляция методом компиляции обеспечивает более высокую производительность вычислительной системы при сокращении требуемой оперативной памяти.
Большая сложность в разработке компилятора по сравнению с интерпретатором с того же самого языка объясняется тем, что компиляция включает два действия: анализ, т.е. определение правильности исходной программы в соответствии с правилами построения языковых конструкции входного языка, и синтез — генерирование эквивалентной программы в машинных кодах.
Наряду с рассмотренными выше трансляторами — интепретаторами и трансляторами-компиляторами на практике используется трансляторы интерпретаторы — компиляторы, которые объединяют в себя достоинства обоих принципов трансляции: на этапе разработки и отладки программы транслятор работает в режиме интерпретатора, а после завершения процесса отладки исходная программа повторно транслируется в объектный модуль (т.е. уже методом компиляции). Это позволяет значительно упростить и ускорить процесс составления и отладки программ, а за счет последующего получения объектного модуля обеспечить более эффективное исполнение программы.
Языки программирования, или алгоритмические языки, классифицируются: по степени их зависимости от вычислительной машины, по назначению (ориентация на ту или иную сферу применения), по специфике организационной структуры языковых конструкции и т.п. (рис.4.1.).
С учетом зависимости от ЭВМ языки программирования подразделяются на машинно — зависимые и машинно — независимые.
К машинно – зависимым языкам относятся машинные (т.е. языки, непосредственно используемые для управления работой отдельных устройств ЭВМ) и машинно – ориентированные языки (в отличие от машинных языков требуют предварительной трансляции на машинный язык программ, составленных с их помощью).
Машинный язык является внутренним языком ЭВМ и представляет собой систему инструкций и данных, которые не требуют предварительной трансляции и могут непосредственно интерпретироваться и исполняться аппаратными средствами ЭВМ.
К машинно – ориентированным языкам относятся: автокоды, языки символического кодирования и ассемблеры. Особое место в системе программирования занимают ассемблеры.
Ассемблер представляет собой мнемоническую (условную)запись машинных команд и позволяет получить высокоэффективные программы на машинном языке. Язык ассемблера используется для разработки системного программирования, т.е. программирования микропроцессора, разработки операционных систем, драйверов, программ увязки взаимодействия отдельных компонентов прикладных программ и т.д. Однако его использование требует высокой классификации программиста и больших затрат времени на составление и отладку программ.
Машинно — независимые языки (или языки высокого уровня) не требуют от пользователя знания специфики ЭВМ, на которой реализуется программа решения задачи. Решение задачи на этих языках описывается в наглядном, достаточно легко воспринимаемом виде. Для них характерны: возможность написания выражений, символическая идентификация переменных, вызов функций по именам и т.д.
Машинно-независимые языки классифицируются на процедурно – ориентированные, проблемно – ориентированные и объектно-ориентированные.
Процедурно – ориентированные (универсальные) языки эффективны для описания алгоритмов решения широкого класса задач. Это языки: Фортран, Кобол, ПЛ/1, Бейсик, Паскаль, Ада и др.
Проблемно – ориентированные языки предназначены для описания процессов обработки информации в более узкой, специфической области. Языками этой группы являются: РПГ, Лисп, АПЛ, GPSS и др.
Объектно-ориентированные языки ориентированы на разработку программных приложений для широкого круга разнообразных по сфере приложения задач, имеющих общность в реализуемых компонентах (например, при взаимодействии с БД, работе в условиях функционирования корпоративных сетей организаций или взаимодействия с глобальной сетью Internet). Объектно-ориентированный подход в программировании позволяет применять одни и те же (типовые) архитектурные и концептуальные решения для быстрого создания эффективных программных приложений. Наиболее известные языки этого класса – Delphi, Visual Basic, Java и др.
Обособленное, промежуточное положение между машинно-независимыми и машинно-зависимыми языками занимает язык Cu, создание которого явилось результатом попытки объединения достоинств, присущих языкам обоих классов:
— в плане максимального использования возможностей конкретной вычислительной архитектуры, благодаря чему программы на языке Cu компактны и работают эффективно;
— в плане максимального использования мощных выразительных возможностей современных языков высокого уровня.
Язык Cu и его модификации в настоящее время используются в основном для создания системных и прикладных программных продуктов, в которых решающее значение отводится факторам быстродействия и минимизации объектов памяти.
Основное достоинство алгоритмических языков высокого уровня — возможность описания программ решения задач в форме, максимально удобной для восприятия человеком.
- Под программным обеспечением ИС понимается совокупность программных и документальных средств для создания и эксплуатации систем обработки данных средствами вычислительной техники. Программное обеспечение делится на базовое (системное) и прикладное.
- В состав базового программного обеспечения входят: операционные системы, оболочки, утилиты, средства технического обслуживания, системы программирования.
- Ядром базового (системного) программного обеспечения является операционная система. К функциям ОС относятся: обеспечение интерфейса пользователя, автоматический запуск, организация файловой структуры, управление установкой, исполнением и удалением приложений, обслуживание компьютера, работа в сети, обеспечение взаимодействия с аппаратной частью и др.
- Оболочка операционной системы – это надстройка над операционной системой. Она предоставляет пользователю ряд сервисных услуг в части управления каталогами и файлами (создание, переименование, копирование, удаление, быстрый поиск, просмотр и др. операции с файлами). Утилиты выполняют в основном функции по обслуживанию дисков и файловой системы: форматирование дисков, обеспечение сохранности информации, обслуживание файлов, создание и обновление архивов, защита от компьютерных вирусов и т.д.
- Средства технического обслуживания – это совокупность программно – аппаратных средств для диагностики и обнаружения ошибок в процессе работы компьютера или вычислительной системы в целом.
- Для совершенствования процесса разработки и отладки программ предназначены системы программирования, которые включают в себя входной язык программирования, транслятор, машинный язык, библиотеки стандартных программ, средства отладки оттранслированных программ и компоновки их в единое целое.
- Работа всех трансляторов строится по одному их 2х принципов: интерпретации или компиляции. Интерпретация осуществляет пошаговую трансляцию и немедленное выполнение оттранслированного оператора исходной программы. При компиляции процессы трансляции и выполнение программы разделены во времени. Сначала компилируемая программа преобразуется в набор объектных модулей на машинном языке, которые затем собираются в единую машинную программу, готовую к выполнению в виде файла на магнитном диске.
- Языки программирования делятся на машинно-зависимые и машинно-независимые. К машинно-зависимым относятся машинные и машинно – ориентированные (автокоды, языки символического кодирования, ассемблеры) языки. Машинно – независимые языки классифицируются на процедурно – ориентированные, проблемно – ориентированные и объектно-ориентированные. Основное достоинство языков высокого уровня – возможность описания программ решения задач в форме, максимально удобной для восприятия человеком.
- Для чего необходимо классифицировать программное обеспечение ИС?
- В чем различие между операционной системой и операционной оболочкой.
- Назовите функции операционных систем.
- Расскажите о видах интерфейса пользователя, применяемых в разных операционных системах.
- Каковы особенности операционной системы Windows 98?
- Перечислите функции ОС Windows 98 по обслуживанию файловой структуры.
- Отличие Windows 98 от Windows 95.
- Дайте структуру главного меню Windows 98.
- Дайте характеристику наиболее популярных операционных оболочек.
- Какие программные средства называются утилитами и каковы их функции?
- Какие утилиты входят в Norton Navigator?
- Что входит в состав системы программирования?
- В чем принципиальное различие между интерпретацией и компиляцией программы?
- Как классифицируются языки программирования?
- Самостоятельно осуществите работу с файлами и папками в Windows 95/98. Файловые операции.
- Создайте новую папку на диске (например, А:) в папке Мой компьютер. Это делается следующим образом: дважды щелкните мышью на значке диска А:, в меню Файл выберите команду Создать, в появившемся подменю выберите пункт Правка, после чего появится значок Новая папка, выберите команду Переименовать в меню Файл, замените подпись Новая папка на имя Моя папка, в результате в окне появится папка Моя папка.
- Скопировать в созданную папку все файлы из текущей рабочей папки, например файлы из Excel \ Example \.
- Создать ярлык для новой папки и переместить его на рабочий стол.
- Выделить несколько расположенных подряд файлов в рабочей папке. Переместить выделенные файлы в другую папку.
- Удалить несколько (ненужных) файлов командой Удалить в меню Файл или нажатием кнопки Удалить. Какой способ лучше?
- Найти некоторый файл документа по команде Файлы и папки в меню Поиск, учитывая следующие критерии: имя, расширение, размер, дату последней модификации, заголовок какого-нибудь раздела или содержание отрывка текста из документа.
- Вызвать контекстное меню, щелкнув правой кнопкой мыши на пустой области рабочего стола. Выбрать команду Упорядочить значки, расположить значки в алфавитном порядке.
- В окне Windows выбрать любой текстовый файл и просмотреть его с помощью команды Быстрый просмотр.
- Просмотреть сводную информацию о любом несетевом диске, вызвав на экран диалоговое окно Свойства следующими способами: выбрав команду Свойства из меню Файл; щелкнув правой кнопкой мыши по значку диска и выбрав нужную команду из контекстного меню; щелкнув по кнопке Свойства на панели инструментов; выделив значок диска и нажав Alt + ENTER. Определите оптимальный способ вызова окна Свойства.
- Завершите работу с Windows 95/98.
- Программное обеспечение ИС делится на:
- Какая из основных элементов системного программного обеспечения управляет вычислительным процессом?
- По какому признаку ОС делятся на командные и объектно – ориентированные?
- по количеству процессоров
- по разрядности кода ОС
- Какой пункт главного меню Windows 98 открывает доступ к некоторым логическим папкам пользователя, в которых он может использовать наиболее часто используемые документы?
- программы
- найти
- Среди перечня оболочек наибольшую популярность имеет:
- DOS NAVIGATOR
- Microsoft Internet Explorer
- WinRAR
- Назовите утилиту пакета Norton Navigator, которая упрощает навигацию папок с использованием контекстного меню.
- Norton File Monger
- Norton Taskbar
- Norton Navigator Control
- Norton Indexing
- транслятор
- библиотека стандартных программ
- языки программирования
- входной язык
- К каким языкам относится язык символического кодирования:
- машинным
- По какому признаку делятся алгоритмические языки на машинно – зависимые и машинно – независимые?
- по назначению
- по специфике структуры языковых конструкций
- Какой язык требует высокой квалификации программистов?
- Cu
- Java
Номер вопроса Правильный ответ Ссылка на тему (подтему), поясняющая правильный ответ 1 B 4.1 2 A 4.1 3 C 4.1 4 C 4.1 5 D 4.2 6 C 4.2 7 E 4.3 8 B 4.3 9 C 4.3 10 C 4.3 1.1 Классификация систем программирования
В настоящее время существует множество систем программирования (СП) (таблица 1). Среди них наиболее популярными являются Паскаль, Basic, Java, C++, Delphi.
Системы программирования информационных систем
Системы программирования информационных систем обеспечивают разработчика инструментарием доступа к файлам и базам данных, более развитым, чем это имеет место для традиционных языков программирования. Эти средства программирования включают как форматы обычных языков программирования (операторы, операции и функции), так и команды (операторы) обращения к таблицам (файлам данных) баз данных и вспомогательным файлам, образующим базу данных (форматы, индексы, частотные словари).
Таблица 1. Классификация систем программирования
Степень близости к архи-тектуре компьютера
Паскаль, Ада, Basic, Java, C++
Потенциальная или реаль-ная область применения
Basic, Паскаль, Simula
Возможность абстрагиро-ваться от деталей алго-ритма решения задачи
Паскаль, Ада, Basic
Prolog, Langin, FoxPro
1.2 Средства автоматизированной разработки программ
Общие принципы, используемые при разработке программ:
– частотный принцип – основан на выделении в алгоритмах и в обрабатываемых структурах действий и данных по частоте использования. Для действий, которые часто встречаются при работе программы, обеспечиваются условия их быстрого выполнения. К данным, к которым происходит частое обращение, обеспечивается наиболее быстрый доступ. «Частые» операции стараются делать более короткими;
– принцип модульности. Модуль – часть какой-либо хорошо структурированной системы, выполняющая четко определенные функции.
Способы обособления составных частей программы в отдельные модули могут быть различными. Чаще всего разделение происходит по функциональному признаку. В значительной степени разделение системы на модули определяется используемым методом проектирования программного обеспечения;
– принцип функциональной избирательности является логическим продолжением частотного и модульного принципов и используется при проектировании программного обеспечения, объем которого превосходит имеющийся объем оперативной памяти. В программном обеспечении выделяются модули, которые постоянно должны быть в состоянии готовности для эффективной организации вычислительного процесса. Эту часть в программном обеспечении называют ядром или монитором. При формировании состава монитора требуется удовлетворить двум противоречивым требованиям. В состав монитора, помимо чисто управляющих модулей, должны войти наиболее часто используемые модули. Программы, входящие в состав монитора, постоянно хранятся в оперативной памяти. Остальные части программного обеспечения постоянно хранятся на внешних запоминающих устройствах и загружаются в оперативную память только по вызову, перекрывая друг друга при необходимости;
– принцип генерируемости – основное положение этого принципа определяет такой способ исходного представления программного обеспечения, который бы позволял осуществлять настройку на конкретную конфигурацию технических средств, круг решаемых проблем, условия работы пользователя;
– принцип функциональной избыточности – учитывает возможность проведения одной и той же работы (функции) различными средствами. Особенно важен учет этого принципа при разработке пользовательского интерфейса;
– принцип «умолчания» – применяется для облегчения организации связей с системой как на стадии генерации, так и при работе с уже готовой программой. Принцип основан на хранении в системе базовых описаний структур, модулей, конфигураций оборудования и данных, определяющих условия работы с программой;
– общесистемные принципы – при создании и развитии программного обеспечения рекомендуется применять следующие общесистемные принципы:
– принцип включения – предусматривает, что требования к созданию, функционированию и развитию программного обеспечения определяются со стороны более сложной, включающей его в себя системы;
– принцип системного единства – на всех стадиях создания, функционирования и развития программного обеспечения его целостность будет обеспечиваться связями между подсистемами, а также функционированием подсистемы управления;
– принцип информационного единства, т.е. во всех подсистемах, средствах обеспечения и компонентах программного обеспечения используются единые термины, символы, условные обозначения и способы представления;
– принцип развития – предусматривает в программном обеспечении возможность его наращивания и совершенствования компонентов и связей между ними;
– принцип комплексности – заключается в том, что программное обеспечение обеспечивает связность обработки информации как отдельных элементов, так и для всего объема данных в целом на всех стадиях обработки;
– принцип совместимости – состоит в том, что язык, символы, коды и средства обеспечения программного обеспечения согласованы, обеспечивают совместное функционирование всех его подсистем и сохраняют открытой структуру системы в целом;
– принцип инвариантности – предопределяет, что подсистемы и компоненты программного обеспечения инвариантны к обрабатываемой информации, т.е. являются универсальными или типовыми.
Особенностью автоматизации разработки является использование общих ресурсов. Основные виды совместного доступа к ресурсам:
– использования утилит, общих для всех программ комплекса. Так, например, утилита проверки орфографии доступна из всех программ пакета;
– применение объектов, которые могут находиться в совместном использовании нескольких программ;
– реализация простого метода перехода из одного приложения к другому;
– реализация построенных на единых принципах средств автоматизации работы с приложе-нием, что позволяет организовать комплексную обработку информации при минимальных затратах на программирование и обучение программированию на языке макроопределений.
Совместное использование объектов с несколькими приложениями – краеугольный камень современной технологии интеграции программ и манипулирования данными. Разработаны два основных стандарта в этой области: динамической компоновки и встраивания объектов Object Linking and Embedding (OLE) фирмы Microsoft, OpenDoc фирм Apple, Borland, IBM, Novell и WordPerfect.
Механизм динамической компоновки объектов дает возможность пользователю помещать информацию, созданную одной прикладной программой, в документ, формируемый в другой. При этом пользователь может редактировать информацию в новом документе средствами того продукта, с помощью которого этот объект был создан (при редактировании автоматически запускается соответствующее приложение). Запущенное приложение и программа обработки документа-контейнера выводит на экран «согласованные» меню, часть пунктов которого принадлежит одной программе, а другая часть – другой. Данный механизм позволяет переносить OLE-объекты из окна одной прикладной программы в окно другой.
В этой технологии предусмотрена возможность общего использования функциональных ресурсов программ. Например, модуль построения графиков табличного процессора может быть использован в текстовом редакторе.
Недостатком данной технологии является ограничение на размер объекта размером одной страницы.
OpenDoc – объектно-ориентированная система, базирующаяся на открытых стандартах фирм участников разработки. Предполагается совместимость между OLE и OpenDoc.
Диалоговые программы
Для конечных пользователей требуется создание таких средств и методов общения с вычислительной системой, благодаря которым, не владея профессионально приемами программирования, они могли бы удовлетворять свои информационные потребности при взаимодействии с машиной.
Пользователь и компьютер могут взаимодействовать в пакетном и диалоговом режимах.
Пакетный режим был наиболее распространен при централизованной организации решения задач. Организация вычислительного процесса при пакетном режиме строится без доступа пользователя к ЭВМ. Его функции ограничиваются подготовкой исходных данных по комплексу (пакету) задач и передачей их в центр обработки, содержащий задание для ЭВМ на обработку, программы и нормативно-справочные данные. Пакет вводится в ЭВМ и реализуется в автоматическом режиме в соответствии с приоритетами задач без участия пользователя, что позволяет минимизировать время выполнения заданного набора задач. При этом работа ЭВМ может проходить в однопрограммном или многопрограммном режиме, что предпочтительнее, так как обеспечивается параллельная работа основных устройств машины.
Диалоговый режим взаимодействия пользователя и ЭВМ обеспечивает возможность оперативного вмешательства человека в процесс обработки информации на ЭВМ. При коллективном диалоге с вычислительной системой управленческий персонал организации может использовать в автоматизированном процессе решения производственно-хозяйственных задач большой набор слабо формализуемых факторов в соответствии со своим опытом и знаниями реальной экономической ситуации.
Диалог представляет собой обмен информационными сообщениями между участниками процесса, когда прием, обработка и выдача сообщений происходят в реальном масштабе времени.
В основе машинной диалоговой технологии обработки информации лежит взаимодействие человека и ЭВМ во время решения задачи посредством передачи и приема сообщений через терминальные устройства. При диалоге типа «человек – ЭВМ» целью пользователя является получение данных в процессе решения задачи. Цель использования ЭВМ – оказание помощи пользователю при выполнении рутинных операций.
Понимание при диалоге достигается наличием единой системы языковых знаков или кодов, из которых формируются сообщения. Общие знания и умения у партнеров диалога обеспечивают эффективное понимание друг друга.
Если роли участников диалога заданы жестко, то такой диалог называется жестким, например, режим работы «вопрос–ответ» с указанием того, кому из партнеров принадлежит инициатива. Альтернативная жесткая структура задает множество предписанных вариантов диалога, пред-ставляемых пользователю в виде меню, как правило, иерархической структуры, из которого он выбирает направление решения задачи. Такой диалог называется гибким. Свободным называется диалог, позволяющий участникам общения обмениваться информацией произвольным образом.
Диалоговые системы решения задач для пользователей-специалистов в области управления должны обеспечивать относительно простые, но надежные сервисные функции по синтактическому, логическому и численному контролю исходных данных; корректировке хранимой в памяти ЭВМ информации; прерыванию процедуры выполнения алгоритмического процесса с возвратом в ближайшую к прерванной процедуре точку алгоритма с восстановлением соответствующих ей исходных состояний файлов.
Эксплуатационные характеристики диалоговых систем должны удовлетворять следующим требованиям:
– адаптация пользователя к системе;
– единообразие вычислительных, логических процедур и терминологии;
– снабжение пользователя справочной информацией и необходимыми инструкциями, выводи-мыми на экран видеотерминала или печатающее устройство с указанием моментов получения помощи от ЭВМ или необходимости проведения ответных действий;
– использование кратких форм диалога;
– наличие защитных средств информации в системе, реализуемых операционными системами и специальными программами.
Технология обработки данных в диалоговом режиме на ЭВМ предполагает:
– организацию в реальном времени непосредственного диалога пользователя и машины, в ходе которого ЭВМ информирует человека о состоянии решаемой задачи и предоставляет ему возможность активно воздействовать на ход ее решения;
– обеспечение реактивности, т.е. оперативной циркуляции сообщений как между функциональными задачами (программами), так и между задачами и пользователем.
Для решения практических задач структура диалога включает различные возможные способы обмена информацией между пользователем и ЭВМ, т.е. диалоговая система содержит множество запросов и соответствующих им ответных сообщений. Каждому запросу соответствует несколько альтернативных ответных сообщений. Схема диалога разрабатывается на весь комплекс решаемых задач. Каждому пользователю выделяются отдельные части схемы диалога с целью автоматического контроля его полномочий и для предотвращения несанкционированного доступа.
Наиболее распространенными типами организации диалога являются меню, шаблон, команда, естественный язык.
Меню как тип диалога очень удобен для конечного пользователя. Реализация диалога типа «меню» возможна через вывод на экран видеотерминала определенных функций системы.
Выбор конкретной функции пользователем может осуществляться:
– набором на клавиатуре требуемой директивы или ее сокращенного обозначения;
– набором на клавиатуре номера необходимой функции;
– подведением курсора в строку экрана с нужной пользователю функцией;
– нажатием функциональных клавиш, запрограммированных на реализацию данной функции.
При наличии различных вариантов ответов на ввод функций пользователем в последующих шагах производится детализация, или уточнение действий.
Частным случаем диалога типа «меню» является режим ответа ДА/НЕТ, т.е. пользователю предлагаются два альтернативных варианта ответа: ДА или НЕТ.
Шаблон – режим взаимодействия конечного пользователя и ЭВМ, на каждом шаге которого система воспринимает только синтаксически ограниченное по формату входное сообщение пользователя. Варианты ответа пользователя ограничиваются форматами, предъявляемыми ему на экране видеотерминала. Диалог может быть реализован через:
– указание системой на экране дисплея формата вводимого пользователем сообщения;
– резервирование места для сообщения пользователя в тексте сообщения системы на экране терминала.
Диалог «шаблон» используется для ввода данных, значения которых понятны или являются профессиональными терминами, известными пользователю по его предметной области.
Различают жесткий и свободный шаблон. Жесткий шаблон предусматривает, чтобы количество вводимых пользователем символов обязательно соответствовало числу разрядов, выделенных программой на экране дисплея. При свободном шаблоне задается предельно допустимое поле, в которое вносится конкретное значение.
Разновидностью данного типа диалога является простой запрос: пользователю предоставляется возможность вводить массив, состоящий более чем из одного сообщения, по формату, заданному системой. Диалог в этом случае сводится всего лишь к одному шагу, а в качестве сообщений на экране компьютера могут быть выведены анкетные данные работающих, номенклатура материальных ценностей.
Диалог типа «команда» инициируется пользователем. При этом выполняется одна из допустимых на данном шаге диалога команд пользователя. Их перечень отсутствует на экране, но легко вызывается на экран с помощью специальной директивы или функциональной клавиши (обычно F1). При вводе ошибочной команды (нет в списке, не тот формат или синтаксис) выдается сообщение об ошибке.
Естественный язык – тип диалога, при котором запрос и ответ со стороны пользователя ведется на языке, близком к естественному. Пользователь формулирует задачу, но с набором установленных программной средой слов, фраз и синтаксиса языка. Система может уточнять формулировку пользователя. Разновидностью диалога является речевое общение с системой.
Обычно при решении задач используется сочетание нескольких типов диалога. Это дает воз-можность общаться с системой как пользователю-неспециалисту (должен знать свой пароль и свое меню), так и пользователю-специалисту с более широким диапазоном выполняемых функций.
Для всех категорий пользователей программных средств, работающих в режиме диалога, обязательной является включаемая в них система помощи и средств обучения (HELP), ускоряющая как процесс освоения, так и процесс работы. Освоение основных функций любого пакета диалогового типа не должно требовать специальных знаний в области языков программирования, архитектуры ЭВМ.
Пользователь работает с различными диалоговыми программными системами, поэтому в них целесообразно закладывать некоторое единообразие. Например, использование функциональных клавиш F1 и F10 обеспечивает вызов помощи и выход из системы, применение управляющих клавиш или их комбинаций для управления состоянием процесса вычислений.
Все большее распространение как форма диалогового взаимодействия пользователя с ЭВМ приобретает его работа в мультимедийной среде – объединенное взаимодействие различных каналов передачи информации от машины к человеку. Мультимедийные технологии находят применение в обучающих системах, в компьютерной мультипликации и рекламе, в системах автоматизации проектирования и экспертных системах.
Ускоряется общий процесс технологической обработки данных в распределенных (децентрализованных) системах обработки данных на базе ПК, работающих в режиме диалога. Ввод данных с клавиатуры позволяет повысить достоверность вводимой информации за счет визуального контроля на экране, применения логико-синтактического метода контроля, снизить затраты на проведение операций по формированию отдельных массивов и баз данных.
Диалоговая технология для системы обработки данных на базе ПК обеспечивает проведение автоматизированного сбора, регистрации и предварительной обработки данных непосредственно на рабочих местах специалистов управления – создание автоматизированных рабочих мест (АРМ). Диалоговая технология приближает вычислительную технику к пользователю, однако требует применения повышенных мер по обеспечению защиты информации от несанкционированного доступа.
Диалоговые системы различаются между собой по различным признакам: виду обрабатываемой информации, технической базе, автономности. Для выбора диалоговой системы, ориентированной на решение однотипного класса задач, устанавливается система критериев или показателей оценки. Целесообразно эффективность диалоговой системы определять с точки зрения пользователя, который главными показателями системы считает время отклика и время ожидания обслуживания, время решения задачи и степень мобильности, обеспечивающей пользователю перечень действий в нерегламентных условиях.
Системы программирования и прикладное программное обеспечение компьютера
Системы программирования – это средства разработки, называемые инструментами программиста.
К средствам разработки программных продуктов относятся следующие системы:
— Системы процедурного (алгоритмического) программирования, трансляторы языков программирования, например, QBASIC, Turbo Pascal;
— Системы объектно-ориентированного визуального программирования, например, VisualBasic, Delphi;
— Системы логического программирования, например, Пролог;
— Средства поддержки программирования в системах управления базами данных (СУБД), например,dBase, Access;
— Средства создания Web–страниц, например, FrontPage, Home Site.
Основой системы процедурного программирования является транслятор. Системы процедурного программирования являются традиционными средствами разработки программ на алгоритмических языках программирования.
Современные системы визуального программирования позволяют сделать процесс программирования более наглядным за счёт использования графического интерфейса.
Системы логического программирования реализуют декларативный способ представления знаний, когда программист лишь формулирует задачу с помощью фактов и правил. Система логического программирования с помощью механизма логического вывода получает все возможные следствия, т.е. ищет решение задачи.
Системы управления базами данных (СУБД) позволяют создавать, редактировать и модифицировать базы данных.
Инструментальные средства создания Web–страниц используются большим количеством профессионалов для поиска неуловимых данных Internet. Здесь применяется гипертекст, позволяющий просматривать темы и документы, и связывает слова с другими документами, содержащими родственную информацию. Например, в документе об Австралии вы можете перейти к статье о кенгуру, а затем к рассказу о сумчатых животных, т.е. ко всему, связанному с темой.Прикладное программное обеспечение (приложения) — это программы для пользователя.
К ним относятся:
1.Офисные приложения, например, Microsoft Office:
— Текстовый редактор Word;
— Электронные таблицы Excel;
— Мастер презентаций PowerPoint;
— и др.
2.Базы данных;
3.Системы компьютерной графики, например,CorelDraw, Animator Pro; они позволяют создавать и редактировать изображения, а также создавать анимацию.
4.Системы автоматизированного проектирования (САПР), например, AutoCad;; они позволяют разрабатывать проекты и создавать чертежи и схемы различных объектов (машин и механизмов, зданий, электронных схем и т.д.).
5.Сетевые приложения, например, Internet Explorer, Netscape Communicator, Opera;
6.Утилиты, например
— Антивирусные программы,например, Dr.Web;
— Архиваторы, например, WinRAR, Arj;
7. Обучающие программы;
8. Энциклопедии, справочники;
9. Программы распознавания текста, например, FineReader;
10. Программы-переводчики с иностранных языков, например, Stylus;
11. Игры и др.
Наибольшее количество пользователей работает с офисными приложениями и создаёт текстовые файлы, включая элементы графики, использует электронные таблицы и системы подготовки презентаций. Квалифицированный пользователь может создавать простые базы данных и работать с ними.
Для работы во всемирной компьютерной сети Internet используются специальные сетевые приложения, такие, как браузеры, позволяющие «путешествовать» по Всемирной паутине, почтовые программы, необходимые для работы с почтой и доступа к телеконференциям, и др.
Всё большее количество пользователей применяет обучающие программы для самообразования и в учебном процессе. Большую пользу приносят различные мультимедиа-энциклопедии и справочники на CD-дисках, которые содержат огромный объём информации и средства быстрого поиска.
Программы распознавания текста позволяют преобразовывать отсканированные страницы текста из графического формата в текстовый формат.
Программы-переводчики позволяют производить автоматический перевод текстов с русского на иностранный язык или наоборот.
Компьютерные игры бывают самых различных типов (логические, стратегические и т. д.). Они помогают развивать мышление и реакцию играющих.Можешь пополнить материал раздела актуальной информацией. Пиши на e-mail: leniza@hotbox.ru
1.2 Классификация систем программирования
По набору входных языков различают системы программирования одно- и многоязыковые. Отличительная черта многоязыковых систем состоит в том, что отдельные части программы можно составлять на разных языках и с помощью специальных обрабатывающих программ объединять их в готовую для исполнения на ЭВМ программу.
По структуре, уровню формализации входного языка и целевому назначению различают системы программирования машинно-ориентированные и машинно-независимые.
Машинно-ориентированные системы программирования имеют входной язык, наборы операторов и изобразительные средства которых существенно зависят от особенностей ЭВМ (внутреннего языка, структуры памяти и т.д.). Машинно-ориентированные системы позволяют использовать все возможности и особенности машинно-зависимых языков:
высокое качество создаваемых программ;
возможность использования конкретных аппаратных ресурсов;
предсказуемость объектного кода и заказов памяти;
для составления эффективных программ необходимо знать систему команд и особенности функционирования данной ЭВМ;
трудоемкость процесса составления программ (особенно на машинных языках и ЯСК), плохо защищенного от появления ошибок;
низкая скорость программирования;
невозможность непосредственного использования программ, составленных на этих языках, на ЭВМ других типов.
Машинно-независимые системы программирования — это средство описания алгоритмов решения задач и информации, подлежащей обработке. Они удобны в использовании для широкого круга пользователей и не требуют от них знания особенностей организации функционирования ЭВМ. В таких системах программы, составляемые языках, имеющих название высокоуровневых языков программирования, представляют собой последовательности операторов, структурированные согласно правилам рассматривания языка (задачи, сегменты, блоки и т.д.). Операторы языка описывают действия, которые должна выполнять система после трансляции программы на машинном языке. Таким образом, командные последовательности (процедуры, подпрограммы), часто используемые в машинных программах, представлены в высокоуровневых языках отдельными операторами. Программист получил возможность не расписывать в деталях вычислительный процесс на уровне машинных команд, а сосредоточиться на основных особенностях алгоритма.