Страница 25 из 39
Эффективность В применении к программам термин эффективность относится ли- бо к использованию ресурсов системы, либо скорости выполнения, либо к тому и другому. К ресурсам системы относится оперативная память, дисковое пространство, устройства, то есть то, что может выделяться и использоваться. Суждение о том, является программа эффективной или нет, субъективно, оно зависит от ситуации. Расс- мотрим программу, которая при выполнении использует 147 Кбайт оперативной памяти, 2 Мбайта дискового пространства и затрачивает в среднем 70 минут. Если это короткая программа, выполняющаяся на персональном компьютере Apple 2, то по всей видимости не очень эффективна. Однако, если это программа, выполняющаяся на супер- компьютере Cray, то вероятно, она эффективна. С другой стороны, когда вы добиваетесь эффективности по ка- кому-либо одному параметру, часто при этом ухудшаются другие по- казатели. Например, достижение более быстрого выполнения програм- мы ведет к ее увеличению, если вы используете линейную программу вместо вызовов функций для увеличения скорости. Кроме того, дос- тижение более эффективного использования дискового пространства за счет упаковки данных замедляет доступ к диску. В свете этих проблем вы можете поставить вопрос. а как эф- фективность вообще может обсуждаться. В действительности сущест- вует несколько методик программирования, которые всегда дают эф- фективные программы или по крайней мере более эффективные, чем в других случаях. Существует также ряд методов, которые делают программу как быстрее, так и меньше.
|