Tại sao các nhà phát triển không cài đặt tự động trên windows? [đóng cửa]


35

Đây là điều ngược lại với " Tại sao các nhà phát triển không tạo trình hướng dẫn cài đặt trên linux? ", Điều này rất thú vị, nhưng khiến tôi nghĩ rằng "Cài đặt tự động là cách tự nhiên. Tại sao họ sử dụng trình hướng dẫn?".
Vì vậy, đây là câu hỏi ngược:

Tôi chắc chắn rằng đó không phải là về sự lười biếng, hoặc bất cứ điều gì tương tự, nhưng tôi không hiểu tại sao các nhà phát triển, thậm chí chủ yếu là các ứng dụng phải đối mặt với người tiêu dùng, không thực hiện một loại cài đặt hoàn toàn tự động mà bạn hoàn toàn không bận tâm. Các ứng dụng tương tự thường có cài đặt tự động trên Linux, vậy tại sao không phải là Windows và Mac OS?

Có bất kỳ lý do kỹ thuật cho xu hướng này, hoặc nó chỉ là quy ước?


6
MacO cũng tự động (gần như) - thông thường bạn chỉ kéo biểu tượng vào thư mục "Ứng dụng". Tôi đoán trong windows nó không hoạt động vì một số thứ đăng ký kỳ lạ
Lovis

3
"hỏi sai cách xung quanh" thực sự là một ý kiến. Tôi không nghĩ rằng thật công bằng khi phân đoạn các câu trả lời cho câu hỏi đó với nghịch đảo này bởi vì bạn không thích cách nó được hỏi (và một chút imo pedantic ). Bất kỳ câu trả lời nào kết thúc ở đây sẽ chỉ đơn giản là nghịch đảo của một câu trả lời hợp lệ cho câu trả lời khác. Tôi cảm thấy câu trả lời thích hợp nếu bạn cảm thấy câu hỏi ngược là thêm câu trả lời của riêng bạn giải thích lý do tại sao bạn cảm thấy như vậy, và sau đó trả lời câu hỏi theo quan điểm đó.
Selali Adobor

2
Kho ứng dụng windows 8 là một nỗ lực để thiết lập một kho phần mềm tập trung giống như hầu hết các bản phân phối Linux có.
Philipp

10
Nếu họ làm cho nó tự động, làm thế nào họ có thể đóng gói các phần mềm độc hại mà không cần tránh tòa án?
Raestloz

3
Tôi nghĩ tiền đề của câu hỏi này là sai - nhiều ứng dụng Windows có thể cài đặt thông qua tùy chọn 'sử dụng cài đặt tiêu chuẩn' được sắp xếp hợp lý trong trình cài đặt. Cung cấp các tùy chọn bổ sung, chẳng hạn như nơi để cài đặt chương trình, chỉ đơn giản là điều lịch sự cần làm. Tôi thực sự không thích các chương trình không cho phép tôi quyết định nơi chúng sẽ được cài đặt trên ổ đĩa.
GrandmasterB

Câu trả lời:


49

Sự đồng ý

Người dùng nên có thể quyết định, trước hết, thậm chí họ có muốn chương trình được cài đặt trên máy tính của họ hay không. Có vẻ như bạn có thể thấy rõ rằng mọi người rõ ràng đang chọn cài đặt chương trình, nhưng đặc điểm chính của chương trình độc hại là nó có thể được cài đặt mà người dùng máy tính không biết về nó.

Sự đồng ý có hiểu biết thậm chí còn được thực hiện rõ ràng hơn thông qua UAC .

Thỏa thuận cấp phép

Hầu hết các phần mềm hiện đại tuân theo mô hình "nhấp qua" để cấp phép; nghĩa là, người dùng đồng ý với các điều khoản của giấy phép trong quá trình cài đặt như một điều kiện để cài đặt chương trình. Việc người dùng hiếm khi đọc các thỏa thuận này không có nghĩa là họ không bị ràng buộc bởi họ, đặc biệt nếu họ đã nhấp vào hộp kiểm có nhãn "Tôi đồng ý với các điều khoản này".

Tùy chọn cấu hình

Nhiều gói phần mềm có các tùy chọn cho phép bạn thay đổi cách cài đặt phần mềm theo những cách nhất định. Điều quan trọng nhất trong số này cho phép bạn quyết định xem bạn có muốn một biểu tượng trên máy tính để bàn hay không, nhưng trong các ứng dụng lớn hơn, bạn có thể quyết định những tính năng nào bạn muốn cài đặt.

Quá trình cài đặt

Mặc dù các chương trình trong hệ sinh thái Windows đang trở nên tốt hơn trong việc ít xâm nhập hơn trong quá trình cài đặt (ví dụ: cài đặt không có đăng ký), cài đặt vẫn thường là một hoạt động không hề nhỏ. Thanh tiến trình và các phương tiện trực quan khác đưa ra một dấu hiệu cho thấy một cái gì đó đang thực sự xảy ra. Trang cuối cùng trong trình hướng dẫn cho bạn biết cài đặt có thành công hay không.

