Так ли открыты открытые исходники


         

Сторонним разработчикам предоставляется более или


Сторонним разработчикам предоставляется более или менее документированный и унифицированный API, дающий им возможность создавать собственные расширения. Заглядывать в исходные тексты при этом не требуется. К тому же снимается проблема переноса расширений во все остальные версии. В Open Source мире ведь как — или сообщество принимает твое расширение и включает его в поставку (но в любой момент может исключить), либо посылает на xyz, и ты вынужден вести свою версию, что приводит к путанице и всеобщей дисгармонии. А так — конечный пользователь сам решает какой ему плагин ставить, а какой нет.

Еще один миф. О тысячах энтузиастов по всему миру… Это чистейшей воды брехня. Я не знаю ни одного продукта, созданного толпой. Всегда во главе стоит один-два толковых парня, а остальные ходят с понтом, что "мы пахали". Вот, например, DOS Navigator от RIT Labs. Отличный продукт, с нехилым количеством пользователей и фанатов. После того как фирма свернула свои работы и выложила его исходники в сеть, проект сдулся. Да, сейчас существует NDN и еще несколько "отпрысков", но все они находятся в сильно заболоченном состоянии. Конечно, можно привести и контр пример. Скажем Лис (он же FireFox), который развивается настолько бурно, что даже теснит IE, а потеснить IE это не туалет обосрать скажу я вам. Но… как же он тормозит! Вся программа в одном исполняемом файле. Так умные люди не пишут! Так что рая на земле не бывает…

Что там у нас еще? Ах да, бэк-доры. Дескать, в Open Source их не внедришь. Как бы не так! Хорошо продуманную закладку обнаружить практически невозможно. Достаточно "случайно" допустить ошибку переполнения буфера, проявляющуюся только при стечении множества маловероятных обстоятельствах на стыке разных модулей. Ну, вот например, такой сценарий: один модуль делает удар по памяти, искажая данные другого так, что буфер переполняется на строках в 69 символов, но не переполняется при всех остальных (срабатывают дополнительные проверки).Чтобы обнаружить эту ошибку необходимо удержать в голове работу двух разных модулей, связав их воедино, что не сильно легче чем дизассемблировать машинный код. А переполнение буфера это уже shell. Со всеми вытекающими…


Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий