Giao diện người dùng đồ họa - Khoa Học Máy Tính tập 26 _ Tri thức nhân loại

Tri Thức
64 người theo dõi
6 Lượt xem video·27 thg 11, 2024
Giao diện người dùng đồ họa
Khóa học về khoa học máy tính
Tập 26
Chào mừng bạn đã tới với khóa học về khoa học máy tính của kênh Tri Thức Nhân Loại.
Chúng ta đã kết thúc tập trước với bản phát hành máy tính cá nhân Macintosh của Apple vào năm 1984.
Đây là chiếc máy tính đầu tiên mà một người bình thường có thể mua với giao diện người dùng đồ họa
và một con chuột để tương tác với nó.
Đây là một sự tiến hóa từ các giao diện dòng lệnh được tìm thấy trên tất cả các máy tính cá nhân khác của thời đại.
Thay vì phải nhớ hoặc đoán các lệnh phù hợp để nhập,
giao diện người dùng đồ họa hiển thị cho bạn những chức năng nào khả thi.
Bạn chỉ cần nhìn quanh màn hình để biết những gì bạn muốn làm.
Đó là giao diện di chuyển chuột và nhấp chuột.
Bỗng dưng, máy tính trực quan hơn nhiều.
Bất kỳ ai, không chỉ những người có sở thích hay các nhà khoa học máy tính đều có thể tự mình tìm ra mọi thứ.
Macintosh được cho là lấy giao diện người dùng đồ họa, còn được gọi là GUI, làm chủ đạo.
Trên thực tế, chúng là kết quả của nhiều thập kỷ nghiên cứu.
Trong các tập trước, chúng ta đã thảo luận về một số ứng dụng đồ họa tương tác ban đầu
như Sketchpad và Spacewar đều được sản xuất vào năm 1962.
Nhưng đây là những chương trình sử dụng một lần và không phải là toàn bộ trải nghiệm máy tính tích hợp.
Có thể cho rằng, cha đẻ thực sự của GUI hiện đại là Douglas Angelbart.
Trong Thế chiến thứ hai, trong khi Angelbart đóng quân ở Philippines
với tư cách là người điều hành radar, ông đã đọc bài báo của Vannevar Bush trên Mamex.
Những ý tưởng này đã truyền cảm hứng cho anh và khi kết thúc nghĩa vụ hải quân,
anh trở lại trường học, hoàn thành băng tiến sĩ vào năm 1955 tại UC Berkeley.
Tham gia rất nhiều vào lĩnh vực máy tính mới nổi, ông thu thập suy nghĩ của mình
trong một báo cáo năm 1962 có tiêu đề Tăng cường trí tuệ con người.
Angelbart tin rằng mức độ phức tạp của các vấn đề mà nhân loại phải đối mặt
đang phát triển nhanh hơn khả năng của chúng ta giải quyết chúng.
Do đó, việc tìm kiếm các cách thức để nâng cao trí tuệ của chúng ta
dường như vừa là mục tiêu cần thiết, vừa là mục tiêu mong muốn.
Ông thấy rằng máy tính có thể vừa hữu ích cho tự động hóa và vừa là công cụ tương tác
cần thiết cho các nhân viên trí thức trong tương lai để giải quyết các vấn đề phức tạp.
Lấy cảm hứng từ sketchpad được trình diễn gần đây của Ivan Sutherland,
Angelbart bắt đầu biến tầm nhìn của mình thành hiện thực,
tuyển dụng một nhóm để xây dựng hệ thống online.
Angelbart đã nhận ra rằng chỉ riêng bàn phím là không đủ
Và vào năm 1964, làm việc với đồng nghiệp Bill English,
ông đã tạo ra con chuột máy tính đầu tiên, dây điện từ phía dưới của thiết bị
và trông rất giống một loài gặm nhắm.
Năm 1968, Angelbart đã trình diễn toàn bộ hệ thống của mình
tại hội nghị máy tính mối mối mùa thu,
trong cái thường được gọi là mẹ của tất cả các bản demo.
Bản demo dài 90 phút và thể hiện nhiều tính năng của máy tính hiện đại,
đồ họa bitmap, hội nghị truyền hình, xử lý văn bản
và công tác dính sửa tài liệu theo thời gian thực.
Cũng có những tiền thân của GUI hiện đại,
như chuột và nhiều cửa sổ, mặc dù chúng không thể chồng lên nhau.
Nó đi trước thời đại, và giống như nhiều sản phẩm có nhãn đó,
cuối cùng nó đã thất bại, ít nhất là về mặt thương mại.
Nhưng ảnh hưởng của nó đối với các nhà nghiên cứu máy tính thời đó là rất lớn.
Angelbart đã được công nhận cho khoảnh khắc quan trọng này
trong lĩnh vực máy tính với giải thưởng Turing vào năm 1997.
Kinh phí liên bang bắt đầu giảm vào đầu những năm 1970
mà chúng ta đã thảo luận trong hai tập trước.
Vào thời điểm đó, nhiều người trong nhóm của Angelbart,
bao gồm cả Bill English rời đi và đến trung tâm nghiên cứu Palo Alto
mới được thành lập của Xerox, thường được gọi là Xerox PARC.
Chính tại đây, chiếc máy tính GUI thực sự đầu tiên đã được phát triển.
Xerox Alto hoàn thành vào năm 1973.
Để máy tính dễ sử dụng, nó cần nhiều thứ hơn là chỉ có đồ họa đẹp mắt.
Nó cần được xây dựng dựa trên một khái niệm mà mọi người đã quen thuộc
để họ có thể nhận ra ngay cách sử dụng giao diện mà không cần phải qua đào tạo.
Giải pháp của Xerox là coi màn hình 2D giống như mặt trên của bàn làm việc.
Đó là lý do người ta hay gọi nó là desktop.
Cũng giống như cách bạn có thể đặt nhiều giấy tờ trên bàn làm việc.
Người dùng có thể mở một số chương trình máy tính cùng một lúc.
Mỗi chương trình được chứa trong khung riêng của chúng,
cung cấp một cái nhìn vào ứng dụng được gọi là cửa sổ.
Cũng giống như giấy tờ trên bàn làm việc,
các cửa sổ này có thể chồng lên nhau, chè các chương trình phía sau chúng,
và có những phụ kiện trên bàn như calculator và đồng hồ.
Người dùng có thể đặt các phụ kiện này trên màn hình và di chuyển chúng xung quanh.
Tuy nhiên, nó không phải là một bảng sao chính xác của máy tính để bàn.
Thay vào đó, nó là một phép ứng dụ của máy tính để bàn.
Vì lý do này, nó được gọi là Desktop Metaphor.
Có nhiều cách để thiết kế giao diện như thế này,
nhưng nhóm Altair đã làm điều đó với cửa sổ, biểu tượng, menu và con trỏ.
Được gọi là giao diện WIMP.
Đó là thứ mà hầu hết các GUI trên máy tính để bàn sử dụng ngày nay.
Nó cũng cung cấp một bộ widget cơ bản,
các khối xây dựng đồ họa có thể tái sử dụng,
những thứ như nút, hộp kiểm, thanh trược và tab
cũng được vẽ từ các đối tượng trong thế giới thật để làm cho chúng quen thuộc.
Các ứng dụng GUI được xây dựng từ các tiện ít con này.
Vì vậy, hãy thử mã hóa một ví dụ đơn giản bằng cách sử dụng mô hình lập trình mới này.
Đầu tiên, chúng ta phải nói với hệ điều hành rằng
chúng ta cần một cửa sổ mới được tạo cho ứng dụng của mình.
Chúng ta thực hiện điều này thông qua API GUI.
Chúng ta cần xác định tên của cửa sổ và kích thước của nó,
giả sử 500x500px.
Bây giờ, hãy thêm một số tiện ít, hộp văn bản và một nút nhấn.
Các tiện ít này yêu cầu một vài tham số để tạo.
Đầu tiên, chúng ta cần chỉ định cửa sổ mà chúng sẽ xuất hiện,
vì các ứng dụng có thể có nhiều cửa sổ.
Chúng ta cũng cần chỉ định văn bản mặc định,
vị trí X và Y trong cửa sổ, chiều rộng và chiều cao.
Ok, giờ chúng ta đã có một thứ trông giống như một ứng dụng GUI,
nhưng không có chức năng.
Nếu bạn nhấp vào nút RAM, sẽ không có gì xảy ra.
Trong các ví dụ trước mà chúng ta đã thảo luận,
mã lệnh được thực thi từ trên xuống dưới.
Tuy nhiên, GUI sử dụng cái gọi là lập trình hướng sự kiện.
Mã lệnh có thể được kích hoạt bất kỳ lúc nào
và theo các thứ tự khác nhau để đáp ứng các sự kiện.
Trong trường hợp này, đó là các sự kiện do người dùng điều khiển,
chẳng hạn như nhấp vào nút, chọn một menu hoặc kéo cửa sổ lên xuống, v.v.
Giả sử khi người dùng nhấp vào nút RAM,
chúng ta muốn tạo ngẫu nhiên một số từ 1 đến 20,
sau đó hiển thị giá trị đó trong hộp văn bản của chúng ta.
Chúng ta có thể viết một hàm thực hiện điều đó.
Chúng ta thậm chí có thể thêm một chút gia vị
và nói rằng nếu chúng ta nhận được số 20,
hãy đặt màu nền của cửa sổ thành màu đỏ.
Điều cuối cùng chúng ta cần làm là kết nối mã này
để nó được kích hoạt mỗi khi nút của chúng ta được nhấp.
Để thực hiện việc này, chúng ta cần chỉ định rằng
hàm của chúng ta xử lý sự kiện này cho nút của chúng ta
bằng cách thêm một dòng lệnh vào hàm khởi tạo của chúng ta.
Loại sự kiện trong trường hợp này là sự kiện nhấp chuột
và hàm của chúng ta là trên xử lý sự kiện cho sự kiện đó.
Bây giờ, chúng ta đã hoàn thành.
Chúng ta có thể nhấp vào nút đó cả ngày
và mỗi lần hàm ROM D20 của chúng ta được điều động và thực thi.
Đây chính xác là những gì đang diễn ra đằng sau hậu trường
khi bạn nhấn vào nút nhỏ in đậm trong trình chỉnh sửa văn bản
hoặc chọn tắt từ menu thả xuống.
Một chức năng được liên kết với sự kiện đó đang kích hoạt.
Ok, quay lại với Xerox Altos.
Khoảng 2.000 chiếc Altos đã được sản xuất
và được sử dụng tại Xerox
và được trao cho các phòng thí nghiệm của trường đại học.
Chúng không bao giờ được bán thương mại.
Thay vào đó, nhóm Park tiếp tục tinh chỉnh phần cứng và phần mềm
mà đỉnh cao là hệ thống Xerox Star
được phát hành vào năm 1981.
Xerox Star mở rộng Desktop Metaphor.
Giờ đây, các tập tin trông giống như những mẫu giấy
và chúng có thể được lưu trữ trong các thư mục nhỏ.
Tất cả đều có thể nằm trên màn hình của bạn
hoặc được cất vào tủ hồ sơ chỉ thuật số.
Đó là một phép ẩn dụ nằm trên đầu của hệ thống tập tin cơ bản.
Từ góc độ người dùng, đây là một cấp độ trừ từng mới.
Xerox đang kinh doanh máy in
cũng có các công cụ tạo văn bản và đồ họa tiên tiến.
Ví dụ, họ đã giới thiệu các gọc ngữ
cắt, sao chép và dán.
Phép ẩn dụ này được rút ra từ cách
mọi người xử lý việc chỉnh sửa tài liệu
được biết trên máy đánh chữ.
Theo đúng nghĩa đen, bạn sẽ cắt văn bản bằng kéo
sau đó dán nó bằng keo vào vị trí bạn muốn trong một tài liệu khác.
Sau đó, bạn sẽ sao chép tràn để làm phẳng nó trở lại
thành một lớp duy nhất
làm cho sự thay đổi không bị nhìn thấy.
Quá trình thủ công này đã được tranh luận
với sự ra đời của phần mềm xử lý văn bản
tồn tại trên các nền tảng như Apple II và Commodore PET.
Nhưng Xerox đã vượt xa đối thủ với ý tưởng rằng
bất cứ thứ gì bạn tạo ra trên máy tính
sẽ giống hệt như phiên bản thế giới thật
nếu bạn in nó ra.
Họ gọi đây là
Thật không may, giống như hệ thống online của AngelBard.
Mặc dù Xerox Star đã đi trước thời đại
nhưng doanh số bán hàng chậm chạp
vì nó có giá tương đương gần 200.000 đô la ngày nay
cho một thiết lập văn phòng.
Tình hình càng trở nên tệ hơn
khi IBM PC ra mắt cùng năm đó.
Sau đó là cơn sóng thần của các dòng PC giá rẻ
tương thích với IBM.
Nhưng những ý tưởng tuyệt vời
mà các nhà nghiên cứu Park đã ấp ủ
và xây dựng trong gần một thập kỷ
đã không bị lãng phí.
Vào tháng 12 năm 1979
một năm rưỡi trước khi Xerox Star xuất xưởng
một người mà bạn có thể đã từng nghe nói đến
đã ghé thăm.
Đó chính là Steve Jobs.
Có rất nhiều truyền thuyết xung quanh chuyến thăm này
với nhiều ý kiến cho rằng
Steve Jobs và Apple đã đánh cắp
ý tưởng của Xerox.
Nhưng điều đó đơn giản là không đúng.
Trên thực tế, Xerox đã tiếp cận Apple
với hy vọng được hợp tác với họ.
Cuối cùng, Xerox đã có thể mua
một triệu đô la cổ phần của Apple
trước khi nó được IPO.
Đổi lại, Xerox phải tiết lộ
mọi thứ thú vị đang diễn ra tại Xerox Park.
Steve biết
họ có một số bộ óc vĩ đại nhất
trong lĩnh vực máy tính.
Nhưng ông ấy đã không chuẩn bị cho những gì mình thấy.
Đã có một cuộc trình diễn về giao diện
người dùng đồ họa của Xerox
chạy trên màn hình bitmap, sắt nét.
Tất cả đều được điều kiện
bằng đầu vào chuột rất trực quan.
Steve sau đó đã nói
Nó giống như một tấm màn được vén lên
khỏi mắt tôi. Tôi có thể nhìn thấy
tương lai của những gì máy tính được định sẵn.
Steve trở lại Apple
cùng với đoàn tùy tùn kỹ sư của mình.
Và họ phải làm việc
để phát minh ra các tính năng mới
như thanh menu và thùng rác
để lưu trữ các tập tin cần xóa.
Nó thậm chí sẽ phình ra khi đầy.
Đó là một lần nữa với các phép ẩn dụ.
Sản phẩm đầu tiên
của Apple có giao diện người dùng
đồ họa và chuột là Apple Lisa
được phát hành vào năm 1983.
Đây là một chiếc máy
siêu tiền tiến với mức giá siêu cao cấp
gần 25.000 đô la ngày nay.
Giá đó rẻ hơn
đáng kể so với Xerox Star
nhưng nó lại là một thất bại
tương đương trên thị trường.
May mắn thay, Apple có một dự ẩn khác.
Macintosh được phát hành
một năm sau đó, vào năm 1984.
Nó có giá khoảng
26.000 đô la ngày nay,
một phần tư giá của Lisa.
Và nó đã đạt mốc, bán được
70.000 chiếc trong 100 ngày đầu tiên.
Nhưng sau cần xốt ban đầu,
doanh số bán hàng bắt đầu chững lại
và Apple đang bán nhiều máy tính
Apple II hơn máy Mac.
Một vấn đề lớn là không ai
làm phần mềm cho chiếc máy mới này
với giao diện hoàn toàn mới của nó
và điều đó đã khiến nó trở nên tồi tệ hơn.
Sự cạnh tranh bắt kịp nhanh chóng.
Chẳng bao lâu, các máy tính cá nhân khác
có giao diện người dùng đồ họa thô sơ
nhưng có thể sử dụng được trên máy tính
chỉ bằng một phần chi phí.
Người tiêu dung đã ăn nó
và các nhà phát triển phần mềm PC cũng vậy.
Với tình hình tài chính của Apple
ngày càng xuống dốc
và căng thẳng ngày càng gia tăng
với giám đốc điều hành mới của Apple
George Scully, Steve Jobs đã bị lập đổ.
Vài tháng sau, Microsoft phát hành
Windows 1.0.
Nó có thể không đẹp như macOS
nhưng nó là chiếc sun war đầu tiên
trong thứ sẽ trở thành đối thủ gầy gách
và gần như thống trị ngành của Microsoft.
Trong vòng 10 năm
Microsoft Windows
đã chạy trên gần 95% máy tính cá nhân.
Ban đầu,
những người hâm mộ macOS
có thể yêu cầu đồ họa vượt trội
và dễ sử dụng.
Các viên bản Windows đầu tiên đó
đều được xây dựng trên nền DOS
vốn chưa bao giờ được thiết kế để chạy GUI.
Tuy nhiên, sau Windows 3.1
Microsoft bắt đầu phát triển
một hệ điều hành hướng đến người tiêu dùng mới
với GUI được nâng cấp
có tên là Windows 95.
Đây là một phiên bản được biết lại đáng kể
để cung cấp nhiều thứ hơn
là chỉ đồ họa bóng bẫy.
Phiên bản này có những tính năng
mà macOS không có,
đó là chương trình đa nhiệm và bộ nhớ được bảo vệ.
Windows 95
đã giới thiệu nhiều yếu tố GUI
vẫn được thấy trong các phiên bản Windows ngày nay
như Menu Start,
hành tác vụ và trình quản lý tập tin
Mặc dù vậy, Microsoft vẫn tìm cách
làm cho phép ẩn dụ trên máy tính
để bạn trở nên dễ dàng và thân thiện hơn.
Họ đã làm việc trên một sản phẩm
có tên là Microsoft Box
và nó đã đưa ý tưởng sử dụng phép ẩn dụ
lên một mức độ cao mới.
Giờ đây, bạn đã có cả
một căn phòng ảo trên màn hình của mình
với các ứng dụng được thể hiện
dưới dạng đồ vật mà bạn có thể đặt
trên bàn và kệ.
Bạn có thể đến các phòng khác nhau
trong máy tính của bạn
nơi có các ứng dụng khác nhau.
Đây là một ví dụ tuyệt vời
về cách giao diện người dùng
mà chúng ta rất yêu thích ngày nay.
Đó là sản phẩm của những gì
về cơ bản là sự chọn lọc tự nhiên.
Cho dù bạn đang chạy Windows, Mac, Linux
hay một số GUI
dành cho máy tính để bàn khác,
gần như chắc chắn đây là phiên bản
phát triển của mô hình game
được giới thiệu lần đầu tiên trên Xerox Auto.
Trên đường đi,
rất nhiều ý tưởng tồi đã được thử nghiệm
và thất bại.
Mọi thứ phải được phát minh, thử nghiệm,
tinh chế, thông qua hoặc loại bỏ.
Ngày nay,
GUI có ở thấp mọi nơi
và mặc dù chúng tốt,
nhưng không phải lúc nào chúng cũng tuyệt vời.
Không nghi ngờ gì nữa,
bạn đã gặp phải những thất vọng liên quan đến thiết kế
sau khi tại số ứng dụng,
sử dụng điện thoại của người khác
hoặc duy cập một trang web.
Và vì lý do này, các nhà khoa học máy tính
và nhà thiết kế giao diện
tiếp tục làm việc chăm chỉ
để tạo ra trải nghiệm máy tính dễ dàng hơn
và mạnh mẽ hơn.
Cuối cùng, hướng tới tầm nhìn của AngelBot
về việc nâng cao trí tuệ con người.
Tôi rất muốn được chia sẻ
về nhiều kiến thức khác nhau.
Hãy nhấn vào các video xuất hiện
trên màn hình hiện tại
và tôi sẽ gặp bạn ở đó.
Xin cảm ơn vì đã xem đoạn phim này
và nếu thấy thông tin hữu ích
thì vui lòng nhấn thích và đăng ký
ở bên dưới nhằm khuyến khích kênh
tạo thêm nhiều phim khác.
