Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Постановка задачи. Прикладное программное обеспечение информационных систем характеризуется качественными и количественными показателями






Прикладное программное обеспечение информационных систем характеризуется качественными и количественными показателями, такими как эффективность, сложность, мобильность, наглядность (ясность, удобочитаемость), документированность и т.д. Эффективность программы является количественной характеристикой, и она оценивается как правило двумя критериями:

- процессорным временем выполнения;

- объемом используемой памяти.

Эти два критерия, в общем случае, противоречат друг другу, так как сокращения одного, как правило, можно добиться за счет увеличения другого. Поэтому выбор критерия оптимизации зависит от характера решаемых задач и области применения прикладного программного обеспечения. В системах реального времени, в частности, в качестве основного критерия оптимизации выступает время выполне-

ния программы.

Задача оптимизации прикладного программного обеспечения по времени выполнения формулируется следующим образом. Необходимо преобразовать правильно работающую программу так, чтобы она выполнялась как можно быстрее (без учета операций ввода-вывода) и осуществляла те же функции, что и до преобразования.

В современных системах программирования используются подсистемы оптимизации программ, включающие в себя набор оптимизационных процедур и оптимизирующих трансляторов. Каждая из этих процедур производит равносильные преобразования программ и частично их оп-

тимизирует. Набор оптимизационных процедур существенно зависит от следующего:

- класса решаемых задач, для которых предназначена разрабатываемая программа;

- языка программирования;

- операционной системы;

- особенностей используемой ЭВМ и т.д.

Требования, предъявляемые к оптимизационным процедурам, следующие. Оптимизационные процедуры должны:

- сохранять функции, которые выполняет программа, т.е. производить равносильные преобразования;

- не ухудшать качество ни одной программы, входящей в область применения процедуры;

- улучшать качество хотя бы некоторых программ, входящих в область применения процедуры.

Выполнение оптимизационных преобразований изменяет исходный текст программы, что, как правило, ухудшает ее некоторые качественные характеристики и в первую очередь ясность. Поэтому необходимо проводить оптимизацию только для полностью отлаженной программы, готовой к выполнению.

Оптимизационные процедуры можно разделить на следующие основные виды:

- оптимизация циклов;

- оптимизация вычислительных операций;

- оптимизация инструкций передачи управления;

- оптимизация операций ввода-вывода;

- эффективное использование памяти.

Работая руководителем группы разработке программных средств, мне часто приходилось просматривать исходные коды программ наших молодых (да и не только молодых) разработчиков. И хоть ребята они во многом были знающие и умеющие решать поставленные перед ними задачи, от недостатка опыта (а иной раз просто от нежелания) они применяли неэффективные конструкции программирования. На некоторых таких конструкциях хотелось бы остановиться и показать, как можно повысить эффективность и быстродействие программы, уменьшить размер используемой памяти, улучшить читаемость кода и повысить удобство работы с исходными текстами программ.

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал