Đánh giá Universal windows platform ( uwp là gì ? là chủ đề trong nội dung hiện tại của Kí tự đặc biệt Daothap.vn. Tham khảo content để biết đầy đủ nhé.
Bạn đang xem: Uwp là gì
Universal Windows Platform (UWP) là gì và nó ảnh hưởng tới tương lai của Windows 10 ra sao?
Xem thêm: Đức tính nhân bản là gì ? nghĩa của từ nhân bản trong tiếng việt
Suốt hội nghị BUILD 2016 chúng ta nghe Microsoft nói rất nhiều về thứ gọi là Universal Platform, còn có tên viết tắt là Universal Windows Platform (UWP). Đây là một nền tảng cốt lõi của Windows 10 giúp các ứng dụng thực hiện được những tính năng của mình, và điểm hay nhất nằm ở chỗ UWP sẽ hoạt động thống nhất trên tất cả mọi thiết bị nào có khả năng chạy Windows 10, từ điện thoại, máy tính bảng, PC cho đến HoloLens và Xbox. Nếu không có UWP thì sẽ không có các app universal cho chúng ta xài, và Microsoft cũng khó mà thực hiện được chiến lược “One Windows” của họ đối với hệ sinh thái Windows 10. Trong bài này xin giới thiệu với anh em kĩ hơn về UWP sau khi mình có dịp làm việc với nó, cũng như ý nghĩa của việc chuyển thể các app Win32 cũ thành UWP đối với cả người dùng chúng ta, nhà phát triển lẫn Microsoft.
1. Universal Windows Platform là gì?
Đây là một nền tảng chứa các tính năng mà Windows 10 “phơi” ra cho các ứng dụng chui vào sử dụng, ví dụ như khả năng truy cập mạng, khả năng truy cập xuống bộ nhớ lưu trữ của máy, khả năng xử lý tập tin, khả năng chơi âm thanh, khả năng phát video, khả năng dựng đồ họa xài cho game… Chúng ta có thể xem UWP như là một lớp bên dưới và các ứng dụng universal sẽ được xây dựng dựa trên lớp này.
Điểm tuyệt vời nhất của UWP đó là các bộ tính năng mà nó cung cấp cho app sẽ giống nhau ở tất cả mọi thiết bị chạy Windows 10 và có thể là Windows 11, 12 gì đó trong tương lai. Sự giống nhau này bao gồm việc chỉ có một bộ hàm API giống nhau, một định dạng app như nhau (đuôi *.appx), và ở cấp cao hơn là chỉ có 1 cửa hàng duy nhất để phân phối các app universal. Tất nhiên bạn sẽ cần chỉnh lại giao diện cho phù hợp và dễ dùng, nhưng về cơ bản chỉ cần bạn bật cho máy nào thì máy đó sẽ chạy được app của bạn.
Lấy ví dụ đơn giản như thế này: app Dropbox Windows 10 cho PC, cho mobile và cho Xbox đều chỉ xài chung một cách thức kết nối với máy chủ, chung một cách download file và lưu vào máy của bạn, chung một cách play các file nhạc và video. App cho PC, mobile hay Xbox thì cũng đều có đuôi là appx, và chúng đều được phân phối qua Windows Store mà thôi.
Xem thêm: Torque Là Gì – Nghĩa Của Từ Torque
Điều này giúp đơn giản hóa quá trình viết app của các lập trình viên, dẫn đến việc app sẽ ra mắt nhanh hơn, update nhanh hơn, tiết kiệm chi phí và nhân lực. Nó cũng ảnh hưởng lớn đến trải nghiệm người dùng, tức là khi xài app Dropbox trên Windows 10 PC hay Mobile gì thì anh em cũng thấy được giao diện tương tự như nhau, cách xài như nhau, cách kết nối như nhau, anh em không cần phải học lại cách sử dụng từ đầu.
Song song đó, UWP cũng có những tính năng mở rộng riêng cho từng loại thiết bị và Microsoft gọi nó là các Extension SDK và hàm API chuyên biệt. Ví dụ, Extension SDK cho HoloLens sẽ bổ sung thêm tính năng điều khiển bằng cử chỉ cho app, thứ mà máy tính hay điện thoại không có. Extension SDK cho Xbox sẽ có thêm khả năng truy cập và sử dụng cảm biến Kinect để nhận biết chuyển động của bạn. Bằng cách này, các nhà phát triển có thể dễ dàng tùy biến riêng tính năng cho từng loại máy mà không “đụng chạm” tới phần chung của app.
2. Ứng dụng Universal vs Ứng dụng Win32
Win32 là một nền tảng lâu đời của Windows. Chúng được sử dụng để làm ra các app desktop truyền thống, và cũng là nơi cung cấp những tính năng như truy cập mạng, đọc ghi dữ liệu lên đĩa cứng, phát âm thanh, play video, khả năng xây dựng hình ảnh đồ họa, vẽ ra các nút bấm, thanh cuộn và những thành phần giao diện người dùng… Win32 là một platform đã xuất hiện từ những bản Windows NT đầu tiên, và đặc điểm của những ứng dụng Win32 đó là nó sử dụng đuôi *.exe. Hiện tại Win32 vẫn có mặt đầy đủ trong Windows 10 trên máy tính. Có một số thứ khác gọi là COM và .NET, chúng cũng là các bộ khung theo kiểu Win32 để giúp các phần mềm hoạt động nhưng ở đây chúng ta cứ gọi chung là Win32 cho gọn và dễ hiểu. Các app Win32 có thể chạy được trên cả Windows 10 lẫn các bản Windows cũ hơn, trong khi app UWP thì chỉ có Windows 10 mà thôi.
Một vài ví dụ của app Win32 cho anh em dễ hình dung: Adobe CC (Photoshop, Premier Pro, Illustrator, InDesign…), Word, Excel, PowerPoint 2016 hoặc 2013 trở về trước, Internet Explorer, Chrome, Firefox, WinRAR. Nhiều game mà anh em đang chơi trên PC cũng được viết bằng Win32. Ngay cả Visual Studio, công cụ do Microsoft cung cấp cho các lập trình viên để viết app (có cả app universal trong đó), cũng đang hoạt động bằng Win32, COM và .NET.
Nghe qua thì có vẻ như Win32 có chức năng rất giống với UWP. Đúng, rất giống, trừ việc chúng đã cũ. Win32 cũng chỉ có mặt trên máy tính là chủ yếu, trên những loại thiết bị khác như Xbox, HoloLens thì chúng không đầy đủ. Điểm đáng chú ý nhất đó là các ứng dụng Win32 viết cho máy tính không thể đem sang chạy điện thoại hay các loại thiết bị khác chạy Windows 10 ngay cả khi bạn đã chỉnh lại giao diện cho nó. Ví dụ dễ thấy: Chrome, Firefox đâu có chạy được trên Windows Phone, cũng chẳng chạy được trên HoloLens hay Xbox vì chúng chỉ chấp nhận universal app mà thôi. Ứng dụng Win32 khi đó sẽ không thể tận dụng được hết sức mạnh mà UWP mang lại.
Bạn cũng không được phép đưa app Win32 lên Windows Store, hạn chế việc tiếp cận đến người dùng hơn. Với những công ty lớn như Google, Adobe hay chính Microsoft thì chuyện này không khó, nhưng với các lập trình viên đơn lẻ thì đây là chuyện cực kì vất và. Họ không có một nơi tập trung để “khoe” và để phân phối app, mọi thứ phải làm thủ công hết nên rất cực, tốn thời gian.
Nhưng anh em hiểu nhầm rằng Universal sẽ thay thế cho Win32 / COM / .NET. Microsoft chưa hề nói gì tới điều này, và chắc chắn rằng Win32 sẽ không sớm mất đi bởi còn rất rất rất rất nhiều ứng dụng trên thế giới đang được viết dựa trên Win32. Nhiều phần mềm dùng cho các doanh nghiệp, hệ thống quản lý sản xuất, giải pháp quản lý nguồn lực doanh nghiệp, cơ sở dữ liệu, phần mềm thiết kế, làm phim, chỉnh ảnh… cũng còn chạy trên Win32 và sẽ cần rất nhiều thời gian nữa thì mới chuyển được hết sang UWP. Mình nghĩ rằng ít nhất trong khoảng 5-7 năm tới thì Win32 vẫn còn đó mà thôi, Microsoft chắc chắn không muốn bỏ ngang và khiến các khách hàng của mình tức giận.
3. Ý nghĩa của việc chuyển thể app Win32 sang Universal
Ở BUILD 2016, Microsoft đã phát hành công cụ giúp các nhà phát triển nhanh chóng chuyển ứng dụng viết trên Win32, COM và .NET của họ thành app universal trong nháy mắt (Project Centennial) . Chỉ với vài dòng lệnh, một app chỉ chạy được trên desktop giờ sẽ tương thích đầy đủ với mọi loại thiết bị, miễn có UWP là chơi hết, thậm chí còn chạy được trên cả các thiết bị IoT như tủ lạnh, TV hay thùng máy ATM chẳng hạn. Lập trình viên chỉ cần chỉnh sửa lại rất ít hoặc thậm chí không cần chỉnh mã nguồn để ứng dụng có thể hoạt động được, một tin vui với những công ty đang phải duy trì những phần mềm lớn.
Nó còn tận dụng được tất cả mọi tính năng mà UWP cung cấp y hệt như một app universal được viết mới từ đầu. Hiện tại hầu hết tính năng mà UWP có thì Win32 cũng có nên về mặt chức năng thì tạm xem là như nhau, nhưng biết đâu trong tương lai Microsoft sẽ bổ sung những thứ gì đó mới mẻ hơn, mạnh hơn và dễ sử dụng hơn thì sao. Mà đâu cần tương lai gì cho xa, trong bản Windows 10 Anniversary Update ra mắt mùa hè này, UWP có thêm chức năng xài bút (Windows Ink) để viết vẽ lung tung, trong khi Win32 đâu có và cũng không thể truy cập vào mà xài.
Lợi ích thứ ba của việc chuyển thể app Win32 sang universal đó là các lập trình viên có thể đăng tải ứng dụng của mình lên Windows Store. Như đã nói ở trên, việc này sẽ giúp tiết kiệm được nhiều thời gian, chi phí về việc quảng bá, phân phối app đến tay người dùng. Một khi đã lên Store rồi thì còn được cơ hội review bởi người dùng, nhận các phản hồi để cải thiện sản phẩm, kiếm thêm tiền dựa trên hệ thống quảng cáo hoặc In-app purchase, hay được Microsoft bình chọn là app nổi bật và cho ra trang chủ của Windows Store chẳng hạn.
Với Microsoft, công cụ chuyển thể này cũng rất quan trọng cho chiến lược One Windows. Hãng đang muốn thống nhất mọi thứ để đơn giản hóa việc phát triển và bảo dưỡng cho cả mình lẫn các nhà phát triển, như vậy thì khi có nâng cấp hay thay đổi gì thì mọi người sẽ được hưởng lợi ngay lập tức, không cần phải chờ đợi hay viết lại phần mềm từ đầu. Việc bảo trì, sửa lỗi cũng dễ hơn, thống nhất hơn, nhanh chóng hơn. Hãng cũng tốn ít chi phí hơn cho những việc này, tiết kiệm tiền, tức là lợi nhuận cao hơn.
Tiếp tục nói ví dụ cho anh em dễ hình dung: giả sử Microsoft cải thiện tính năng đọc ghi dữ liệu của UWP để giúp app lưu file nhanh hơn, khi đó chỉ cần hãng update Windows 10 một phát là bất kì app universal nào cũng được hưởng ngay tốc độ nhanh đó, lập trình viên chẳng phải làm gì cả. Thay đổi đó cũng sẽ có cho cả PC, mobile, tablet, Xbox, HoloLens, Surface Hub và các máy IoT. Người dùng bình thường như mình và anh em Tinh tế cũng được hưởng lợi tức thì, không cần phải chờ bản update sau của app.
Nói tóm lại, UWP là một thành phần cực kì quan trọng cho tương lai của Microsoft. Nó cũng có thể làm mồi cho việc vực dậy Windows 10 Mobile mà mình đã nói đến trong bài này. UWP sẽ giúp ích cho cả Microsoft, các lập trình viên viết app Windows, và cho cả người dùng chúng ta. Nhờ có UWP, chúng ta sẽ có các app tốt để xài nhanh hơn, được update dễ dàng hơn và thống nhất trên nhiều thiết bị khác nhau. Thời đại của UWP đã bắt đầu!
Chuyên mục: Hỏi Đáp