
- •Часть 1
- •Раздел 1. Техническое и программное обеспечение информационных технологий
- •Тема 1. Предмет и основные понятия
- •Вопросы
- •Предмет и содержание дисциплины
- •Раздел 1. Техническое и программное обеспечение информационных технологий
- •Раздел 2. Технологии баз данных и знаний
- •Раздел 3. Корпоративные информационные системы
- •Информатизация Информационное общество, характерные черты и перспективы его развития
- •Социальные и правовые аспекты информатизации
- •Государственная политика Республики Беларусь в области информатизации
- •Стратегия развития информационного общества в Республике Беларусь
- •Информационные технологии Понятие информационных технологий, этапы их развития
- •Компьютерные информационные технологии и их классификация
- •Основные понятия компьютерных информационных технологий Информация, данные, знания
- •Обработка информации Обобщенная технологическая схема обработки информации
- •Контрольные вопросы
- •Тема 2. Техническое обеспечение компьютерных информационных технологий Вопросы
- •Электронные вычислительные машины Классификация средств вычислительной техники
- •Принципы организации и функционирования эвм Джона фон Неймана
- •Обобщенная структура эвм, характеристика и назначение основных устройств
- •Классификация эвм
- •2. Типы архитектур вычислительных систем Однопроцессорные, многопроцессорные и многомашинные вычислительные системы
- •Однородные и неоднородные системы
- •2. Процессоры Назначение и характеристика компонентов процессора
- •Типы архитектур процессоров
- •Персональные компьютеры Характеристика и классификация персональных компьютеров
- •5. Структурная схема персонального компьютера
- •6.Устройства ввода/вывода
- •7. Производительность персонального компьютера
- •8. Тенденции развития технических средств кит
- •Перспективы развития персональных компьютеров
- •Контрольные вопросы
- •Тема 3. Сетевые информационные технологии Вопросы
- •1. Компьютерные сети
- •Классификация компьютерных сетей
- •Стандартизация компьютерных сетей
- •Локальные компьютерные сети
- •Глобальная сеть internet
- •Адресация компьютера в сети
- •Система доменных имен
- •5.Сервисы internet Удаленное управление
- •Телеконференции
- •Передача файлов
- •Интерактивное общение
- •7. Браузеры
- •8. Электронная почта
- •9. Почтовые программы
- •Контрольные вопросы
- •Тема 4. Системное программное обеспечение компьютерных информационных технологий
- •1. Классификация программного обеспечения
- •Модели разработки программного обеспечения
- •Способы распространения программного обеспечения
- •Системное программное обеспечение
- •3. Операционные системы
- •4. Сетевые операционные системы
- •5. Операционная система windows
- •Файловые системы
- •Графический интерфейс windows
- •Стандартные папки windows
- •Поиск информации в windows
- •9. Файловые менеджеры
- •10. Защита информации средствами операционных систем
- •11. Технологии обмена данными
- •Буфер обмена
- •Замена формата
- •Гиперссылка
- •Гипертекстовая ссылка:
- •Контрольные вопросы
- •Тема 5. Сервисные программы Вопросы
- •Сервисные программы
- •Служебные программы ос windows
- •Антивирусные программы
- •4.Программы-ахиваторы
- •WinZip. Основные возможности WinZip:
- •Cоздание самораспаковывающихся архивов, что удобно для неподготовленного пользователя;
- •Контрольные вопросы
- •Тема 6. Прикладное программное обеспечение кит. Системы обработки текстовых документов
- •Прикладноe программное обеспечениe
- •Офисные пакеты
- •Защита информации в приложениях microsoft office
- •3. Системы обработки текстовых документов
- •4. Системы распознавания текстов
- •5.Текстовый процессор microsoft word
- •Заключительный этап – подготовка к печати и печать документа:
- •Контрольные вопросы
- •Тема 7. Системы обработки табличной информации
- •Табличные процессоры
- •2. Табличный процессор ms excel
- •Функциональные возможности Excel
- •Технология проектирования таблицы
- •3.Типы данных в ms excel
- •Автозаполнение данных
- •Возможности деловой графики
- •6.Технология создания связанных таблиц в ms excel
- •7. Возможности excel по работе со списком (базой данных)
- •Контрольные вопросы
- •Тема 8. Системы обработки графической информации Вопросы
- •1.Классификация компьютерной графики
- •2.Системы компьютерной графики
- •Форматы графических данных
- •3.Системы создания презентаций
- •4. Система создания презентаций powerpoint
- •Рекомендации по работе с PowerPoint
- •5.Презентация и ее структура
- •Контрольные вопросы
- •Тема 9. Пакеты для математической обработки данных
- •1. Пакеты для математической обработки данных
- •Пакет MatLab
- •Программа Mathematica
- •Пакет MathCad
- •Наглядность.
- •Наличие статистических и финансовых функций.
- •Мощная справочная база.
- •Технология работы в MathCad
- •Контрольные вопросы
- •Тема 10. Программы-органайзеры Вопросы
- •Программы-органайзеры
- •2. Программа microsoft outlook
- •Настройка рабочей среды
- •3. Средства ms outlook для организации рабочего места
- •4.Средства ms outlook для организации совместной работы
- •5.Тенденции развития программного обеспечения
- •Контрольные вопросы
- •Тема 11. Системы программирования Вопросы
- •1. Этапы решения задач на компьютере
- •2. Алгоритм
- •Начало Конец
- •3. Инструментальные средства программирования
- •Языки программирования и их классификация
- •4.Технологии программирования
- •Контрольные вопросы
4.Технологии программирования
Технология (от греческого: techne – искусство, + logos мастерство, учение) – совокупность знаний о методах обработки, изготовления, изменения состояния, свойств, формы сырья, материала или полуфабриката – в процессе производства.
Начало технологии программирования положено в середине ХХ-го века. Возникновение этого направления обусловлено рядом причин:
увеличение парка компьютеров и объема ПО;
программы большого объема и сложной структуры трудно читаемы и понимаемы;
рост стоимости разработки ПО;
специфические особенности процесса программирования.
Технология программирования преследует несколько целей:
увеличение скорости составления и отладки программ;
сведение к минимуму количества ошибок;
обеспечение условий для легкого изменения структуры программ;
содержание программ должно быть доступно программистам, как чертежи инженерам.
Этих целей можно достичь при индустриальном подходе к программированию:
расчленение процесса на стандартные элементы и выявление взаимосвязей между ними;
специализация исполнителей по определенным процедурам;
применение приемов и методов программирования с использованием стандартных и унифицированных решений;
тщательное планирование процесса и управление им.
Организация программирования в соответствии с принципами индустриальных методов получила название структурного подхода. Структурный подход нацелен на:
Упрощение и унификацию структуры ПО – структуризация ПО.
Унификацию и стандартизацию технической документации на ПО.
Организацию в соответствии со стандартными правилами процессов разработки ПО.
Важным в процессе упрощения и унификации структуры ПО является упорядочение сверху вниз, что предполагает начинать разработку с верхнего уровня иерархии – нисходящая обработка.
Унификация внутренней структуры блоков (узлов) предполагает стандартное построение тела каждого узла. Рекомендуется использовать три структуры:
линейную – простую последовательность (рис.11.4,а);
распределительную – выбор, или ветвление (рис.11.4,б);
циклическую – повторение (рис.11.4,в,г).
Рис. 11.4. Унифицированные структуры
Унификация и стандартизация технической документации на ПО достигаются внедрением стандартной формы спецификации ПО – единой системы документов, ведущихся в процессе разработки, эксплуатации и модификации ПО.
Организация процесса разработки и внедрения ПО предполагает соблюдение основных правил:
разработку ПО и его элементов осуществлять в последовательности сверху вниз;
для выполнения работ создавать специализированные группы стандартного состава с распределением функций между членами группы;
техническая документация должна разрабатываться и корректироваться параллельно с разработкой и корректировкой элементов ПО.
Структурное программирование – методология и технология разработки программных комплексов, основанная на принципах: программирования «сверху-вниз» и модульного программирования.
Программирование «сверху вниз» (нисходящее программирование) – методика разработки программ, при которой разработка начинается с определения целей решения проблемы, после чего идет последовательная детализация, заканчивающаяся детальной программой.
Модульное программирование – метод разработки программ, предполагающий разбиение программы на независимые модули. Оптимальный по размерам модуль должен помещаться на экране дисплея. Разделение программы на модули облегчает ее разработку, отладку и сопровождение.
В целом сегодня можно назвать следующие технологии программирования.
1. Метод восходящего проектирования – вначале определяются вспомогательные модули, которые потребуются для проектируемой программы.
2. Восходящее программирование (Программирование «снизу вверх») – методика разработки программ, когда крупные блоки собираются из ранее созданных мелких блоков. Восходящее программирование начинается с разработки ключевых процедур и подпрограмм, которые постоянно модифицируются.
3. Метод расширения ядра – метод восходящего программирования, при котором внимание уделяется выявлению множества вспомогательных модулей, а не определению функции всей программы.
4. Компьютерный дарвинизм – подход, основанный на принципе восходящей разработки при интенсивном тестироваИИ. Подход состоит из трех основных процессов: макетирования, тестирования и отладки.
5. Объектно-ориентированное программирование – программа рассматривается как набор дискретных объектов, содержащих наборы структур данных и процедур, взаимодействующих с другими объектами.
6. Сборочное программирование – программа собирается посредством повторного использования известных фрагментов программ.
7. Императивное программирование – характеризуется принципом последовательного изменения состояния вычислителя пошаговым образом.
8. Модульное сборочное программирование – разновидность сборочного программирования, основанная на процедурах и функциях методологии структурного императивного программирования.
9. Аспектно-ориентированное сборочное программирование – разновидность сборочного программирования, основанная на сборке полнофункциональных приложений из многоаспектных компонентов, инкапсулирующих различные варианты реализации.
10. Объектно-ориентированное сборочное программирование – разновидность сборочного программирования основанная на методологии объектно-ориентированного программирования и предполагающая распространение библиотек классов в виде исходного кода или упаковку классов в динамически компонуемую библиотеку.
11. Компонентное сборочное программирование – объектно-ориентированное сборочное программирование, основанное на распространении классов в бинарном виде и предоставление доступа к методам класса через строго определенные интерфейсы. Компонентное сборочное программирование поддерживают технологические подходы COM, CORBA, Net.
12. Логическое программирование – программирование в терминах фактов и правил вывода, с использованием языка, основанного на формальных исчислениях.
13. Синтезирующее программирование – программирование, предполагающее синтез программы по ее спецификации.
14. Диаграмма функционального моделирования (Structured analysis and design technique) – инструмент разработки функциональных спецификаций в виде диаграмм, фрагментов текста, глоссария – связанных перекрестными ссылками.
Технологии разработки программных комплексов включают:
Императивный подход. Программа – неструктурный набор команд.
Например: Fortran, С
Модульный (структурный) подход. Программа – описание действий, которые надо осуществить. При этом:
задача разбивается на подзадачи;
составляется структурная схема задач;
осуществляется реализация.
Например: SML, Haskell, Prolog, LISP.
Функциональный подход. Программа – функция с одним или несколькими аргументами.
Достоинства:
программа моделируется путем агрегирования математических функций;
память компьютера распределяется автоматически.
Недостатки:
структура программ нелинейная;
эффективность реализации невысокая.
Например: LISP, SML.
Логический подход. Программа – совокупность правил, или логических высказываний.
Достоинства:
высокий уровень машинной независимости;
возможность откатов.
Недостатки:
специфичность класса решаемых задач;
сложность реализации для систем реального времени.
Например: Prolog, Mercury.
Объектно-ориентированный подход. Программа – описание объектов, их свойств и методов их обработки.
Достоинства:
близость к предметной области;
поддержка механизмов изменения объектов;
использование библиотек объектов и методов.
Недостатки:
трудности формализации объектов;
трудности тестирования программы.
Например: С++, С#; Visual Basic, Eiffel, Oberon.
Подход сценариев (скриптов). Программа – совокупность возможных сценариев обработки данных.
Достоинства:
интуитивная ясность описаний;
близость к предметной области;
высокая степень абстракции.
Недостаток – сложность тестирования и верификации программ.
Например: MS Visual Studio.NET, VBScript, PowerScript, LotusScript, JavaScript.
Подход поддержки параллельных вычислений. Программа – совокупность описаний процессов, которые могут выполняться в действительности псевдопараллельно.
Достоинства:
применяются в системах реального времени;
обрабатывают большие массивы информации, поступающей от одновременно работающих пользователей.
Недостаток – высокая стоимость разработки ПО.
Например: Ada, Modula-2, Oz.