
- •В.В.Ломтадзе л.П.Шишкина
- •Оглавление
- •1. Введение в информационные технологии 8
- •2. Вводные сведения о современных программных средствах 14
- •3. Измерение количества информации, её Кодирование и хранение 24
- •4. Модели и Алгоритмы. Роль моделирования и алгоритмизации в решении задач и формализации знаний. Информационные ресурсы 33
- •5. Технические средства информационных технологий 45
- •6. Классификация и обзор программного обеспечения 66
- •8. Электронные таблицы Microsoft Excel 102
- •9. Системы управления базами данных. Субд Access 119
- •10. Введение в программирование. Создание приложений на языке Visual Basic for Applications 135
- •11. Основы и методы защиты информации 159
- •Введение
- •Введение в информационные технологии
- •1.1. Предмет изучения информатики. Понятие информации. Информационное общество
- •1.2. Информационные революции
- •1.3. Краткая история вычислительной техники
- •1.4. Поколения вычислительных систем
- •Контрольные вопросы и задания к главе 1
- •2. Вводные сведения о современных программных средствах
- •2.1. Особенности современных программных средств
- •2.2. Основные элементы управления в интерфейсе программных продуктов
- •2.3. Типовые диалоги в интерфейсе программных продуктов
- •Контрольные вопросы и задания к главе 2
- •3. Измерение количества информации, её Кодирование и хранение
- •3.1. Измерение количества информации
- •3.1.1. Измерение количества информации через неопределённость знаний
- •3.1.2. Количество информации в сообщении о том, что произошло одно из n равновероятных событий
- •3.1.3. Алфавитный подход к измерению количества информации
- •3.2. Кодирование информации
- •3.2.1. Данные – формализованная информация
- •3.2.2. Системы кодирования, объёмы данных, системы счисления
- •3.2.3. Кодирование текста
- •3.2.4. Кодирование чисел
- •3.2.5. Кодирование графической информации
- •3.2.6. Кодирование звука
- •3.2.7. Кодирование видео
- •Контрольные вопросы и задания к главе 3
- •4. Модели и Алгоритмы. Роль моделирования и алгоритмизации в решении задач и формализации знаний. Информационные ресурсы
- •4.1. Модели решения вычислительных и функциональных задач
- •4.2. Алгоритмы
- •Основные элементы, используемые в блок-схемах
- •4.3. Принципы структурного программирования
- •4.4. Объектно-ориентированное программирование
- •4.5. Алгоритмизация как средство формализации знаний. Информационные ресурсы
- •Контрольные вопросы и задания к главе 4
- •5. Технические средства информационных технологий
- •5.1. Логические основы вычислительной техники, алгебра логики
- •5.1.1. Основные понятия
- •Логические операции
- •5.1.2. Основные законы алгебры логики
- •5.1.3. Логические выражения
- •5.1.4. Логические элементы
- •5.1.5. Функциональные схемы и функциональные узлы
- •5.2. Основные блоки персонального компьютера
- •5.3. Основные периферийные устройства, подключаемые к компьютеру
- •5.4. Компьютерные сети
- •Уровни модели osi
- •Контрольные вопросы и задания к главе 5
- •6. Классификация и обзор программного обеспечения
- •6.1. Системное программное обеспечение
- •6.2. Инструментальные средства программирования
- •6.3. Прикладное программное обеспечение
- •Контрольные вопросы и задания к главе 6
- •7. Текстовый процессор Microsoft Word
- •7.1. Назначение. Основные понятия
- •7.2. Модель фрагмента текста. Параметры форматирования. Стили
- •Параметров абзаца
- •7.3. Типовая последовательность создания документа
- •7.4. Разработка стилей и форматирование фрагментов текста
- •Пример разработки стилей
- •7.5. Редактирование документа
- •Выделение фрагмента текста мышью
- •7.6. Списки, табуляция, таблицы, многоколончатая верстка
- •7.7. Вставка символа, рисунка, объекта
- •7.8. Колонтитулы. Создание оглавления и списка иллюстраций. Закладки. Гиперссылки. Печать документа
- •Контрольные вопросы и задания к главе 7
- •8. Электронные таблицы Microsoft Excel
- •8.1. Назначение. Основные понятия
- •8.2. Обобщенная технология работы в электронной таблице
- •8.3. Ввод, редактирование, форматирование данных
- •8.4. Выполнение расчетов по формулам и построение диаграмм
- •Инструкции, используемые в Microsoft Excel
- •8.5. Сортировка, консолидация данных, сводные таблицы, фильтрация, итоги
- •Контрольные вопросы и задания к главе 8
- •9. Системы управления базами данных. Субд Access
- •9.1. Основные понятия
- •9.2. Нормализация отношений (таблиц) и обеспечение целостности данных в реляционной базе данных
- •9.3. Последовательность действий при создании и использовании базы данных
- •9.3.1. Создание базы данных
- •9.3.2. Создание таблиц базы данных, ввод данных во вспомогательные таблицы
- •9.3.3. Создание основной таблицы
- •9.3.4. Создание схемы данных
- •9.3.5. Создание формы
- •9.3.6. Создание запросов
- •9.3.7. Формирование отчетов
- •С помощью субд Access
- •9.4. Основные возможности языка структурированных запросов (sql)
- •Контрольные вопросы и задания к главе 9
- •10. Введение в программирование. Создание приложений на языке Visual Basic for Applications
- •10.1. Основные понятия
- •10.2. Создание интерфейса пользователя
- •Р Элементы управления ис. 10.1. Лист Excel в момент создания интерфейса приложения средствами vba
- •10.3. Модули, процедуры, функции
- •Часто используемые встроенные функции Visual Basic
- •10.4. Работа с переменными, массивами, константами и со свойствами объектов
- •Встроенные типы данных vba
- •10.5. Основные инструкции языка Visual Basic и отладка программ
- •Контрольные вопросы и задания к главе 10
- •11. Основы и методы защиты информации
- •11.1. Основные понятия информационной безопасности
- •11.2. Классификация угроз информационной безопасности
- •11.2.1. Непреднамеренные
- •11.2.2. Преднамеренные
- •11.3. Обеспечение информационной безопасности
- •11.3.1. Юридические основы информационной безопасности
- •11.3.2. Требования к защите информации в системах
- •11.3.3. Меры по поддержанию работоспособности компьютерных систем
- •11.3.4. Противодействие нарушению конфиденциальности информации
- •11.3.5. Электронная цифровая подпись
- •11.4. Особенности защиты информации в компьютерных сетях
- •Контрольные вопросы и задания к главе 11
- •Библиографический список
- •Приложение а Горячие клавиши в Word 2010
- •Сочетание клавиш для работы с текстом или объектами
- •Приложение б Горячие клавиши в Excel 2010
- •Приложение в Категории встроенных функций Excel Математические функции
- •Ссылки и массивы
- •Логические функции
- •Функции обработки дат
- •Текстовые функции
- •Приложение г Тесты Сообщения, данные, сигнал, атрибутивные свойства информации, показатели качества информации, формы представления информации. Системы передачи информации
- •Кодирование данных в эвм
- •Циклические алгоритмические структуры
- •Трансляция, компиляция и интерпретация
- •Интегрированные среды программирования
- •Этапы решения задач на компьютерах
- •Структурное программирование. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ сверху-вниз и снизу-вверх
- •Основные понятия алгебры логики
- •Логические основы эвм
- •Моделирование как метод познания
- •Состав и назначение основных элементов персонального компьютера.
- •Запоминающие устройства: классификация, принцип работы, основные характеристики
- •Компоненты вычислительных сетей
- •Средства использования сетевых сервисов
- •Классификация программного обеспечения. Виды программного обеспечения и их характеристики
- •Общее понятие о базах данных. Основные понятия систем управления базами данных и базами знаний. Объекты баз данных
- •Модели данных в информационных системах. Реляционная модель базы данных
- •Назначение и основы использования систем искусственного интеллекта. Базы знаний. Экспертные системы
- •Шифрование данных. Электронная подпись
4.4. Объектно-ориентированное программирование
Разработка алгоритмов и программ для вычислительных машин первых поколений выполнялась в соответствии с идеологией процедурного программирования, где данные и подпрограммы (процедуры, функции) их обработки формально не связаны. В настоящее время идеология процедурного программирования по-прежнему широко используется. Структурное программирование также направлено на совершенствование этой идеологии.
Принципиально другой идеологией алгоритмизации и программирования является ООП – объектно-ориентированное программирование. В настоящее время оно всё чаще используется для реализации очень больших и сложных проектов. Первым языком программирования, в котором были предложены принципы объектной ориентированности, была Симула. Она появилась в 1967 г., но тогда идеи ООП не были восприняты программистами: создававшиеся в те годы пакеты прикладных программ ещё не были столь масштабными, и их проще было разрабатывать средствами процедурного программирования. Затем концепции ООП были развиты Аланом Кэйем и Дэном Ингаллсом в языке Smalltalk. Он стал первым распространённым объектно-ориентированным языком программирования. В современных средах визуального программирования (глава 6) идеи ООП являются доминирующими, но вместе с тем широко применяются идеи процедурного программирования.
Концепция объектно-ориентированного программирования подразумевает, что основой управления процессом реализации программы является передача сообщений объектам. Поэтому объекты должны определяться совместно с сообщениями (или с событиями), на которые они должны реагировать при выполнении программы. В этом состоит главное отличие ООП от процедурного программирования, где отдельно определённые структуры данных передаются в процедуры (функции) в качестве параметров. Таким образом, объектно-ориентированная программа состоит из объектов. Каждый объект имеет определённые свойства. Состояние объекта задаётся значениями его признаков. Объект «знает», как решать определённые задачи, т. е. располагает методами решения. Например, объект Счётчик (см. п. 2.2) реагирует на щелчок мышью по одной из его кнопок: если это событие происходит, Счётчик увеличивает или уменьшает значение своего свойства Value.
В основе ООП – три принципа: инкапсуляция, наследование и полиморфизм.
Инкапсуляция – это объединение в единое целое данных и алгоритмов обработки этих данных. В рамках ООП данные называются полями или свойствами объекта, а алгоритмы – объектными методами. Инкапсуляция позволяет в максимальной степени изолировать объект от внешнего окружения и повышает надежность разрабатываемых программ. Замена или модификация алгоритмов и данных, инкапсулированных в объект, как правило, не влечет за собой плохо прослеживаемых последствий для программы в целом. Следствием инкапсуляции является легкость обмена объектами, переноса их из одной программы в другую.
Наследование – свойство объектов порождать своих потомков. Объект-потомок автоматически наследует от родителя все поля и методы, может дополнять объекты новыми полями и заменять (перекрывать) методы родителя или дополнять их. Принцип наследования решает проблему модификации свойств объекта и придает ООП гибкость. При работе с объектами программист обычно подбирает объект, наиболее близкий по своим свойствам для решения конкретной задачи, и создает одного или нескольких потомков от него, которые «умеют» делать то, что не реализовано в родителе.
Полиморфизм – это свойство родственных объектов (т. е. объектов, имеющих одного общего родителя) решать схожие по смыслу проблемы разными способами. В рамках ООП поведенческие свойства объекта определяются набором входящих в него методов. Изменяя алгоритм того или иного метода в потомках объекта, программист может придавать этим потомкам отсутствующие у родителя свойства. Для изменения метода необходимо перекрыть его в потомке, т. е. объявить в потомке одноименный метод и реализовать в нем нужные действия. В результате в объекте-родителе и объекте-потомке будут действовать два одноименных метода, имеющие разную алгоритмическую основу и, следовательно, придающие объектам разные свойства. Это и называется полиморфизмом объектов.
Для пояснения перечисленных принципов приведём пример. Допустим, требуется разработать объект Окружность, основываясь на уже имеющемся объекте Точка, который заключает в себе (инкапсулирует) свойства X, Y (координаты точки) и метод Draw (Рисовать). В этом случае объект Окружность можно создать, объявив его потомком объекта Точка. Только придётся добавить ещё свойство R (радиус окружности), а метод Draw перекрыть, так как окружность рисуется не так, как точка.