Bắt đầu

Cuối cùng, các gói phần mềm tốt nhất cho bạn biết phải làm gì tiếp theo. Các bước đầu tiên là gì, làm thế nào để bắt đầu, làm thế nào để được giúp đỡ. Hầu hết các phần mềm, khi được cài đặt, để lại cho bạn một biểu tượng khởi động và đó là phần mềm. Không bao giờ đánh giá quá cao trình độ chuyên môn của người dùng của bạn; có vẻ khó tin đối với bạn, vẫn có những người không biết cách tìm và khởi động các chương trình phần mềm họ vừa cài đặt.


5
Ảo tưởng rằng quá trình cài đặt nhanh chóng và không đau đớn.
Rotem

6
Với chi phí mà bản thân phần mềm không nhanh chóng và không gây đau đớn. Một trình cài đặt gây phiền nhiễu dễ tha thứ hơn một ứng dụng gây phiền nhiễu.
nwp

18
Yêu cầu ai đó đồng ý với các điều khoản sau khi cài đặt đối với tôi dường như là một cách có vấn đề.
Eric King

6
Lý do đầu tiên của bạn "Đồng ý có hiểu biết" là không có thật. Cài đặt tự động không có nghĩa là cài đặt im lặng mà không cần người dùng biết họ đang cài đặt nó. Cài đặt tự động có nghĩa là bạn khởi động trình cài đặt và nó sẽ giải quyết phần còn lại từ đó. Thực tế chỉ bắt đầu trình cài đặt đã là sự đồng ý, nếu người dùng muốn tìm hiểu chương trình làm gì trước khi cài đặt, thì từ lâu họ đã tìm ra điều đó từ trang web nơi họ tải xuống trình cài đặt từ hoặc mô tả gói trong gói giám đốc.
Lie Ryan

8
@LieRyan: Nhiều chương trình Windows Installer bao gồm một công tắc "im lặng". Nếu một người đủ thông minh để biết về điều đó và sử dụng nó, thì có, đó là sự đồng ý.
Robert Harvey

21

Từ những gì tôi đã thấy, nó thực sự sôi sục với toàn bộ "trải nghiệm Windows". Đó là, làm cho bất kỳ hành động hoặc tùy chọn nào hiển thị cho người dùng càng tốt.

Lý do tôi nói điều này là GUI không cần thiết để cài đặt. Các trình cài đặt dựa trên MSI có thể được cài đặt âm thầm theo cách tương tự với các gói dựa trên Linux. GUI là hoàn toàn tùy chọn, nhưng một lần nữa là ở đó để cung cấp cho người dùng một đại diện trực quan về những gì đang diễn ra trong nền.

Trong Linux, điều này dễ dàng được thực hiện bằng cách sử dụng trình quản lý gói. Nếu tôi muốn cài đặt một gói, tôi phải yêu cầu cụ thể gói đó. Đối với ít bao gồm về mặt kỹ thuật, thông thường trình quản lý gói dựa trên GUI có sẵn để người dùng cài đặt phần mềm mong muốn.

Trong Windows, không có thứ đó tồn tại. Nếu người dùng muốn cài đặt phần mềm dựa trên Windows, họ phải tìm và tải xuống phần mềm riêng biệt. Không có công cụ tiêu chuẩn hóa để hỗ trợ người dùng cấu hình và cài đặt phần mềm. Do đó, GUI cài đặt đi kèm với mỗi phần mềm rất giống với GUI quản lý gói trong Linux. Nó chỉ đơn giản là tồn tại để cho phép người dùng cấu hình cài đặt và theo dõi tiến trình của nó.

Có rất nhiều trường hợp không cần thiết phải cài đặt GUI do sự hiện diện của GUI quản lý. Ví dụ, nền tảng Steam phổ biến sẽ tự động cài đặt bất kỳ trò chơi hoặc phần mềm nào có sẵn thông qua cửa hàng hơi với sự hỗ trợ của các tập lệnh cài đặt.

Một ví dụ tuyệt vời khác sẽ là SCCM. Trình quản lý cấu hình hệ thống trung tâm (viết tắt là SCCM) là một phần mềm được sử dụng để quản lý các nhóm máy tính trên mạng. Nó bao gồm khả năng làm cho phần mềm có sẵn để cài đặt thông qua GUI có tên là Trung tâm phần mềm. Bất kỳ trình cài đặt dựa trên MSI nào cũng có thể được cung cấp để cài đặt chỉ với một nút bấm. Trong môi trường mà tôi làm việc, chúng tôi có phần mềm từ Creative Suite của Adobe cho đến những thứ như WinZip có sẵn. Tất cả những gì người dùng cần làm là tìm kiếm danh mục để tìm những thứ có sẵn, nhấp vào cài đặt và chờ xác nhận. Nó gần như là quá trình chính xác giống như tôi muốn cài đặt một cái gì đó trên máy tính ở nhà chạy Linux Mint.


