- •Режим доступа к электронному аналогу печатного издания: http://www.Libdb.Sssu.Ru
- •Оглавление
- •Предисловие
- •1. Информационные технологии, ресурсы и системы
- •1.1. Информационные технологии в современном обществе
- •1.2. Информационные ресурсы, продукты и инновации
- •1.3. Информационные технологии как система
- •1.3.1. Целесообразность
- •1.3.2. Компоненты и структура ит
- •1.3.3. Взаимодействие с внешней средой
- •1.3.4. Целостность
- •1.3.5. Развитие во времени
- •1.4. Информационная система
- •1.5. Виды информационного обслуживания
- •Вопросы для самоконтроля
- •2. Программное обеспечение информационных технологий
- •2.1. Основные понятия
- •2.2. Эволюция программного обеспечения
- •2.3. Классификация программного обеспечения
- •2.4. Системное программное обеспечение
- •2.4.1. Базовая система ввода-вывода
- •2.4.2. Операционные системы
- •2.4.3. Классификация операционных систем
- •2.4.4. Виды операционных систем
- •1.1.1.Файловая структура операционных систем
- •2.4.6. Операционные оболочки
- •2.4.7. Утилиты
- •2.5. Прикладное программное обеспечение
- •2.5.1. Программы общего назначения
- •2.5.3. Настольные издательские системы
- •2.5.4. Программы дизайна
- •2.5.4. Системы автоматизированного проектирования (сапр)
- •2.5.5. Программы экономического назначения
- •2.5.6. Офисные программы
- •2.5.7. Коммуникационные программы
- •2.5.8. Системы искусственного интеллекта
- •2.5.9. Программы для научных расчётов
- •2.5.10. Обучающие, развивающие, справочные и развлекательные программы
- •2.5.11. Интегрированные пакеты
- •2.6. Инструментальное программное обеспечение
- •2.7. Нумерация версий программ
- •Вопросы для самоконтроля
- •3. Основы классификации, структурирования и кодирования информации
- •3.1. Структура информации в информационных системах
- •3.2. Основы классификации информации
- •3.2.1. Иерархическая система классификации
- •3.2.2. Фасетная классификация
- •1.1.2.Дескрипторная система классификации
- •1.2.Кодирование информации
- •1.2.1.Системы кодирования
- •1.2.2.Порядковое кодирование
- •1.2.3.Серийно-порядковое кодирование
- •1.2.4.Последовательное кодирование
- •1.2.5.Параллельное кодирование
- •1.2.6.Штриховое кодирование
- •1.3.Классификаторы
- •Вопросы для самоконтроля
- •2.Принципы организации баз данных
- •2.1.Задачи, решаемые с помощью баз данных
- •2.2.Классификация баз данных
- •2.3.Реляционная модель данных
- •2.4.Свойства полей базы данных
- •2.5.Типы данных
- •2.6.Безопасность и объекты баз данных
- •2.7.Проектирование баз данных
- •2.8.Системы управления базами данных
- •Вопросы для самоконтроля
- •5. Технологии противодействия вредоносным программам
- •2.9.Классификация вирусов
- •2.9.1. Вирусы
- •2.9.2. Черви
- •2.9.3.Трояны
- •2.9.4.Угрозы безопасности информации
- •2.10.Антивирусы
- •2.10.1.Технологии обнаружения вирусов
- •2.10.2.Режимы работы антивирусов
- •2.10.3.Антивирусный комплекс
- •2.11.Выбор антивирусных комплексов
- •Вопросы для самоконтроля
- •3.Современные средства и линии связи
- •3.1.Проводные линии связи
- •3.1.1.Факсимильная связь
- •3.1.2.Оптоволоконные линии связи
- •3.2.Беспроводные системы связи
- •3.2.1.Радиорелейные линии связи
- •3.2.2.Спутниковая связь и навигация
- •3.2.3.Спутниковое цифровое телевидение
- •3.2.4.Пейджинговая связь
- •3.2.5.Стандарты беспроводной связи irda
- •3.3.Мобильная сотовая связь
- •3.3.1.Организация сотовой сети
- •3.3.2.Аналоговые стандарты сотовой связи
- •3.3.3.Эволюция к цифровым стандартам
- •3.3.5.Технологии передачи сообщений Short Message Service (sms)
- •3.4.Интернет-телефония
- •Вопросы для самоконтроля
- •4.Моделирование бизнес-процессов
- •4.1.Предметная область
- •4.1.2.Методология idef0
- •4.1.1.Case-средства
- •4.1.3.Методология dfd
- •4.1.4.Методология описания процессов idef3
- •4.2.Программа AllFusion Process Modeler
- •4.2.1.Польза от AllFusion Process Modeler
- •4.2.2.Управление сложными бизнес-процессами
- •4.2.3.Отличительные черты AllFusion Process Modeler
- •Вопросы для самоконтроля
- •8. Технологии документооборота на современном предприятии с использованием технических средств
- •4.3.Информационные связи предприятия.
- •Типовая структура предприятия
- •4.4.Структура современного коммерческого предприятия
- •4.5.Интернет/интранет и структура предприятия
- •4.6.Офисная техника и информационные потоки в современном офисе
- •4.7.Технологии перевода бумажных документов в электронные
- •4.8.Виды систем ввода документов
- •4.9.Автоматизация документооборота
- •4.9.1.Юридическая сила электронного документа
- •4.9.2.Электронный обмен неюридическими документами
- •4.9.3.Дублирующий обмен юридическими документами
- •4.9.4.Документооборот на базе электронной почты
- •4.9.5.Системы автоматизированного документооборота
- •4.10.Работа с web-документами
- •4.10.1.Интернет – сеть сетей
- •4.10.2.Технология Интернета как надёжная технология доставки данных
- •4.10.3.Адресация в Интернете
- •Вопросы для самоконтроля
- •9. Интернет-технологии в бизнесе (электронная коммерция)
- •4.11.Интернет-маркетинг
- •4.12.Интернет-магазин
- •4.12.1.Порядок оформления заказа
- •4.12.2.Виды оплаты и доставки в Интернет-магазине
- •4.13.Электронная дистрибуция
- •Вопросы для самоконтроля
- •Тестовые задания для самоконтроля
- •Библиографический список
- •3 46500, Г. Шахты, Ростовская обл., ул. Шевченко, 147
2.6. Инструментальное программное обеспечение
При наличии десятков тысяч программ для ПК иногда пользователям может потребоваться что-то такое, чего не делают имеющиеся программы. В этих случаях следует использовать инструментальное программное обеспечение, или системы программирования.
Системы программирования – это комплексы программ и прочих средств, предназначенных каждый для разработки и эксплуатации программ на конкретном языке программирования для конкретного вида ПК.
Системы программирования позволяют разрабатывать как системное, так и прикладное программное обеспечение. Следовательно, они играют в программировании роль средств производства.
Эти системы обычно включают некоторую версию языка программирования, транслятор программ, редактор текстов программ, библиотеки полезных подпрограмм, отладчики, справочные системы, а иногда и различные вспомогательные программы.
Язык программирования – это искусственный язык, с помощью которого записывается алгоритм решения задачи в виде, понятном ПК.
Существуют сотни языков программирования, и у каждого могут быть десятки версий. Каждый программист пишет программы на том языке, который ему удобен, и нет языка программирования, считающегося общепринятым.
Но у всех языков программирования есть одно общее свойство. Они понятны программистам, но непонятны процессору, так как процессор может работать только с числами и потому понимает программы, записанные только в машинном коде. Поэтому программы, записанные на любом языке программирования, сначала «переводят» на язык процессора, то есть превращают в машинный код. Этот перевод выполняют специальные программы-переводчики. По-английски «перевод» называется трансляцией (translation), поэтому программы, выполняющие перевод программ на язык машинного кода, называют трансляторами.
Различают следующие виды трансляторов:
интерпретатор;
компилятор.
Интерпретатор берёт очередной оператор языка из текста программы, анализирует его структуру и сразу исполняет. Потом переходит к следующему оператору. Компилятор переводит всю программу в машинные команды без её выполнения.
Существующие языки программирования можно разделить на две группы: процедурные и непроцедурные (рис. 2.8).
Рис. 2.8. Языки программирования
Процедурные (алгоритмические) программы представляют собой систему предписаний для решения конкретной задачи. Процедурное (императивное) программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 1940-х гг. Программа на процедурном языке программирования состоит из последовательности операторов (инструкций), задающих процедуру решения задачи.
Процедурные языки разделяют на языки высокого и низкого уровня.
Языки низкого уровня позволяют создавать программы из машинных кодов, обычно в шестнадцатиричной форме. С помощью этих языков удобнее разрабатывать системные программы, драйверы.
В группу языков низкого уровня входят машинные языки и языки символического кодирования: (Автокод, Ассемблер). Операторы этого языка – это те же машинные команды, но записанные мнемоническими кодами, а в качестве операндов используются не конкретные адреса, а символические имена. Все языки низкого уровня ориентированы на определённый тип компьютера, т.е. являются машинно-зависимыми. Машинно ориентированные языки – это языки, наборы операторов и изобразительные средства которых существенно зависят от особенностей ЭВМ.
Программы на языках высокого уровня близки к естественному языку и представляют набор заданных команд (С, Basic). Языки программирования высокого уровня – языки машинно-независимые, т.к. они ориентированы не на систему команд той или иной ЭВМ, а на систему операндов, характерных для записи определённого класса алгоритмов. Однако программы, написанные на языках высокого уровня, занимают больше памяти и медленнее выполняются, чем программы на машинных языках. К ним относятся Pascal, Basic, C и т.д.
Непроцедурное программирование появилось в начале 70-х гг. XX в.
Объектно ориентированные языки высокого уровня. На таких языках не описывают подробной последовательности действий для решения задачи, хотя они содержат элементы процедурного программирования. Объектно ориентированные языки, благодаря богатому пользовательскому интерфейсу, предлагают человеку решить задачу в удобной для него форме. К объектно ориентированным (ОО) языкам относятся С++, Borland Delphi, Object Pascal.
При использовании декларативного языка программист указывает исходные информационные структуры, взаимосвязи между ними и то, какими свойствами должен обладать результат. При этом процедуру получения (алгоритм) программист не строит. В этих языках отсутствует понятие «оператор». Декларативные языки можно разделить на два семейства – логические (языки, основанные на системе правил) и функциональные.
В функциональных языках программа описывает вычисление некоторой функции. Обычно эта функция задаётся как композиция других, более простых, те в свою очередь разлагаются на ещё более простые и т.д. Один из основных элементов в функциональных языках – рекурсия, то есть вычисление значения функции через значение этой же функции от других элементов. Присваивания и циклов в классических функциональных языках нет. Примером функционального языка является Лисп – язык искусственного интеллекта.
В логических языках программа вообще не описывает действий. Она задаёт данные и соотношения между ними. После этого системе можно задавать вопросы. Машина перебирает известные и заданные в программе данные и находит ответ на вопрос. Порядок перебора не описывается в программе, а неявно задаётся самим языком. Классическим языком логического программирования считается Prolog. Построение логической программы вообще не требует алгоритмического мышления, программа описывает статические отношения объектов, а динамика находится в механизме перебора и скрыта от программиста. Visual Prolog поддерживает не только декларативный, но и объектно ориентированный стиль программирования.
Языки описания сценариев, такие как Perl, Python, Rexx, Tcl и языки оболочек UNIX, предполагают стиль программирования, весьма отличный от характерного для языков системного уровня. Они предназначаются не для написания приложения с нуля, а для комбинирования компонентов, набор которых создаётся заранее при помощи других языков. Развитие и рост популярности Internet также способствовали распространению языков описания сценариев. Так, для написания сценариев широко употребляется язык Perl, а среди разработчиков web-страниц популярен JavaScript.
Из универсальных языков программирования сегодня наиболее популярны следующие: Бейсик (Basic), Паскаль (Pascal), Си++ (C++), Ява (Java).
Для каждого из этих языков программирования сегодня имеется немало систем программирования, выпускаемых различными фирмами и ориентированных на различные модели ПК и операционные системы. Наиболее популярны следующие визуальные среды быстрого проектирования программ для Windows:
Basic: Microsoft Visual Basic;
Pascal: Borland Delphi;
C++: Borland C++Builder.
В последнее время стали появляться системы программирования на языке Java (Symantec Cafe, Microsoft J++ и др.), они позволяют создавать программы, вызываемые при просмотре web-страниц в глобальной электронной сети Internet.
Особым классом систем программирования являются системы для создания приложений типа клиент-сервер. Эти системы позволяют быстро создавать информационные системы для подразделений и даже крупных предприятий. В них содержатся средства для создания пользовательского интерфейса, описания процедур обработки данных, заготовки для выполнения типовых действий по обработке данных и т.д. Эти системы, как правило, позволяют работать с самыми различными СУБД – Oracle, Sybase, Microsoft SQL Server и др. Среди наиболее популярных систем такого рода можно назвать PowerBuilder фирмы Sybase, Delphi фирмы Borland, Visual Basic фирмы Microsoft. Разумеется, средства для создания приложений типа клиент-сервер имеются и в составе СУБД типа клиент-сервер (Oracle, Sybase и др.), но они ориентированы только на данную СУБД.
С точки зрения информационных технологий программирование имеет промышленный характер, который соответствует традиционным стадиям жизненного цикла программного продукта:
анализ требований;
разработка спецификаций;
проектирование;
макетирование;
написание исходного текста;
отладка;
документирование;
тестирование.
