Windows Fd Developder Foundation hoặc wpf – là một nền tảng cho phép các nhà phát triển tạo các ứng dụng trên nền tảng khung .NET nói chung của Windows. Bạn cũng có thể gọi WPF là GUI khung. Nó được sinh ra sau Khi Wenfu, nó là tốt hơn so với người tiền nhiệm của mình trong tất cả các khía cạnh.
WPF là gì?
WPF là gì?
WPF, viết tắt của Windows Fdgy Foundation, là một hệ thống API mới hỗ trợ xây dựng giao diện đồ họa trên nền tảng Windows. Là thế hệ tiếp theo của WinForms, WPF tăng cường khả năng lập trình giao diện của lập trình viên bằng cách cung cấp các API tận dụng lợi thế đa phương tiện hiện đại. Là một phần của khung .NET 3.0, WPF có sẵn trong Windows Vista và Windows Server 2008. WPF cũng có thể hoạt động trong bối cảnh Windows XP Gói 2 trở lên, cũng như Windows Server 2003.
WPF là gì?
WPF được xây dựng cho ba mục tiêu cơ bản:
- cung cấp một nền tảng thống nhất để xây dựng giao diện người dùng;
- Làm cho nó dễ dàng cho các lập trình viên và nhà thiết kế giao diện để làm việc cùng nhau;
- Cung cấp một công nghệ phổ biến để xây dựng giao diện người dùng trên Windows và trình duyệt web.
2. Xây dựng một nền tảng thống nhất cho giao diện người dùng
Trước khi WPF ra mắt, việc tạo ra một giao diện người dùng theo các yêu cầu được mô tả trong ví dụ trên đòi hỏi nhiều kỹ thuật khác nhau. Để tạo biểu mẫu, điều khiển và các tính năng cổ điển khác của giao diện đồ họa Windows, thông thường các lập trình viên sẽ chọn diễn đàn cửa sổ, đó là. Một phần của khuôn khổ NET. Nếu bạn cần hiển thị văn bản, Windows Forms có một số tính năng hỗ trợ văn bản trực tiếp hoặc bạn có thể sử dụng PDF của Adobe để hiển thị văn bản ở định dạng cố định.
Đối với hình ảnh và đồ họa hai chiều, lập trình viên sẽ sử dụng GDI+, một mô hình lập trình riêng biệt có thể truy cập thông qua Windows Forms. Để hiển thị video hoặc phát âm thanh, lập trình viên phải sử dụng Windows Media Player một lần nữa, và đối với đồ họa 3D, anh ta phải sử dụng Direct3D, một thành phần tiêu chuẩn khác của cửa sổ. Tóm lại, quá trình phát triển giao diện người dùng theo yêu cầu trở nên phức tạp và đòi hỏi quá nhiều kỹ năng kỹ thuật của lập trình viên.
WPF
WPF là một giải pháp toàn diện để giải quyết tất cả các vấn đề kỹ thuật được mô phức thẳng, nói cách khác, WPF cung cấp một loạt các tính năng lập trình giao diện trong cùng một công nghệ, làm cho quá trình tạo giao diện người dùng dễ dàng hơn.
Hình ảnh sau đây cho thấy giao diện quản lý và theo dõi bệnh nhân, bao gồm hình ảnh, kết cấu, đồ họa hai chiều / 3D và nhiều thông tin trực quan khác. Tất cả điều này được tạo ra bằng WPF – lập trình viên có thể sử dụng các chuyên môn như GDI + hoặc 3D trực tiếp mà không cần viết mã.
Tuy nhiên, sự ra đời của WPF không có nghĩa là tất cả các công nghệ trên đã được thay thế. Diễn đàn cửa sổ vẫn hoạt động và một số ứng dụng mới sẽ sử dụng diễn đàn cửa sổ ngay cả trong WPF. Windows Media Player vẫn hoạt động như một công cụ độc lập để phát trình chiếu nhạc và video. PDF của văn bản vẫn đang tiếp tục được sử dụng. Direct3D vẫn là một công nghệ quan trọng trong trò chơi và các ứng dụng khác (trên thực tế, WPF chính nó thực hiện mọi hiệu suất đồ họa dựa trên Direct3D).
Tạo ra một giao diện người dùng hiện đại không chỉ là sự kết hợp của một loạt các công nghệ hiện có. Nó cũng được thể hiện trong việc tận dụng lợi thế của card đồ họa hiện đại. Để giải phóng giới hạn đồ họa Bitmap, WPF hoàn toàn dựa trên đồ họa vector, cho phép hình ảnh tự động thay đổi kích thước để phù hợp với kích thước và độ phân giải của màn hình mà nó hiển thị.
WPF đơn giản hóa đáng kể công việc của các lập trình viên giao diện bằng cách kết hợp tất cả các công nghệ cần thiết để tạo giao diện người dùng vào một nền tảng duy nhất. Bằng cách yêu cầu các lập trình viên học một môi trường phát triển độc đáo, WPF giúp giảm chi phí xây dựng và bảo trì ứng dụng. Bằng cách tích hợp các biểu thức thông tin khác nhau vào giao diện người dùng, WPF giúp cải thiện chất lượng, nhận ra giá trị công việc của cách người dùng tương tác với các ứng dụng trên Windows.
3. Khả năng cộng tác giữa các nhà thiết kế và lập trình viên
Trên thực tế, việc xây dựng một giao diện người dùng phức tạp, chẳng hạn như các ví dụ về các ứng dụng quản lý bệnh nhân được mô phẳng, đòi hỏi các kỹ năng hiếm hoi mà các lập trình viên đơn giản hiếm khi thấy, mà chỉ có thể được tìm thấy trong các nhà thiết kế giao diện chuyên nghiệp. Nhưng câu hỏi đặt ra là, làm thế nào để các nhà thiết kế và lập trình viên làm việc cùng nhau?
Thông thường, các nhà thiết kế giao diện sử dụng các công cụ đồ họa để tạo ra hình ảnh tĩnh về bố cục giao diện trên màn hình. Những hình ảnh này sau đó được chuyển đến lập trình viên với nhiệm vụ tạo mã chương trình để đạt được giao diện của thiết kế. Đôi khi vẽ một giao diện rất đơn giản cho các nhà thiết kế, nhưng nó có thể khó khăn hoặc không thể cho các lập trình viên.
Hạn chế kỹ thuật, áp lực tiến độ, thiếu kỹ năng, hiểu lầm hoặc chỉ đơn giản là bất đồng quan điểm có thể khiến các lập trình viên không thể đáp ứng đầy đủ các yêu cầu của nhà thiết kế. Do đó, những gì cần thiết ở đây là cách hai nhóm làm việc riêng biệt làm việc cùng nhau mà không thay đổi chất lượng giao diện thiết kế.
Để đạt được điều này, WPF đã giới thiệu ngôn ngữ mô tả cho ngôn ngữ ứng dụng điện tử (XAML). XAML xác định một tập hợp các thành phần XML như Barton, TextBox, Tab, v.v. để xác định các đối tượng đồ họa tương ứng, chẳng hạn như nút, hộp thoại, nhãn, v.v. để mô tả chính xác giao diện người dùng trông như thế nào. Các thành phần XAML cũng chứa các thuộc tính cho phép thiết lập một số thuộc tính khác nhau tương ứng với các đối tượng đồ họa.
Ví dụ: đoạn mã sau đây sẽ tạo nút màu đỏ Nhấp vào tôi:
Mỗi thành phần XAML tương ứng với lớp WPF, mỗi thuộc tính tương ứng với thuộc tính hoặc sự kiện của lớp đó. Ví dụ: các nút màu đỏ trong ví dụ trên có thể được tạo ra bằng cách sử dụng mã C#:
Patton btn = New Barton (); btn。 Bối cảnh = Brushes.Red; btn. Content = “Click me”;
Nếu mọi thứ có thể được thực hiện với XAML hoặc với một đoạn mã, câu hỏi đặt ra là XAML có nghĩa là gì? Câu trả lời là sử dụng XML để xây dựng các công cụ sinh học và đặc điểm kỹ thuật sử dụng dễ dàng hơn nhiều so với xây dựng các công cụ tương tự như đoạn mã. Do đó, XAML cung cấp một cách tiếp cận tốt hơn cho các lập trình viên và nhà thiết kế. Hình ảnh sau đây minh họa quá trình này.
nhà thiết kế có thể mô tả và tương tác với giao diện người dùng thông qua các công cụ như Microsoft Fast Interactive Designer. Công cụ này chỉ tập trung vào việc xác định giao diện và cảm giác cho giao diện đồ họa WPF, tạo ra mô tả giao diện được thể hiện thông qua ngôn ngữ XAML. Lập trình viên sau đó nhập mô tả XML vào môi trường lập trình, chẳng hạn như Microsoft Vision Studios.
Thay vì các lập trình viên phải tái tạo giao diện từ đầu dựa trên hình ảnh tĩnh được cung cấp bởi các nhà thiết kế, bản thân các phân đoạn XAML này sẽ được biên dịch bởi Microsoft Vision Studios để tái tạo như một giao diện đồ họa phù hợp với mô tả. Lập trình viên chỉ tập trung vào việc viết mã lập trình cho các giao diện được tạo ra, chẳng hạn như xử lý các sự kiện dựa trên chức năng được thiết lập bởi ứng dụng.
Cho phép các nhà thiết kế và lập trình viên thực hiện công việc chung này sẽ hạn chế các lỗi xảy ra khi giao diện được thực hiện từ thiết kế. Ngoài ra, nó cho phép hai nhóm làm việc làm việc song song, rút ngắn mọi bước lặp lại trong quá trình phát triển phần mềm và đáp ứng tốt hơn. Vì cả hai môi trường đều có thể hiểu và sử dụng XAML, các ứng dụng WPF có thể chuyển đổi qua lại giữa hai môi trường phát triển để sửa đổi hoặc thêm giao diện. Với tất cả những lợi thế này, vai trò của các nhà thiết kế trong việc xây dựng giao diện được đặt lên hàng đầu.
4. Công nghệ phổ biến cho giao diện Windows và trình duyệt web
Trong thời đại bùng nổ Internet, các ứng dụng web đang phát triển. Được trang bị giao diện người dùng đầy đủ chức năng như một ứng dụng dành cho máy tính để bàn sẽ thu hút nhiều người dùng hơn; Điều này sẽ giúp tăng giá trị doanh nghiệp. Tuy nhiên, như đã nêu trong phần đầu tiên, việc sử dụng các kỹ thuật truyền thống để phát triển một giao diện đồ họa, cả trên máy tính để bàn và trên trình duyệt web, đòi hỏi phải sử dụng các kỹ thuật hoàn toàn khác nhau, giống như xây dựng hai giao diện hoàn toàn độc lập. Điều này tạo ra chi phí phát triển giao diện.
WPF là giải pháp cho vấn đề này. Lập trình viên có thể sử dụng WPF chạy trên phần mở rộng Internet để tạo ra các ứng dụng trình duyệt XAML (XBAP). Trong thực tế, đoạn mã này có thể được sử dụng cho các ứng dụng WPF chạy độc lập trên Windows. Hình 01 minh họa các ứng dụng dịch vụ tài chính như một ứng dụng WPF độc lập. Trong khi đó, Hình 02 minh họa giao diện của cùng một ứng dụng chạy trên Internet dưới dạng XBAP.
01
Như
được mô tả trong Hình 02, giao diện của ứng dụng XBAP được chia thành khung hình bởi trình duyệt thay vì chạy trong một cửa sổ riêng biệt, ngoài ra, các tính năng được giữ lại. Cùng một đoạn mã được sử dụng cùng nhau trong cả hai trường hợp sẽ làm giảm khối lượng công việc cần thiết để phát triển cả hai giao diện. Ngoài ra, sử dụng cùng một mã cũng có nghĩa là sử dụng cùng một kỹ năng lập trình viên.
Do đó, các lập trình viên chỉ cần tìm hiểu kiến thức chung và có thể sử dụng nó trong cả hai trường hợp. Một lợi thế khác của việc chia sẻ Windows và công nghệ giao diện web là các nhà xây dựng ứng dụng không nhất thiết phải quyết định trước giao diện nào để sử dụng. Miễn là khách hàng đáp ứng các yêu cầu hệ thống để chạy XBAP, các ứng dụng có thể cung cấp giao diện Windows và giao diện web, chỉ sử dụng hầu hết các đoạn mã giống hệt nhau.
Mỗi ứng dụng XBAP được tải xuống khi cần tải xuống máy chủ web, vì vậy nó phải đáp ứng các yêu cầu bảo mật nghiêm ngặt hơn cho các ứng dụng Windows độc lập. Do đó, XBAP chạy trong phạm vi hộp bảo mật và được truy cập bởi hệ thống bảo mật mã của khung .NET. XBAP chỉ chạy bằng cách sử dụng hệ thống Windows với cài đặt WPF và chỉ sử dụng internet mở rộng phiên bản 6 và 7 trở lên.
Trích đoạn Microsoft VN.
Phạm Tuân