5
"Đó là, làm cho bất kỳ hành động hoặc tùy chọn nào hiển thị cho người dùng càng tốt." - Chắc chắn rồi. Giống như Windows sẽ vui vẻ chi tiết những gì bản cập nhật mà nó cài đặt trong nền; Ai sẽ hài lòng với một thông báo đơn giản "Khởi động lại để hoàn tất cài đặt 67 bản cập nhật."?
Raphael

Rất lâu trước App Store hoặc Homebrew của OS X, quá trình cài đặt vẫn tự động. Quản lý gói tập trung không phải là trình điều khiển chính ở đây.
james_womack

6

Cửa sổ sử dụng các tệp msi , phần lớn hoạt động giống như các gói chương trình khác. Chúng có thể được cài đặt âm thầm bằng cách đặt cờ, nhưng hành vi mặc định là Windows trình bày GUI với tất cả các tùy chọn cấu hình được xác định trong gói. Do đó, các tệp msi của người dùng bình thường hoạt động giống như các trình cài đặt exe.

Là người dùng thường chọn thay đổi mặc định, tôi thấy rằng sử dụng GUI là cách dễ nhất để tìm hiểu các tùy chọn tôi có khi cài đặt chương trình và thuận tiện cho việc thay đổi chúng cùng một lúc.

Liên quan đến khả năng của một trình cài đặt mặc định hoàn toàn im lặng. Trên Windows, theo thông lệ, người dùng được phép chọn thư mục cài đặt, bạn sẽ gặp phải sai lầm của rất nhiều người dùng nếu bạn không cho phép tùy chọn đó trong GUI. Ngoài ra, người dùng thường thấy ít nhất một đoạn hội thoại khi cài đặt chương trình, nếu bạn không thấy gì thì họ có thể nghĩ rằng việc cài đặt thất bại.


5

Các nhà phát triển thực hiện cài đặt tự động trên Windows, nhưng không phải tất cả phần mềm đều được cung cấp ở định dạng này. Trái ngược với nhiều câu trả lời khác ở đây, Windows có một "trình quản lý gói" tiêu chuẩn và được sử dụng rộng rãi (mang theo tôi), nhưng nó tương đối ít được biết đến ngay cả trong số các nhà phát triển vì nó nhắm mục tiêu vào các doanh nghiệp, không phải người dùng cuối.

Nó được gọi là SCCM và được sử dụng bởi mọi doanh nghiệp lớn để quản lý các cài đặt Windows của họ. Ngoài việc có thể quản lý các gói (phần mềm đẩy và phụ thuộc vào máy khách), nó còn quản lý các bản cập nhật cho Windows và các phần mềm được cài đặt khác.

SCCM không được sử dụng ngay cả bởi người dùng kỹ thuật để quản lý máy tính của riêng họ. Nó thực sự không có nghĩa là mang lại nhiều lợi ích cho việc quản lý một máy tính; trong thực tế, nó thậm chí có thể không hoạt động nếu không có Active Directory / các máy không tham gia miền. Vì vậy, tôi thực sự sẽ không gọi nó là trình quản lý gói Windows , ngay cả khi nó quản lý phần mềm và cập nhật triển khai.

Tuy nhiên, quan điểm của tôi ở đây là có các cài đặt tự động trên Windows và chúng được sử dụng rộng rãi - bởi các quản trị viên hệ thống trong các doanh nghiệp lớn. Nếu bạn thấy một sản phẩm cung cấp tải xuống .msi, có thể là vì nó muốn được tự động triển khai cho hàng ngàn máy thông qua SCCM.

Tuyên bố miễn trừ trách nhiệm: Bản thân tôi chưa sử dụng SCCM và biết rất ít về nó, vì vậy tôi có thể sai về một số điều tinh tế ở trên.


0

Về mặt kỹ thuật, Windows có xu hướng tích hợp nhiều hơn giữa các chương trình (thông qua sổ đăng ký) so với Linux. Điều đó đòi hỏi một quá trình 'cài đặt' chính thức thay vì chỉ sao chép chương trình vào ổ cứng của bạn (ví dụ: để bật các menu ngữ cảnh). Một số HĐH (ví dụ Mac OS) sẽ thực hiện một số điều đó đằng sau hậu trường hoặc trong lần chạy đầu tiên, nhưng Windows thích biến nó thành một phần rõ ràng của cài đặt.

