Начална » как да » Защо не всички приложения са преносими?

    Защо не всички приложения са преносими?

    Това е въпрос, който натрапва на всеки, който се е влюбил в преносими приложения: защо не всичко приложения преносими?

    Днешната сесия на въпросите и отговорите идва с любезното съдействие на SuperUser - подразделение на Stack Exchange, обединяващо групи от уебсайтове с въпроси и отговори.

    Въпроса

    Четецът на суперпотребител Том обича чистите преносими приложения на организацията и иска да знае защо всичко не е преносимо:

    Напоследък се опитвам да "инсталирам" неща много по-малко на моята машина на Windows (мразя инсталаторите - трябва да знам къде поставят програмите…), а вместо това да използвам преносими или самостоятелни версии на приложения.

    Сложих ги всичките в "Програмите" на диск, отделен от моя дял на Windows, така че всеки път, когато преинсталирам, имам всичките си приложения на разположение с минимални усилия и от положителна страна, получавам хубава чиста настройка.

    Приложения като Office и Creative Suite все още изискват от мен да премина през ужасно дълъг процес на инсталиране, където хиляди случайни библиотеки и инструменти се прехвърлят в моята система.

    Защо приложенията на Windows все още се нуждаят от инсталиране? Защо не можем просто да изтегляме Photoshop в папка под OSX и просто да работи? Дали някой друг се фокусира върху преносими приложения, или аз съм просто OCD за цялото нещо?

    Ние със сигурност сме фенове на преносими приложения и също бихме искали да стигнем до дъното на нещата.

    Отговорът

    Сътрудникът на SuperUser Дейвид Уитни предлага известна представа защо много приложения не са преносими и как Windows налага своеобразен режим на преносимост:

    Инсталаторите са резултат от години на еволюция и малко (опростена) история помага да се разбере защо правят това, което правят ...

    Моделът с Windows 3.1 предложи конфигурационни файлове за стил на config.ini за всяко приложение с поддържане на споделени библиотеки, които влизат в системните папки, за да се предотврати дублирането и загубата на дисково пространство.

    Windows 95 въведе регистър, позволяващ централен магазин за конфигуриране на приложения, който заменя много конфигурационни файлове. По-важното е, че конфигурацията на прозорците се съхранява на едно и също място.

    Регистърът стана подут поради приложения, които не се почистват след себе си. DLL Hell се случи в резултат на многобройни версии на едни и същи споделени библиотеки, презаписващи се един от друг.

    .NET въвежда концепцията на app.config (почти ini файловете маркират 2, този път с малко по-структуриращи програмисти, които губят време за писане на ръчни парсери). GAC беше въведен в споделени версии на версиите в опит да се предотврати DLL Hell.

    В Windows XP и повече в Vista Microsoft се опита да определи потребителското пространство като място за съхраняване на потребителски данни и конфигурационни файлове в едно стандартно местоположение, за да позволи профили на роуминг и лесна миграция (просто копирайте профила ви) с приложения, инсталирани в Program Files.

    Предполагам, че причината е, че „приложенията в Windows са предназначени да живеят на едно място, техните общи зависимости в друга и специфичните за потребителя данни в друга“, което доста противоречи на концепцията за xcopying на едно място.

    … И това е преди да се наложи да конфигурирате потребителските акаунти и да настройвате и да осигурявате разрешения за сигурност, както и да изтегляте актуализации и да инсталирате услуги за Windows…

    xcopy е "прост случай" и със сигурност не е най-подходящ за всичко.

    За съжаление за феновете на всички преносими неща, много приложения - особено големи приложения като Office - ще останат твърдо фиксирани и разпределени в операционната система.


    Имате ли какво да добавите към обяснението? Звукът е изключен в коментарите. Искате ли да прочетете повече отговори от други технологични потребители на Stack Exchange? Вижте пълната тема за дискусия тук.