Информация об изменениях

Сообщение Re[2]: Почему MS не освоили принцип слабой связности? от 08.09.2025 13:25

Изменено 08.09.2025 13:39 ksandro

Re[2]: Почему MS не освоили принцип слабой связности?
Здравствуйте, vdimas, Вы писали:

V>Это вовсе не обязательно, многие программы не срут в реестр.


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

V>Многие программы так и делают, но когда-то это жутко тормозило — читать кучу настроек из разных файлов при старте программы.

Во времена доса так делали, и ничего страшного, не тормозило. В Windows 3.1 прекрасно помню файлы win.ini и system.ini почему-то не тормозило, а потом стало тормозить. Да и реестр хранится в той же файловой системе. На практике он через некоторое время разбухал настолько, что наинал тормозить всю систему.

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

V>Реестр же работал со скоростью света, в сравнении с.


На только что установленной чистой системе да. Но стоило поставить необходимый минимум программ, начинало все тормозить.
реестр использовал не текстовый а бинарный формат данных, это ускоряло работу с ним. Но там все хранилось в одном файле, даже настройки неиспользуемых и удаленных программ, этот файл читался при запуске системы. Я не знаю деталей, но, думаю он перечитывался и перезаписывался регулярно при работе программ с ним. Файл постоянно разбухал, и работа с ним была все медленнее и медленнее.

V>Кроме того, АПИ реестра предоставляло общие ср-ва хранения настроек, избавляя отдельные программы от необходимости делать то же самое, но уникально и в меру своей испорченности.


Ну вот оставили бы API, пусть это была бы стандартная бибилиоткека для работы с конфигурационными файлами и стандартный бинарный формат файла. Но нахрена все было писать в один файл.

V>Вот как раз для этого тоже — можно сохранить текущее состояние ОС (В т.ч. реестра прикладных программ) и вернуться к этому состоянию.

V>В случае хранения настроек в уникальном виде, такой механизм твоей проге недоступен.

Предполагаю, что изначально такие идеи были. Но на практике это не работало. Мне кажется просто на это дело забили и не стали доводить до ума. Может конечно столкнулись с какими-то серьезными проблемами при реализации
Re[2]: Почему MS не освоили принцип слабой связности?
Здравствуйте, vdimas, Вы писали:

V>Это вовсе не обязательно, многие программы не срут в реестр.


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

V>Многие программы так и делают, но когда-то это жутко тормозило — читать кучу настроек из разных файлов при старте программы.

Во времена Доса так делали, и ничего страшного, не тормозило. В Windows 3.1 прекрасно помню файлы win.ini и system.ini почему-то тогда не тормозило, а потом стало тормозить? Да и реестр хранится в той же файловой системе. На практике он через некоторое время разбухал настолько, что наичнал тормозить всю систему просто благодаря своим размерам.

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

V>Реестр же работал со скоростью света, в сравнении с.


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

V>Кроме того, АПИ реестра предоставляло общие ср-ва хранения настроек, избавляя отдельные программы от необходимости делать то же самое, но уникально и в меру своей испорченности.


Ну вот оставили бы API, пусть это была бы стандартная бибилиоткека для работы с конфигурационными файлами и стандартный бинарный формат файла. Но нахрена все было писать в один файл.

V>Вот как раз для этого тоже — можно сохранить текущее состояние ОС (В т.ч. реестра прикладных программ) и вернуться к этому состоянию.

V>В случае хранения настроек в уникальном виде, такой механизм твоей проге недоступен.

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