Почему разработчики не делают автоматическую установку на Windows? [закрыто]

35

Это обратное к « Почему разработчики не делают мастеров установки в Linux? », Что интересно, но заставило меня подумать: «Автоматическая установка - это естественный способ. Почему они используют мастера?».
Итак, вот обратный вопрос:

Я уверен, что речь идет не о лени, или что-то в этом роде, но я не понимаю, почему разработчики, даже в основном приложений, ориентированных на потребителя, не делают полностью автоматическую установку, где вас совсем не беспокоит. Те же приложения обычно имеют автоматическую установку в Linux, так почему бы не Windows и Mac OS?

Есть ли техническая причина для этой тенденции, или это просто соглашение?

Volker Siegel
источник
6
MacOs также является автоматическим (почти) - обычно вы просто перетаскиваете значок в папку «Приложения». Я думаю, в Windows это не работает из-за некоторых странных вещей реестра
Lovis
3
«неправильно спросил» действительно мнение. Я не думаю , что это справедливо фрагментировать ответы на этот вопрос с этим обратным , потому что вам не нравится , как это было предложено (и немного педантичный имо ). Любой ответ, который заканчивается здесь, будет просто обратным ответу на другой. Я чувствую, что правильный ответ, если вы чувствуете, что вопрос задом наперед, - это добавить свой собственный ответ, который объясняет, почему вы так чувствуете, а затем ответить на вопрос с этой точки зрения.
Селали Адобор
2
Магазин приложений для Windows 8 - это попытка создать централизованный репозиторий программного обеспечения, как это делается в большинстве дистрибутивов Linux.
Филипп
10
Если они делают это автоматически, как они могут связывать вредоносные рекламные программы, не избегая суда?
Raestloz
3
Я думаю, что предпосылка этого вопроса неверна - многие приложения Windows можно установить с помощью упрощенной опции «использовать стандартные настройки» в установщике. Предоставление дополнительных опций, таких как установка программы, просто вежливое занятие. Мне действительно не нравятся программы, которые не позволяют мне решить, где на диске они будут установлены.
GrandmasterB

Ответы:

49

Информированное согласие

Пользователи должны быть в состоянии решить, прежде всего, хотят ли они, чтобы программа была установлена ​​на их компьютере или нет. Вам может показаться само собой разумеющимся, что люди, очевидно, выбирают установку программы, но главная особенность вредоносной программы заключается в том, что она может быть установлена ​​без ведома пользователя компьютера.

Информированное согласие становится еще более явным благодаря UAC .

Лицензионное соглашение

Большинство современных программ следуют модели «кликабельности» при лицензировании; то есть пользователь соглашается с условиями лицензии в процессе установки в качестве условия установки программы. То, что пользователи редко читают эти соглашения, не означает, что они ими не связаны, особенно если они установили флажок «Я согласен с этими условиями».

Настройка параметров

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

Ход установки

В то время как программы в экосистеме Windows становятся менее навязчивыми во время процесса установки (например, установка без регистрации), установка по-прежнему часто является нетривиальной операцией. Индикаторы выполнения и другие наглядные пособия показывают, что что-то действительно происходит. Последняя страница мастера сообщает вам, была ли успешной установка.

Начиная

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

Роберт Харви
источник
5
Иллюзия того, что процесс установки был быстрым и безболезненным.
Rotem
6
За счет того, что само программное обеспечение не является быстрым и безболезненным. Раздражающий установщик легче простить, чем надоедливое приложение.
СРП
18
Просить кого-то согласиться с условиями после установки кажется мне проблематичным способом решения проблем.
Эрик Кинг,
6
Ваша первая причина "осознанного согласия" - фальшивка. Автоматическая установка не означает автоматическую установку, даже если пользователь даже не знает, что он ее устанавливает. Автоматическая установка означает, что вы запускаете установщик, а он позаботится обо всем остальном оттуда. Сам факт запуска самого установщика уже является согласием: если пользователь хочет выяснить, что программа делает перед установкой, то он уже давно выяснил это на веб-сайте, с которого он загрузил установщик, или в описании пакета в пакете. управляющий делами.
Ли Райан
8
@LieRyan: Многие программы Windows Installer содержат «тихий» переключатель. Если человек достаточно умен, чтобы знать об этом и использовать его, то да, это информированное согласие.
Роберт Харви,
21

Из того, что я видел, все сводится к «опыту работы с Windows». То есть сделать любое действие или параметр максимально видимым для пользователя.

Причина, по которой я говорю это, заключается в том, что графический интерфейс не требуется для установки. Установщики на основе MSI могут быть установлены в автоматическом режиме аналогично пакетам на основе Linux. Графический интерфейс совершенно необязателен, но, опять же, он дает пользователю наглядное представление о том, что происходит в фоновом режиме.

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

В Windows такого не существует. Если пользователь хочет установить программное обеспечение для Windows, он должен найти и загрузить программное обеспечение отдельно. Не существует стандартизированного инструмента для помощи пользователю в настройке и установке программного обеспечения. Поэтому графический интерфейс установки, который поставляется в комплекте с каждым программным обеспечением, очень похож на графический интерфейс менеджера пакетов в Linux. Он просто существует, чтобы позволить пользователю настроить установку и отслеживать ее ход.

Во многих случаях графический интерфейс установки не требуется из-за наличия интерфейса управления. Например, на популярной платформе Steam любые игры или программы, доступные через steam store, устанавливаются автоматически с помощью сценариев установки.

Другим отличным примером будет SCCM. System Center Configuration Manager (для краткости SCCM) - это программное обеспечение, используемое для управления группами компьютеров в сети. Он включает в себя возможность сделать программное обеспечение доступным для установки через графический интерфейс, называемый Software Center. Любой установщик на основе MSI можно сделать доступным для установки одним нажатием кнопки. В среде, в которой я работаю, у нас есть программное обеспечение от Adobe Creative Suite до таких вещей, как WinZip. Все, что нужно сделать пользователю, - это поискать в каталоге, найти то, что доступно, нажать «Установить» и дождаться подтверждения. Это почти такой же процесс, как если бы я хотел установить что-то на свой домашний компьютер под управлением Linux Mint.

Thebluefish
источник
5
«То есть сделать любое действие или параметр максимально видимым для пользователя». - Определенно. Так же, как Windows с радостью расскажет, какие обновления она устанавливает в фоновом режиме; кто будет доволен простым сообщением "Перезагрузитесь, чтобы завершить установку 67 обновлений."?
Рафаэль
Задолго до App Store в OS X или Homebrew процесс установки все еще был автоматическим. Централизованное управление пакетами здесь не является основным драйвером.
james_womack
6

Окно использует MSI-файлы , которые в основном работают так же, как и другие пакеты программ. Их можно установить без вывода сообщений, установив флажок, но по умолчанию Windows представляет графический интерфейс со всеми параметрами конфигурации, определенными в пакете. Поэтому для обычного пользователя msi-файлы ведут себя так же, как установщики exe.

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

Относительно возможности установщика, который по умолчанию полностью молчит. В Windows принято, что пользователю разрешено выбирать установочный каталог, если вы не включите эту опцию в графическом интерфейсе, вы окажетесь на неправильной стороне многих пользователей. Кроме того, пользователи привыкли видеть хотя бы минимум диалогов при установке программы, если вы ничего не показываете, они могут подумать, что установка не удалась.

AAAAAAAAAAAA
источник
5

Разработчики делают автоматическую установку в Windows, но не все программное обеспечение предлагается в этом формате. Вопреки многим другим ответам здесь, у Windows действительно есть стандартный и широко используемый «менеджер пакетов» (смиритесь со мной), но он относительно мало известен даже среди разработчиков, потому что он нацелен на предприятия, а не на конечных пользователей.

Он называется SCCM и используется каждым крупным предприятием для управления своими установками Windows. Помимо возможности управления пакетами (передача программного обеспечения и зависимостей на клиентские машины), он также управляет обновлениями Windows и другого установленного программного обеспечения.

SCCM не используется даже техническими пользователями для управления своими компьютерами. На самом деле это не значит, что вы можете получить большую выгоду для управления одним компьютером; на самом деле это может даже не работать без Active Directory / компьютеров, не подключенных к домену. Поэтому я бы не стал называть его диспетчером пакетов Windows , даже если он управляет развертыванием программного обеспечения и обновлений.

Однако я хочу сказать, что в Windows есть автоматические установки , и они широко используются системными администраторами на крупных предприятиях. Если вы видите продукт, предлагающий загрузку .msi, возможно, это потому, что он хочет автоматически развертываться на тысячах машин через SCCM.