Về mặt phi kỹ thuật, Windows thích mô hình thiết lập và quên nó đi. Linux, ví dụ, có xu hướng không được thiết lập nhiều (tùy chọn cài đặt), nhưng bạn thường sử dụng cờ khi chạy chương trình - bởi vì bạn đã quen làm như vậy; hoặc bạn thay đổi tùy chọn khi bạn đang ở trong một chương trình. Windows thích trải nghiệm các tùy chọn thiết lập trong thời gian được chỉ định (cài đặt) và không mong muốn người dùng sử dụng cờ dòng lệnh hoặc đặt tùy chọn khác mỗi khi chương trình được chạy. Điều này làm giảm tính linh hoạt (vì bạn có thể sử dụng các cờ khác nhau mỗi lần), mặc dù điều này thường được đưa ra cho người dùng quyền lực (ví dụ: tùy chọn trong một phím tắt); nhưng cung cấp giao diện đơn giản hơn cho hầu hết người dùng và cho phép nhà phát triển trình bày cho người dùng giao diện sạch để đặt các tùy chọn và mặc định cần thiết.


0

Tuyên bố miễn trừ trách nhiệm: Đây phần lớn là suy đoán, tuy nhiên dựa trên kinh nghiệm của tôi về việc đóng gói các ứng dụng Windows để cài đặt và triển khai.

Tất cả đều theo tiêu chuẩn thực tế để cài đặt trên một nền tảng. Trên linux, tiêu chuẩn là sử dụng các công cụ quản lý gói như apt(dựa trên dpkg / Debian) hoặc yum(dựa trên vòng / phút / RedHat) để cài đặt. Một khi bạn đã cung cấp một gói để triển khai xây dựng, một trình hướng dẫn sẽ khá lãng phí thời gian vì đại đa số người dùng sẽ chỉ sử dụng gói đó (như là tiêu chuẩn).

Hội tụ trên Windows, tiêu chuẩn là cài đặt dựa trên GUI. Có những lựa chọn thay thế, tuy nhiên không có lựa chọn thay thế nào phù hợp như thay thế 100% cho trình cài đặt:

  • Có các công cụ quản lý gói (chẳng hạn như Chocolatey , tuy nhiên chưa có công cụ nào đạt đến mức quan trọng - nếu bạn chỉ cung cấp cài đặt dựa trên quản lý gói thì nhiều người dùng sẽ khó chịu khi họ cần cài đặt một số phần mềm khác chỉ để cài đặt chương trình (nghĩ về việc các trình quản lý tải xuống gây khó chịu như thế nào). Hầu hết các công cụ quản lý gói cũng được nhắm mục tiêu chắc chắn vào người dùng kỹ thuật, và vì vậy nếu phần mềm của bạn không dành cho cơ sở người dùng đó thì việc cung cấp gói cho Chocolatey sẽ hoàn toàn lãng phí thời gian như không ai sẽ sử dụng nó
  • Một số phần mềm phù hợp để triển khai XCopy, tuy nhiên điều này chỉ hoạt động đối với các sản phẩm phần mềm tương đối đơn giản. Nó tốt cho người dùng muốn cài đặt vào ổ đĩa flash (ví dụ), tuy nhiên đối với những người khác thì faff của nó. Do đó, nhiều dự án chọn phát hành tệp để cài đặt XCopy cũng cung cấp trình cài đặt.
  • Chocolatey cung cấp một đoạn dòng lệnh tải xuống và chạy cài đặt. Một lần nữa, trong khi nó nhanh chóng và hoạt động tốt cho người dùng kỹ thuật, người dùng không có kỹ thuật sẽ phải vật lộn và bị loại bỏ bởi phương pháp cài đặt này.

Nếu phần mềm của bạn đủ phức tạp để yêu cầu triển khai thì bắt buộc phải cung cấp cài đặt GUI như những gì người dùng mong đợi. Ngoài ra còn có một số sản phẩm giúp xây dựng các trình hướng dẫn này khá dễ dàng, do đó, việc cung cấp trình cài đặt dựa trên GUI thường là một trong những lựa chọn có nỗ lực thấp nhất về thời gian phát triển. Khi bạn có trình cài đặt dựa trên GUI, bạn cần đánh giá tỷ lệ lợi ích chi phí cho từng điều ở trên (hãy nhớ rằng những kỳ tích mới bắt đầu với âm 100 điểm) và đối với nhiều sản phẩm, đơn giản là không đáng để nỗ lực xây dựng và duy trì các lựa chọn thay thế này.

Lưu ý rằng các trình cài đặt với một số loại chế độ "im lặng" khá phổ biến trên Windows, tuy nhiên điều này có xu hướng không phải là chế độ mặc định - một lần nữa vì nó không phải là tiêu chuẩn. Hầu hết người dùng Windows sẽ tìm thấy một trình cài đặt ngay lập tức tự cài đặt ngay khi bạn chạy nó khá khó chịu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.