Средства обработки табличной информации
Табличное представление данных имеет свои особенности. Многие виды данных намного удобнее хранить и обрабатывать в табличной форме, особенно числовые. Автоматизация табличных расчетов во много раз повышает эффективность и качество работы. Компьютерные программы, предназначенные для хранения и обработки данных, представленных в табличном виде, называют электронными таблицами или табличными процессорами.
Первая электронная таблица VisiCalc была выпущена фирмой Visi Corporation в 1981 году, и именно с этого момента принято вести отсчет истории электронных таблиц как самостоятельного вида программного обеспечения.
Идея выделения таблиц в особый класс документов и создание специализированной программы, выполняющей всевозможные операции с табличными данными, оказалась весьма удачной и была подхвачена многими фирмами. Популярность электронных таблиц стремительно росла.
В 1983 году фирма Lotus Development Corporation выпустила электронную таблицу 1-2-3, ставшую на долгие годы фактическим стандартом в своей области.
В 1985 году появилась первая наиболее распространенный на сегодня табличный редактор Microsoft Excel. Спустя год данный сектор desktop-приложений пополнился пакетом Quattro, созданным компанией Borland International Corporation.
Электронные таблицы позволяют решать целый комплекс задач:
1. Выполнение вычислений. Издавна многие расчеты выполняются в табличной форме, особенно в области делопроизводства: многочисленные расчетные ведомости, табуляграммы, сметы расходов и т.п. Кроме того, решение численными методами целого ряда математических задач удобно выполнять в табличной форме. Электронные таблицы представляют собой удобный инструмент для автоматизации таких вычислений. Решения многих вычислительных задач на ЭВМ, которые раньше можно было осуществить только путем программирования, стало возможно реализовать на электронных таблицах.
2. Математическое моделирование. Использование математических формул в ЭТ позволяет представить взаимосвязь между различными параметрами некоторой реальной системы. Основное свойство ЭТ - мгновенный пересчет формул при изменении значений входящих в них операндов. Благодаря этому свойству, таблица представляет собой удобный инструмент для организации эксперимента: подбор параметров, прогноз поведения моделируемой системы, анализ зависимостей, планирование. Дополнительные удобства для моделирования дает возможность графического представления данных.
3. Использование электронной таблицы в качестве базы данных. Конечно, по сравнению с СУБД электронные таблицы имеют меньшие возможности в этой области. Однако некоторые операции манипулирования данными, свойственные реляционным СУБД, в них реализованы. Это поиск данных по заданным условиям и сортировка данных.
Одним из самых популярных табличных процессоров сегодня является MS Excel, входящий в состав пакета Microsoft Office. Главные конкуренты — OpenOffice.org Calc, StarOffice Calc и Corel Quattro Pro.
Средства обработки графической информации
Для работы с компьютерной графикой существует множество классов ПО. Различают обычно два основных вида компьютерной графики, которые отличаются принципами формирования изображения: растровая и векторная.
Рис. 43. Сравнение растрового и векторного изображения.
Растровая графика
Компьютерное растровое изображение представляется в виде прямоугольной матрицы, каждая ячейка которой - цветная точка. Т.е. основным элементом растрового изображения является точка. Если изображение экранное, то эта точка называется пикселем.
При создании растровых изображений необходимо задавать разрешение и размеры изображения.
В зависимости от того, какое графическое разрешение экрана используется операционной системой, на экране могут размещаться изображения, имеющие 640х480, 800х600, 1024х768 и более пикселей.
Разрешение изображения измеряется в точках на дюйм (dots per inch - dpi) (1 дюйм = 25,4 мм). Полиграфическая печать полноцветного изображения требует разрешения не менее 200-300 dpi.
С помощью растровой графики можно отразить и передать всю гамму оттенков и тонких эффектов, присущих реальному изображению. Растровое изображение ближе к фотографии, оно позволяет более точно воспроизводить основные характеристики фотографии: освещенность, прозрачность и глубину резкости.
Чаще всего растровые изображения получают с помощью сканирования фотографий и других изображений, с помощью цифровой фотокамеры или путем "захвата" кадра видеосъемки.
Основным недостатком растровых изображений является невозможность их увеличения для рассмотрения деталей. При увеличении изображения точки становятся крупнее, но дополнительная информация не появляется. Этот эффект называется пикселизацией (см. рисунок 19).
Средства работы с растровой графикой
К числу простейших растровых редакторов относятся PaintBrush, Paint, Painter, которые позволяют непосредственно рисовать простейшие растровые изображения.
Основной класс растровых графических редакторов предназначен для обработки готовых растровых изображений с целью улучшения их качества и создания собственных изображений из уже имеющихся. К таким редакторам относятся такие мощные программы, как Adobe Photoshop, Corel PhotoPaint, Gimp и другие.
Основные растровые форматы
BMP (Windows Device Independent Bitmap) - самый простой растровый формат является форматом Windows, он поддерживается всеми графическими редакторами, работающими под ее управлением. В BMP данные о цвете хранятся только в модели RGB, поддерживаются как индексированные цвета (до 256 цветов), так и полноцветные изображения. Благодаря примитивнейшему алгоритму записи изображения, при обработке файлов формата BMP очень мало расходуется системных ресурсов, поэтому этот формат часто используется для хранения логотипов, экранных заставок, иконок и прочих элементов графического оформления программ.
GIF (Graphics Interchange Format) - является одним из самых популярных форматов изображений, размещаемых на веб-страницах. Отличительной его особенностью является использование режима индексированных цветов (не более 256), что ограничивает область применения формата изображениями, имеющими резкие цветовые переходы. Небольшие размеры файлов изображений обусловлены применением алгоритма сжатия без потерь качества, благодаря чему изображения в этом формате наиболее удобны для пересылки по каналам связи глобальной сети. В GIF реализован эффект прозрачности и возможности хранить в одном файле несколько картинок с указанием времени показа каждой, что используется для создания анимированных изображений.
PNG (Portable Network Graphics) - формат PNG, являющийся плодом трудов сообщества независимых программистов, появился на свет как ответная реакция на переход популярнейшего формата GIF в разряд коммерческих продуктов. Этот формат, в отличие от GIF сжимает растровые изображения не только по горизонтали, но и по вертикали, что обеспечивает более высокую степень сжатия. Как недостаток формата часто упоминается то, что он не дает возможности создавать анимационные ролики. Зато формат PNG позволяет создавать изображения с 256 уровнями прозрачности что, безусловно, выделяет его на фоне всех существующих в данный момент форматов. Так как формат создавался для Интернета, в его заголовке не предназначено место для дополнительных параметров типа разрешения, поэтому для хранения изображений, подлежащих печати, PNG плохо подходит, для этих целей лучше подойдет PSD или TIFF.
JPEG (Joint Photographic Experts Group) - самый популярный формат для хранения фотографических изображений, является общепризнанным стандартом. JPEG может хранить только 24-битовые полноцветные изображения. Хотя JPEG отлично сжимает фотографии, но это сжатие происходит с потерями и портит качество, тем не менее, он может быть легко настроен на минимальные, практически незаметные для человеческого глаза, потери. Однако не стоит использовать формат JPEG для хранения изображений, подлежащих последующей обработке, так как при каждом сохранении документа в этом формате процесс ухудшения качества изображения носит лавинообразный характер. Наиболее целесообразно будет корректировать изображение в каком-нибудь другом подходящем формате, например TIFF, и лишь по завершению всех работ окончательная версия может быть сохранена в JPEG. Формат JPEG не поддерживает анимацию или прозрачный цвет, и пригоден в подавляющем большинстве случаев только для публикации полноцветных изображений, типа фотографических, в Интернете.
TIFF (Tag Image File Format). Как универсальный формат для хранения растровых изображений, TIFF достаточно широко используется, в первую очередь, в издательских системах, требующих изображения наилучшего качества. Кстати, возможность записи изображений в формате TIFF является одним из признаков высокого класса современных цифровых фотокамер. В этом формате поддерживаются такие чисто профессиональные возможности, как обтравочные контуры, альфа-каналы, возможность сохранять несколько копий изображения с разным разрешением и даже включать в файл слои. Благодаря своей совместимости с большинством профессионального ПО для обработки изображений, формат TIFF очень удобен при переносе изображений между компьютерами различных типов.
PSD (Adobe Photoshop) - является стандартным форматом пакета Adobe Photoshop и отличается от большинства обычных растровых форматов возможностью хранения слоев (layers). Он содержит много дополнительных переменных (не уступает TIFF по их количеству) и сжимает изображения иногда даже сильнее, чем PNG (в тех случаях, когда размеры файла измеряются не в килобайтах, а в десятках или даже сотнях мегабайт). Файлы PSD свободно читаются большинством популярных просмотрщиков.
Векторная графика
Основным логическим элементом векторной графики является геометрический объект. В качестве объекта принимаются простые геометрические фигуры (так называемые примитивы - прямоугольник, окружность, эллипс, линия). Благодаря этому форму, цвет и пространственное положение составляющих изображение объектов можно описывать с помощью математических формул.
Рис. 44. Геометрические примитивы.
Преимущества векторной графики:
- Она экономна в плане дискового пространства, необходимого для хранения изображений: это связано с тем, что сохраняется не само изображение, а только некоторые основные данные, используя которые, программа всякий раз воссоздает изображение заново.
- Объекты векторной графики легко трансформируются и масштабируются, что не оказывает практически никакого влияния на качество изображения. Масштабирование, поворот, искривление сводятся к элементарным преобразованиям над векторами.
- Программы векторной графики имеют развитые средства интеграции изображений и текста, единый подход к ним. Поэтому программы векторной графики незаменимы в области дизайна, технического рисования, для чертежно-графических и оформительских работ.
Недостатки векторной графики:
- Векторная графика ограничена в живописных средствах: в программах векторной графики практически невозможно создавать фотореалистичные изображения.
- Векторный принцип описания изображения не позволяет автоматизировать ввод графической информации, как это делает сканер для растровой графики.
Средства работы с векторной графикой
Как и в случае с растровой графикой, для работы с векторной имеется огромное количество программных средств, освоение которых сложнее по сравнению с растровыми. К основным относятся программы:
- CorelDraw - это профессиональный графический редактор с богатыми настройками и развитой системой управления.
- Adobe Illustrator - основное достоинство программы в том, что она вместе с Adobe Photoshop и Adobe PageMaker образует достаточно мощный пакет для выполнения компьютерной верстки полиграфических изданий и разработки сложных документов.
- Macromedia Freehand - один из самых дружественных и интуитивно понятных векторных редакторов. Программа отличается простотой системы управления и высоким быстродействием, но ее возможности несколько скромнее, чем у предыдущих редакторов.
Основные векторные графические форматы
Своего рода стандартом стали форматы двух наиболее популярных профессиональных графических пакетов - Adobe Illustrator и CorelDRAW:
AI (Adobe Illustrator Document) - поддерживают практически все программы, так или иначе связанные с векторной графикой. Этот формат является наилучшим посредником при передаче изображений из одной программы в другую, с РС на Macintosh и наоборот. В целом, несколько уступая CorelDRAW по иллюстративным возможностям, (может содержать в одном файле только одну страницу, имеет маленькое рабочее поле - этот параметр очень важен для наружной рекламы - всего 3х3 метра) тем не менее, он отличается наибольшей стабильностью и совместимостью с языком PostScript, на который ориентируются практически все издательско-полиграфические приложения.
CDR (CorelDRAW Document) - основной рабочий формат популярного пакета CorelDRAW, являющимся неоспоримым лидером в классе векторных графических редакторов на платформе РС. Имея сравнительно невысокую устойчивость и проблемы с совместимостью файлов разных версий формата, тем не менее, формат CDR можно без натяжек назвать профессиональным. В файлах этих версий применяется раздельная компрессия для векторных и растровых изображений, могут внедряться шрифты, файлы CDR имеют огромное рабочее поле 45х45 метров, поддерживается многостраничность.
WMF (Windows Metafile) - еще один формат Windows, на сей раз векторный. Понимается практически всеми программами Windows, так или иначе связанными с векторной графикой. Однако, несмотря на кажущуюся простоту и универсальность, пользоваться форматом WMF стоит только в крайних случаях, поскольку он не может сохранять некоторые параметры, которые могут быть присвоены объектам в различных векторных редакторах, не воспринимается Macintosh-ами, и, самое главное, способен исказить цветовую схему изображения.
PDF (Portable Document Format) - первоначально проектировался как компактный формат электронной документации, но в последнее время все больше используется для передачи по сетям графических изображений и смешанных документов, содержащих как текст, так и графику. Формат PDF является в полной мере платформонезависимым форматом, в текстовой части которого возможно использование множества шрифтов (которые содержатся непосредственно в документе, поэтому документ будет выглядеть так, как задумал его автор, на любом компьютере) и гипертекстовых ссылок, а также графические иллюстрации любого типа (векторные или растровые). Для достижения минимального размера PDF-файла используется компрессия, причем каждый вид объектов сжимается по наиболее выгодному для него алгоритму. Просматривать документы в формате PDF и распечатывать их на принтере можно с помощью утилиты Acrobat Reader, распространяемой компанией Adobe бесплатно.
Особый класс программ для работы с любыми видами изображений представляют программы-просмотрщики. Они позволяют просматривать графические файлы различных форматов, создавать фотоальбомы на жестком диске, перемещать, переименовывать, изменять размеры, а также конвертировать из одного формата в другой изображения. Лидером в данной области является программа ACDSee.
D-графика
Быстро развивается область трехмерной векторной (или 3D) графики. К данному классу ПО относится, например, программа 3D-MAX Studio.
По сравнению с традиционными для графических программ двумерными векторными и растровыми объектами работа с 3D-графикой предполагает использование более сложных понятий и процедур, таких как сцена, камеры, источники света.
Возможности программ для работы с трехмерной графикой достаточно широки. Это и изготовление спецэффектов для кино и телевидения, получение реалистичных фотоизображений, технических иллюстраций в программах автоматизированного проектирования для разработки новых реальных объектов и т.д.
Использование 3D-программ напоминает съемку с помощью видеокамеры комнаты, полной сконструированных вами объектов. Они позволяют смоделировать комнату и ее содержимое с использованием разнообразных базовых трехмерных объектов (кубы, сферы, цилиндры, конусы). После того, как модели всех объектов созданы и размещены на сцене, можно выбрать им оформление с помощью имеющихся в программе встроенных средств или создать собственное оформление. Затем можно создать и расставить воображаемые камеры, которые будут наблюдать и снимать виртуальный трехмерный мир. После всех приготовлений можно анимировать сцену, заставив двигаться объекты, источники света и камеры. В завершении можно визуализировать анимацию и зафиксировать результат в виде видеофайла.
Системы управления базами данных (СУБД)
База данных - совместно используемый набор логически связанных данных. Это единое хранилище данных, которое однократно определяется, а затем используется одновременно многими пользователями.
Система управления базами данных (СУБД) - это программное обеспечение, с помощью которого пользователи могут определять, создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.
В реляционных базах данных (БД самого распространенного типа) данные хранятся в таблицах. На первый взгляд, эти таблицы подобны электронным таблицам Excel, поскольку они тоже состоят из строк и столбцов. Столбцы называются полями (fields) и содержат данные определенного типа. Строки именуются записями (records). В одной строке хранится один набор данных, описывающих определенный объект. Например, если в таблице хранятся данные о клиентах, она может содержать поля для имени, адреса, города, почтового индекса, номера телефона и т.д. Для каждого клиента будет создана отдельная запись.
Таблицы – не единственный тип объектов, из которых состоят базы данных. Помимо таблиц, существуют формы, отчеты и запросы.
Формы (forms) применяются для добавления новых данных и изменения уже существующих. Формы облегчают добавление и редактирование информации, а также позволяют контролировать тип водимых данных и избегать при вводе ряда ошибок.
Для отображения данных в удобном для чтения виде используются отчеты (reports). Ознакомиться со всей информацией, хранящейся в таблице, сложно по той причине, что текст не умещается в полях целиком. Существует возможность включать в отчет не все данные, а только некоторые, что значительно повышает удобство использования.
Для вывода в отчеты определенных данных применяются запросы (queries). Использование запросов похоже на процесс поиска, – задаются конкретные критерии отбора, на основе которых база данных формирует и возвращает отчет. Например, если база данных содержит информацию о телефонных номерах, то можно запросить вывести в отчете только те телефоны, которые относятся к конкретному адресу, или только те, которые относятся к конкретной фамилии, или начинающиеся с определенных цифр и т.п. Запросы записываются на языке SQL (Structured Query Language — язык структурированных запросов).
В основе реляционных баз данных лежит понятие связей (отношений, relationships). Они позволяют разработчикам связывать несколько таблиц в базе посредством общих данных. При помощи взаимосвязей разработчики баз данных моделируют таблицы, отражающие взаимодействие объектов в реальности.
Понять принцип работы связей проще всего на примере. Пусть для хранения информации о продажах компании применяется электронная таблица Excel. Со временем в таблице накапливаются сотни записей. Многие из них соответствуют покупкам, совершенным одними и теми же клиентами. Проблема состоит в том, что при совершении повторной покупки информация об адресе клиента снова сохраняется. Со временем некоторые клиенты переезжают. Их новые адреса вводятся в электронную таблицу, но во всех прошлых записях остается прежний адрес. Существует вероятность, что рано или поздно кто-то случайно использует для отправки товара неверный адрес. Обновление адресов становится довольно непростой задачей из-за их невероятного количества. В Excel нет средств, позволяющих устранить эту проблему.
При формировании базы данных логичнее отделить все записи о клиентах от записей, относящихся к совершенным ими покупкам. В этом случае в одной таблице будет храниться информация о покупках, а в другой – о клиентах. В таблице клиентов каждому будет соответствовать только одна запись. При переезде клиента потребуется обновить только одну соответствующую ему запись, а не все записи о его покупках. В таблице, содержащей записи о покупках, вместо перечисления всей информации о покупателе будет указан уникальный идентификатор (в нашем примере поле идентификатора названо cust_ID), соответствующий определенной записи в таблице клиентов. Такие связи между таблицами и позволяют создавать реляционные базы данных.
Обе таблицы содержат поле cust_ID. В таблице клиентов поле cust_ID включает уникальные идентификаторы, называемые также первичными ключами (primary key). У каждой записи в таблице всегда существует свой идентификатор, который не повторяется, благодаря чему, в таблице обеспечен порядок, предполагающий корректное обновление, удаление и добавление данных.
В таблице покупок одно и то же значение cust_ID, напротив, может повторяться больше одного раза — в зависимости от того, сколько покупок совершил тот или иной клиент. Когда первичный ключ одной таблицы применяется в качестве поля другой, он называется внешним ключом. При использовании внешних ключей между таблицами образуются связи (relationships). Они позволяют избавиться от избыточной (дублирующей информации) и сохранить целостность данных.
В приведенном примере таблицы являются достаточно простыми. Например, в порядке вещей будет использование третьей таблицы для хранения информации о товаре (инвентарная таблица) с полем product_ID, добавляемым в таблицу покупок в качестве внешнего ключа.
Рис. 45. Схема данных. |
На рисунке 45 показана взаимосвязь между двумя таблицами, описанными в этом примере. Линия между таблицами обозначает существование связи. Число 1, расположенное слева, означает, что в таблице Клиенты параметр cust_ID является уникальным, а знак бесконечности, находящийся справа, указывает, что в таблице Покупки одно и то же значение параметра cust_ID может повторяться сколько угодно. Такое отношение называется "один-ко-многим".
Возможности связей между таблицами не ограничены уменьшением избыточности данных. Они также позволяют создать SQL-запрос, извлекающий данные из обеих таблиц на основе определенного критерия. Например, можно создать запрос, выводящий имена и фамилии всех клиентов, совершивших покупки на сумму, превышающую некоторое пороговое значение. Формы, предназначенные для записи сразу в несколько таблиц, тоже функционируют на основе связей.
Модель реляционной СУБД была разработана в 70-80 годы XX века. К реляционным СУБД относится целый ряд программных продуктов, среди них Microsoft Access из пакета Microsoft Office, MySQL или более мощные системы промышленного уровня, таких как Microsoft SQL Server или Oracle.
В последнее время активно развивается и другая модель представления баз данных – объектная. Реляционная модель акцентирует свое внимание на структуре и связях сущностей, объектная - на их свойствах и поведении.