Отказ от ответственности: я сам не использовал SCCM и мало что знаю об этом, поэтому я могу ошибаться в отношении некоторых тонкостей выше.

Роман Старков
источник
0

С технической стороны, Windows стремится к большей интеграции между программами (через реестр), чем Linux. Это требует официального процесса установки, а не просто копирования программы на жесткий диск (например, для включения контекстных меню). Некоторые ОС (например, Mac OS) будут делать это за кулисами или при первом запуске, но Windows предпочитает делать это явной частью установки.

Что касается нетехнической стороны, Windows предпочитает модель установить ее и забыть. Например, в Linux обычно не так много настроек (вариантов установки), но часто вы используете флаги при запуске программы - потому что вы привыкли к этому; или вы измените параметры, как только вы в программе. Windows предпочитает настраивать параметры в течение установленного времени (установки) и не ожидает, что пользователь будет использовать флаги командной строки или иным образом устанавливать параметры при каждом запуске программы. Это снижает гибкость (поскольку вы можете использовать разные флаги каждый раз), хотя часто это проявляется для опытных пользователей (например, варианты в ярлыке); но предоставляет более простой интерфейс для большинства пользователей и позволяет разработчику представить пользователям чистый интерфейс для установки необходимых параметров и значений по умолчанию.

Джо
источник
0

Отказ от ответственности: это в значительной степени предположение, однако основано на моем опыте упаковки приложений Windows для установки и развертывания.

Все сводится к тому, что де-факто стандарт для установки на платформе. В Linux стандартным является использование инструментов управления пакетами, таких как apt(на основе dpkg / Debian) или yum(на основе rpm / RedHat) для установки. После того, как вы предоставили пакет для развертывания, создание мастера - пустая трата времени, поскольку подавляющее большинство пользователей все равно будет использовать пакет (как его стандарт).

Стандартно для Windows стандарт является установкой на основе графического интерфейса. Там есть альтернативы, однако ни один из этих вариантов не пригодны в качестве 100% замены для монтажника:

  • Существуют инструменты управления пакетами (такие как Chocolatey , однако ни один из них еще не достиг критической массы - если вы обеспечите установку только на основе управления пакетами, многие пользователи будут раздражены тем, что им нужно установить какой-то другой фрагмент программного обеспечения только для того, чтобы установить программа (подумайте о том, насколько раздражают менеджеры загрузки). Большинство инструментов управления пакетами также нацелены на технических пользователей, и поэтому, если ваше программное обеспечение не предназначено для этой пользовательской базы, то предоставление пакета для Chocolatey будет пустой тратой времени. как никто не будет его использовать.
  • Некоторое программное обеспечение подходит для развертывания XCopy, однако это работает только для относительно простых программных продуктов. Это хорошо для пользователей, которые хотят установить на флеш-накопитель (например), однако для всех остальных это фафф. В результате многие проекты, которые выбирают выпуск файлов для установки XCopy, также предоставляют программу установки.
  • Chocolatey предоставляет фрагмент командной строки, который загружает и запускает установку. Опять же, несмотря на то, что он быстрый и хорошо работает для технических пользователей, нетехнические пользователи будут бороться и будут отталкиваться от этого метода установки.

Если ваше программное обеспечение достаточно сложное, чтобы требовать развертывания, оно в значительной степени является обязательным для обеспечения установки графического интерфейса пользователя, как того ожидают пользователи. Существует также ряд продуктов, которые делают создание этих мастеров довольно простым, поэтому предоставление установщика на основе графического интерфейса, как правило, является одним из самых простых вариантов с точки зрения времени разработки. Если у вас есть установщик на основе графического интерфейса, вам необходимо оценить соотношение затрат и выгод для каждого из вышеперечисленных (помните, что новые возможности начинаются с минус 100 баллов), а для многих продуктов просто не стоит усилий по созданию и поддержке этих альтернатив.

Обратите внимание, что установщики с каким-то «тихим» режимом довольно распространены в Windows, однако это, как правило, не режим по умолчанию - опять же, поскольку он не является стандартным. Большинство пользователей Windows находят установщик, который сразу же устанавливает себя, как только вы запускаете его довольно смущающе.

Джастин
источник