Proč nejsou všechny aplikace přenosné?
Je to otázka, která se týká každého, kdo se zamiloval do přenosných aplikací: proč tomu tak není? Všechno přenosné aplikace?
Dnešní zasedání Otázky a odpovědi se k nám přichází s laskavým svolením SuperUser - subdivize Stack Exchange, seskupení webových stránek Q & A.
Otázka
Čtečka SuperUser Tom miluje čistou organizaci, kterou poskytují přenosné aplikace a chce vědět, proč vše není přenosné:
Nedávno jsem se snažil "instalovat" věci mnohem méně na svůj stroj Windows (nenávidím instalátory - potřebuji vědět, kde se programy dají věci ...), volbu používat přenosné nebo samostatné verze aplikací.
Dala jsem je všechny do adresáře 'Programy' na disku, který je oddělený od mé Windows, takže kdykoliv přeinstaluji, všechny moje aplikace jsou k dispozici s minimálním úsilím a na straně plus dostanu pěkné čisté nastavení.
Aplikace jako Office a Creative Suite stále vyžadují, abych prošel strašně dlouhým procesem instalace, kde je tisíce náhodných knihoven a nástrojů hodeno přes můj systém.
Proč je třeba stále instalovat aplikace systému Windows? Proč nemůžeme přetáhnout Photoshop do složky à la OSX a jen to funguje? Zaměřuje se někdo jinde na přenosné aplikace, nebo jsem prostě OCD o celé věci?
Jsme určitě fanoušci přenosných aplikací a také bychom se rádi dostali na dno věcí.
Odpověď
Příspěvek společnosti SuperUser David Whitney nabízí nějaký pohled na to, proč mnoho aplikací není přenosných a jak systém Windows vynucuje nějaký režim proti přenosnosti:
Instalátory jsou výsledkem let vývoje a trochu (zjednodušené) historie pomáhá pochopit, proč dělají to, co dělají ...
Model 3.1 systému Windows navrhl konfigurační soubory stylu config.ini na jednu aplikaci s podporou sdílených knihoven, které přecházejí do systémových složek, aby zabránily duplicitě a zbytečnému prostoru na disku.
Systém Windows 95 představil registr umožňující centrální úložiště pro konfiguraci aplikací, které nahrazuje mnoho konfiguračních souborů. A co je důležitější, konfigurace Windows byla uložena na stejném místě.
Registrace se zhoršila kvůli žádostem, které nebyly vyčištěny po sobě. DLL sakra se stalo jako důsledek několika verzí stejných sdílených knihoven, které se navzájem přepsaly.
.NET představil koncept app.config (téměř originální soubory značka 2, tentokrát s trochu více struktury úspory vývojáři plýtvání časem psaní ruční parserů). GAC byl představen ke sdíleným verzím verze ve snaze zabránit DLL Hell.
Ve Windows XP a moreso ve Windows se společnost Microsoft pokoušela definovat uživatelský prostor jako místo pro ukládání uživatelských dat a konfiguračních souborů do jediného standardního umístění, aby umožnily roamingové profily a snadnou migraci (prostě zkopírujte profil) s aplikacemi nainstalovanými v programových souborech.
Takže myslím, že důvodem je, že "aplikace v systému Windows jsou navržena tak, aby žily na jednom místě, jejich sdílené závislosti v jiném a uživatelské specifické údaje v jiném", což prakticky funguje proti konceptu xcopying jedné lokace.
... a to je předtím, než budete muset nakonfigurovat uživatelské účty a nastavit a zajistit oprávnění zabezpečení a stáhnout aktualizace a nainstalovat služby Windows ...
xcopy je "jednoduchý případ" a určitě není nejlepší pro všechno.
Bohužel pro fanoušky všeho přenosného, mnoho aplikací - zejména velkých aplikací, jako je Office - zůstane pevně fixováno a distribuováno v operačním systému.
Musíte něco přidat k vysvětlení? Vypadněte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.