Główna » jak » Dlaczego wszystkie aplikacje nie są przenośne?

    Dlaczego wszystkie aplikacje nie są przenośne?

    To pytanie nęka każdego, kto zakochał się w przenośnych aplikacjach: dlaczego tak nie jest wszystko aplikacje przenośne?

    Dzisiejsza sesja pytań i odpowiedzi jest dostępna dzięki uprzejmości SuperUser - podsekcji Stack Exchange, grupy dyskusyjnej poświęconej tematyce społecznościowej.

    Pytanie

    Czytnik SuperUser Tom uwielbia czystą organizację, którą zapewniają przenośne aplikacje i chce wiedzieć, dlaczego wszystko nie jest przenośne:

    Ostatnio próbowałem "instalować" rzeczy o wiele mniej na moim komputerze z systemem Windows (nienawidzę instalatorów - muszę wiedzieć, gdzie programy umieszczają rzeczy ...), wybierając zamiast nich przenośne lub autonomiczne wersje aplikacji.

    Umieściłem je wszystkie w katalogu "Programy" na dysku oddzielonym od mojej partycji Windows, więc za każdym razem, gdy ponownie je instaluję, wszystkie moje aplikacje są dostępne przy minimalnym wysiłku, a po stronie dodatniej, mam ładną, czystą konfigurację..

    Aplikacje, takie jak pakiet Office i pakiet Creative Suite, nadal wymagają przeprowadzenia strasznie długiego procesu instalacji, w którym w moim systemie jest wyświetlanych tysiąc losowych bibliotek i narzędzi.

    Dlaczego aplikacje Windows nadal wymagają instalacji? Dlaczego nie możemy po prostu przeciągnąć Photoshopa do foldera à la OSX i po prostu go uruchomić? Czy ktokolwiek koncentruje się na przenośnych aplikacjach, czy też jestem po prostu OCD o tym wszystkim?

    Z pewnością jesteśmy fanami przenośnych aplikacji i chcielibyśmy również dotrzeć do sedna rzeczy.

    Odpowiedź

    Współpracownik SuperUser, David Whitney, zapewnia pewien wgląd w to, dlaczego wiele aplikacji nie jest przenośnych i jak Windows wymusza pewien rodzaj przeciwwagi:

    Instalatorzy są wynikiem lat ewolucji i trochę (uproszczonej) historii pomaga zrozumieć, dlaczego robią to, co robią ...

    Model Windows 3.1 sugerował pliki konfiguracyjne w stylu config.ini dla każdej aplikacji z obsługą współdzielonych bibliotek do folderów systemowych, aby zapobiec powielaniu i marnowaniu miejsca na dysku.

    Windows 95 wprowadził rejestr, umożliwiając centralny magazyn do konfiguracji aplikacji, zastępując wiele plików konfiguracyjnych. Co ważniejsze, konfiguracja systemu Windows była przechowywana w tym samym miejscu.

    Rejestr został nadęty z powodu aplikacji, które nie czyszczą się po sobie. Piekło DLL stało się wynikiem wielu wersji tych samych bibliotek współdzielonych, nadpisujących się nawzajem.

    .NET wprowadził koncepcję app.config (prawie ini files mark 2, tym razem z nieco większą strukturą oszczędzającą deweloperom marnujących czas na pisanie ręcznych analizatorów składni). GAC został wprowadzony do wersji wspólnych zestawów w celu uniknięcia DLL Hell.

    W systemach Windows XP i moreso w systemie Vista firma Microsoft podjęła próbę zdefiniowania przestrzeni użytkownika jako miejsca do przechowywania danych użytkownika i plików konfiguracyjnych w jednej standardowej lokalizacji, aby umożliwić profilowanie i łatwą migrację (wystarczy skopiować swój profil) z aplikacjami zainstalowanymi w plikach programu.

    Tak myślę, że powodem jest to, że "aplikacje w Windows są zaprojektowane do życia w jednym miejscu, ich współdzielone zależności w innym, a dane użytkownika w innym", co w zasadzie działa przeciwko koncepcji kopiowania pojedynczej lokalizacji.

    ... i to zanim będziesz musiał skonfigurować konta użytkowników, skonfigurować i zapewnić uprawnienia zabezpieczeń oraz pobrać aktualizacje i zainstalować usługi Windows ...

    xcopy to "prosty przypadek" i na pewno nie pasuje do wszystkiego.

    Na nieszczęście dla wszystkich przenośnych urządzeń wiele aplikacji - zwłaszcza duże aplikacje, takie jak Office - pozostanie niezmiennie na stałe i rozproszonych w całym systemie operacyjnym.


    Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.