|
|||
|
|||
Что такое тормоза и как с ними бороться |
|||
Дмитрий Турецкий Очень часто можно услышать от пользователей выражения, вроде, "Windows - must die!", "все программы глюкавые" и т.п. И действительно, программы страшно любят зависать и ругаться друг с другом; Windows периодически сообщает что-то невразумительное о том, что какой-то модуль что-то куда-то попытался записать, но она (Windows) ему не разрешила и теперь не уверена, что вы сможете дальше работать; компьютер, проработавший три месяца без перезагрузок можно выставлять в музее; программы неудержимо "толстеют" - все, что меньше мегабайта по размеру, считается "небольшим", а уж если оно при этом еще и делает что-то толковое и не падает в течение суток, то может считаться шедевром... Все это так. Но... Задумывались ли вы о том, почему все это происходит? Почему консольные утилиты почти не пользуются спросом? Почему любая относительно сложная программа, для работы с которой требуется прочитать документацию, объявляется пользователями неработосособной? Почему нормальной считается 700-килобайтная программа, в которой полезное ядро занимает 50 Кб, а инсталлятор - все остальное? Почему "крутость" программы оценивается в первую очередь по интерфейсу, а какие-нибудь подсвечивающиеся кнопочки неправильной формы гарантируют первые строчки в рейтингах по скачиванию? На самом деле, думать тут особенно не над чем - все и так понятно. Все дело в том, что компьютер стремится к массам. А вот массы к нему - как то не особо... И начинается разработка "дружественного интерфейса", максимальное упрощение программ (упрощение с точки зрения пользователя, а не функций и, тем более, внутреннего устройства)... А у такого "упрощения" есть несколько побочных эффектов. Во-первых, если программа рассчитывается "на дурака", то в нее встраиваются механизмы защиты, т.е. програма не позволяет пользователю выполнять действия, которые в руках специалиста были бы весьма полезны, а вот в руках "чайника" вполне могут привести к различным неприятным последствиям. Причем подобная защита нарастает с каждым этапом: какие-то механизмы встраиваются в операционную систему (например, запред прямого доступа к "железу" в Windows). Затем, при написании среды разработки программ, добавляются новые ограничения и упрощения. Затем, программист, который пишет прикладную программу встраивает в нее "защиту от дурака" уже на своем уровне... А каждая такая защита означает потерю той или иной функциональности, которая, возможно, вам-то и нужна! Во-вторых, встраивая все эти защиты и стараясь сократить число настроек до такого минимума, который бы не испугал пользователя, программист вынужден предусматривать множество различных вариантов и условий, в которых будет работать его программа. При этом. как правило, выбираются далеко не самые оптимальные для каждого конкретного случая решения. В-третьих, развитие ООП (Объектно Ориентированного Программирования) помимо положительных сторон - многократное использование кода и облегчение написания программ - привело и к отрицательным: резкое увеличение размера программ (т.к. если программисту требуется задействовать всего одну функцию какого-то объекта, то в программу включается весь объект) и замедление их скорости (каждый объект представляет из себя программу, которой вполне присущи черты, описанные выше; кроме того, все объекты, а их число может быть очень велико, начинают обмениваться сообщениями, что активно поглощает ресурсы). Кроме того, значительное облегчение программирования привело к появлению множества очень непрофессионально написанных программ - программист, хотя бы слегка знающий ассемблер - это страшная редкость... В-четвертых, из-за роста размеров и сложности программ, становится практически невозможно ее тщательно протестировать. Мало того, что программист может допустить ошибку в своей программе, но ошибки или "недокументированные особенности" могут оказаться и в объектах, используемых в программе и в функциях самой операционной системы (что, увы, не редкость). В-пятых, всевозможные "красивости" и "навороты" в программах съедают изрядный кусок ресурсов компьютера. Если захотите немного поразвлечься, то попробуйте установить, например, какой-нибудь монитор загрузки процессора (или используйте тот, что поставляется с Windows) и посмотрите, что происходит, когда вы просто шевелите мышкой или двигаете окошки по экрану. А ведь это самые базовые операции... И возникает порочный круг: программы "красивеют" до тех пор, пока средний компьютер не начинает уж очень сильно тормозить, после чего появляется новое железо, декларируется, что, мол, уж теперь-то все начнет просто летать, после чего быстро пишутся новые, еще более "красивые" версии программ, и все начинается по новой... Можно еще писать в-шестых, в-седьмых и так далее, но надо ли?... Тенденцию все-равно не изменить. Но можно изрядно облегчить участь каждого отдельно взятого пользователя и компьютера. Для этого достаточно немного подучиться. Хотя тут каждый должен подумать и решить самостоятельно, что ему выгоднее - постоянно апгрейдить компьютер и наращивать его мощь, или же использовать более произоводительные (но и несколько более сложные в настройке и использовании) программы. В качестве наглядной демонстрации и для развлечения, почитайте комментарии вот к этой программульке (и обратите внимание на ее размер)... А истина, как обычно, где-то рядом... Источник: http://www.diskovod.ru
|
|||
|
|||
Copyright © "Internet Zone", info@izcity.com | |||
Копирование и использование данных материалов разрешается только в случае указания на журнал "Internet Zone", как на источник получения информации. При этом во всех ссылках обязательно явное указание адреса вэб-сайта http://www.izcity.com/. При наличии у копируемого материала авторов и источника информации - их также нужно указывать, наряду со ссылкой на нас. |