Windows Runtime (WinRT) là kiến trúc ứng dụng không cần biết nền tảng được giới thiệu lần đầu tiên trong Windows 8 và Windows Server 2012 năm 2012. WinRT hỗ trợ phát triển trong C++/WinRT (C++ chuẩn), C++/CX (Component Extensions, một ngôn ngữ dựa trên C++), JavaScript-TypeScript, và các ngôn ngữ mã được quản lý C# và Visual Basic.NET (VB.NET). Các ứng dụng WinRT vốn hỗ trợ cả bộ xử lý x86 và ARM, và có thể chạy trong môi trường sandbox để cho phép bảo mật và ổn định cao hơn. Các thành phần WinRT được thiết kế với khả năng tương tác giữa nhiều ngôn ngữ và API, bao gồm các ngôn ngữ gốc, được quản lý và viết kịch bản.
Windows Phone 8.1 dùng một phiên bản Windows Runtime có tên Windows Phone Runtime. Nó cho phép phát triển các ứng dụng bằng C# và VB.NET, và các thành phần Windows Runtime trong C++/CX.
Công nghệ
WinRT được triển khai theo ngôn ngữ lập trình C++ và được thiết kế theo mô hình hướng đối tượng. Đó là một giao diện lập trình ứng dụng mã (API) không được quản lý dựa trên Mô hình đối tượng thành phần (COM) cho phép giao tiếp từ nhiều ngôn ngữ, cũng như COM. Tuy nhiên, các định nghĩa API được lưu trữ trong các file .winmd
, được mã hóa theo định dạng ECMA 335 metadata, mà.NET Framework cũng sử dụng với một vài sửa đổi. Định dạng siêu dữ liệu phổ biến này cho phép ít hơn đáng kể chi phí hoạt động khi gọi WinRT từ các ứng dụng.NET, liên quan đến P/Invoke, và cú pháp đơn giản hơn nhiều.
Ngôn ngữ C++/CX (Component Extensions) mới, mượn một số cú pháp C++/CLI, cho phép viết và sử dụng các thành phần WinRT với ít mã hiển thị hơn cho lập trình viên, so với lập trình COM cổ điển trong C ++ và áp đặt ít hạn chế hơn so với C++/CLI về các loại trộn. Các phần mở rộng thành phần của C++/CX chỉ được khuyến nghị sử dụng tại ranh giới API, không dành cho các mục đích khác. C++ thông thường (với đặc tả dành riêng cho COM) cũng có thể được sử dụng để lập trình với các thành phần WinRT, với sự trợ giúp của Windows Runtime C++ Template Library (WRL), tương tự như mục đích mà Active Template Library cung cấp cho COM.
Các ứng dụng WinRT chạy trong hộp cát và cần sự chấp thuận rõ ràng của người dùng để truy cập các tính năng quan trọng của hệ điều hành và phần cứng cơ bản. Quyền truy cập file bị giới hạn ở một số vị trí được xác định trước, chẳng hạn như thư mục Documents or Pictures.
Các ứng dụng WinRT cho Windows RT, Windows 8 trở lên được đóng gói ở định dạng file .appx
; dựa trên Open Packaging Conventions, nó dùng một định dạng ZIP với các tệp XML được thêm vào. Các ứng dụng WinRT được phân phối chủ yếu thông qua một cửa hàng ứng dụng có tên Microsoft Store, nơi phần mềm WinRT (được gọi là ứng dụng Windows Store) có thể được người dùng tải xuống và mua. Các ứng dụng WinRT chỉ có thể được tải từ bên ngoài Windows Store trên các hệ thống Windows 8 hoặc RT là một phần của miền Windows hoặc được trang bị khóa kích hoạt đặc biệt thu được từ Microsoft.
Trong một sự khởi đầu lớn từ Win32 và tương tự như.NET Framework 4.5, hầu hết các API dự kiến sẽ mất nhiều thời gian để hoàn thành đều được triển khai dưới dạng không đồng bộ không đồng bộ. Ứng dụng gửi lệnh gọi API, trả về ngay lập tức, giải phóng ứng dụng để thực hiện các tác vụ khác trong khi chờ kết quả. Mô hình không đồng bộ yêu cầu các cấu trúc ngôn ngữ lập trình mới (từ khóa async
và toán tử await
trong C # và Visual Basic, class task
và method .then
trong C++, được cung cấp bởi bộ phát triển phần mềm WinRT (SDK), từ khóa promise
và function then
JavaScript- HTML5), tương tự như try
/catch
dùng trong xử lý ngoại lệ.Các phần của API cần truy cập không đồng bộ bao gồm các tin nhắn và hộp thoại trên màn hình, truy cập file, kết nối Internet, ổ cắm, luồng, thiết bị và dịch vụ và lịch, danh bạ và cuộc hẹn.
Dịch vụ
Metadata
Windows Phone Runtime
Bắt đầu từ Windows Phone 8 có thể phát triển các ứng dụng bằng phiên bản Windows Runtime có tên Windows Phone Runtime (WPRT). Mặc dù WP8 mang đến sự hỗ trợ hạn chế, nền tảng cuối cùng đã hội tụ với Windows 8.1 trong Windows Phone 8.1.
Windows Phone 8
Windows Phone 8 đã hỗ trợ hạn chế để phát triển và tiêu thụ các thành phần Windows Runtime thông qua Windows Phone Runtime. Nhiều API Windows Runtime trong Windows 8 xử lý các chức năng hệ điều hành cốt lõi đã được port sang Windows Phone 8. Hỗ trợ phát triển trò chơi gốc bằng C++/CX và DirectX đã được thêm vào, theo yêu cầu từ ngành công nghiệp phát triển trò chơi.
Tuy nhiên, Windows Phone XAML Framework vẫn dựa trên cùng một framework Microsoft Silverlight, như trong Windows Phone 7, để tương thích ngược. Do đó, , việc phát triển bằng XAML là không thể trong C++/CX. Phát triển bằng HTML5 hoặc WinJS không được hỗ trợ trên Windows Phone 8.
Windows Phone 8.1
Hỗ trợ Windows Runtime trên Windows Phone 8.1 hội tụ với Windows 8.1. Bản phát hành mang đến Windows Runtime API đầy đủ cho nền tảng, bao gồm các hỗ trợ cho Windows Runtime XAML Framework, và các ràng buộc ngôn ngữ cho C++/CX, và HTML5-JavaScript. Ngoài ra còn có một loại dự án gọi là Universal apps để cho phép các ứng dụng chia sẻ mã trên các phiên bản 8.1 của Windows Phone và Windows.
Windows Phone 8 Silverlight Framework đã được cập nhật. Nó có thể khai thác một số tính năng mới trong Windows Runtime.
Windows Phone Runtime sử dụng định dạng gói AppX từ Windows 8, sau khi sử dụng Silverlight XAP.
👁️
2 | 🔗 | 💖 | ✨ | 🌍 | ⌚
**Windows Runtime** (**WinRT**) là kiến trúc ứng dụng không cần biết nền tảng được giới thiệu lần đầu tiên trong Windows 8 và Windows Server 2012 năm 2012. WinRT hỗ trợ phát triển trong C++/WinRT
**Windows 10** là một bản phát hành lớn của hệ điều hành Windows NT do Microsoft phát triển. Hệ điều hành này được giới thiệu vào 30 tháng 9 năm 2014 trong chương trình Build
nhỏ|Khan Academy, một ví dụ về một Universal Windows App nhỏ|Trái: Một ứng dụng desktop truyền thống chưa có nội dung gì; nó đang hiển thị 60 [[Thành tố điều khiển|thành tố đồ họa, và
Windows 10 mang đến một lượng lớn thành phần mới, bao gồm cả các tùy chọn cho giao diện tối ưu cho thao tác chạm (gọi là tablet mode) hoặc giao diện cho máy tính
**Windows 10 Mobile** là một hệ điều hành di động đã ngừng phát triển bởi Microsoft. Nó là phiên bản kế tiếp Windows Phone 8.1 trong dòng sản phẩm Windows Phone, nhưng lại được giới
**Universal Windows Platform** (**UWP**), là một cấu trúc ứng dụng thống nhất giữa các nền tảng được tạo bởi Microsoft và được giới thiệu lần đầu trong Windows 10. Mục đích của nền tảng phần
**Windows 8** là một bản phát hành lớn của hệ điều hành Windows NT được phát triển bởi Microsoft. Nó đã được phát hành tới các nhà sản xuất vào ngày 1 tháng 8 năm
**Windows 8.1** là một bản phát hành của hệ điều hành Windows NT do Microsoft phát triển. Phiên bản này đã được phát hành tới các nhà sản xuất vào ngày 27 tháng 8 năm
**Windows RT** là một hệ điều hành di động được phát triển bởi Microsoft. Đây là một phiên bản của Windows 8 hay Windows 8.1 được thiết kế dành cho cấu trúc ARM 32 bit
**Windows Phone 8.1** là thế hệ thứ ba của hệ điều hành Windows Phone do Microsoft phát triển, được giới thiệu tại hội nghị Build của Microsoft tại San Francisco, California vào ngày 2 tháng
**Windows 8** có bốn **phiên bản**, với các tính năng khác nhau. Các phiên bản từng có tính năng đa dạng được gọi là Core, Pro, Enterprise và RT. Có những phiên bản của những
**Windows 98** (tên mã Memphis) hay **Windows 98 FE** (**Windows 98 First Edition**). **Windows 98** bản gốc sở dĩ được đặt tên như vậy để nhằm phân biệt với Windows 98 Second Edition phát hành
**Windows Millennium Edition**, hay **Windows ME** (phát âm, ), là một hệ điều hành giao diện đồ hoạ được phát hành ngày 14 tháng 9 năm 2000 bởi Microsoft và là hệ điều hành cuối
**Windows XP Media Center Edition** (MCE) là một phiên bản của hệ điều hành Windows XP được thiết kế cho các tổ hợp giải trí tại nhà. Phiên bản cuối cùng, Windows XP Media Center
**Microsoft Windows SDK** và tiền nhiệm của nó, **Platform SDK** và **.NET Framework SDK** là bộ phát triển phần mềm (SDK) của Microsoft chứa tài liệu, các header file, các thư viện, các mẫu và
**Nền tảng máy tính**,** Nền tảng điện toán** hoặc **nền tảng** **kỹ thuật số** là môi trường trong đó một phần mềm được thực thi. Nó có thể là phần cứng hoặc hệ điều hành,
**_Atari - 80 Classic Games in One!_**, còn gọi là **_Atari: The 80 Classic Games_**, là một bộ sưu tập 80 game trước đây được xuất bản bởi Atari, Inc. và Atari Corporation, tái tạo
thumb|Màn hình xanh chết chóc của [[Windows XP, Windows Server 2003, Windows Server 2003 R2, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2.]] thumb|Màn hình xanh chết chóc của [[Windows 10 (sau
**Microsoft Visual Studio** là một môi trường phát triển tích hợp (IDE) từ Microsoft. Microsoft Visual Studio còn được gọi là "Trình soạn thảo mã nhiều người sử dụng nhất thế giới ", được dùng
**ntoskrnl.exe** (cùng với **ntkrnlpa.exe** trên những hệ thống hỗ trợ Physical Address Extension) là thành phần nhân của họ các phiên bản hệ điều hành Windows NT của Microsoft. Nó cung cấp nhân lõi và
**_Plants vs. Zombies_** là một trò chơi điện tử phòng thủ tháp do PopCap Games phát triển và phát hành. Trò chơi ban đầu được phát hành cho nền tảng Windows và Mac OS X,
viết tắt là Umineko, là một dōjin soft visual novel giết người bí ẩn do nhóm 07th Expansion phát triển và sản xuất. Tác phẩm đầu tiên của dòng game này, _Legend of the Golden
**Adobe AIR** (trước đây là **Adobe Integration Runtime**) là một hệ thống runtime đa nền tảng được Adobe Systems phát triển để xây dựng các ứng dụng máy tính để bàn và ứng dụng di
**Gói ứng dụng Android** hay **Android Package** có phần mở rộng file **apk** là định dạng file được hệ điều hành Android và một số hệ điều hành dựa trên Android khác sử dụng để
phải|nhỏ|277x277px| Minh họa của một ứng dụng sử dụng libvorbisfile để phát file Ogg Vorbis Trong khoa học máy tính, **thư viện** là tập hợp các tài nguyên không biến động được sử dụng bởi
Đây là danh sách các ngôn ngữ lập trình đáng chú ý, được nhóm theo loại. Vì không có sơ đồ phân loại bao quát cho các ngôn ngữ lập trình, nên trong nhiều trường
**Ngôn ngữ trung gian chung **hoặc **Ngôn ngữ trung gian dùng chung** (**Common Intermediate Language - CLI**), là ngôn ngữ lập trình có thể đọc được của con người ở mức thấp nhất được xác
Phần mềm **WinCC** của Siemens là một phần mềm chuyên dụng để xây dựng giao diện điều khiển HMI (Human Machine Interface) cũng như phục vụ việc xử lý và lưu trữ dữ liệu trong
**Wine** là một lớp tương thích tự do nguồn mở dùng để chạy các phần mềm viết cho Windows trên các hệ điều hành tương tự Unix (Linux, FreeBSD,...). Wine cũng cung cấp một thư
Đây là danh sách các hệ điều hành. Hệ điều hành máy tính có thể được phân loại theo công nghệ, quyền sở hữu, giấy phép, trạng thái hoạt động, cách dùng, và nhiều đặc
**.NET** (trước đây là **.NET Core**) là nền tảng mã nguồn mở miễn phí trên các hệ điều hành Windows, Linux, và macOS. Đây là phiên bản đa nền tảng thừa kế từ .NET Framework.
**Hệ điều hành** (tiếng Anh: Operating system, viết tắt: OS) là phần mềm hệ thống quản lý tài nguyên phần cứng máy tính, phần mềm và cung cấp các dịch vụ chung cho các chương
**Pascal** là một ngôn ngữ lập trình cho máy tính thuộc dạng mệnh lệnh và thủ tục, được Niklaus Wirth phát triển vào năm 1970. Pascal là ngôn ngữ lập trình đặc biệt thích hợp
**Microsoft DirectX** là một tập hợp các giao diện lập trình ứng dụng (API) để xử lý các nhiệm vụ liên quan đến đa phương tiện, đặc biệt là chương trình trò chơi và video
**Object Pascal** chỉ đến một nhánh của phát sinh hướng đối tượng của Pascal, được biết đến chủ yếu với vai trò ngôn ngữ lập trình chính của Delphi. ## Lịch sử ban đầu tại
**Novell, Inc** _(phát âm: _ là một công ty
**.NET Framework** là một nền tảng lập trình và cũng là một nền tảng thực thi ứng dụng chủ yếu trên hệ điều hành Microsoft Windows được phát triển bởi Microsoft từ năm 2002, kết
**Katalon Studio** là một giải pháp kiểm thử tự động được phát triển bởi Katalon LLC. Phần mềm này được xây dựng dựa trên các khung tự động hóa nguồn mở Selenium, Appium với giao
**KDE Software Compilation** (**KDE SC**) là tên gọi chung cho môi trường desktop cộng với một loạt các ứng dụng đi kèm do KDE phát triển. Từ bản phát hành 1.0 của nó tháng 1/1998
**C#** (**C Sharp**, đọc là _"xi-sáp"_) là một ngôn ngữ lập trình hướng đối tượng đa năng, mạnh mẽ được phát triển bởi Microsoft, C# là phần khởi đầu cho kế hoạch .NET của họ.
**Symbian** là một hệ điều hành đã ngừng phát triển được viết và sử dụng phổ biến cho hầu như điện thoại di động của những năm 90 và đầu thế kỉ 21. Symbian ban
**Hệ điều hành Chrome**, hay được gọi là **ChromeOS**, đây là một trên hệ điều hành dựa trên Linux phát triển bởi Google. Nó có nguồn gốc từ ChromeOS mã và sử dụng trình duyệt
**Docker** là một dự án mã nguồn mở giúp tự động triển khai các ứng dụng Linux và Windows vào trong các container ảo hóa. Docker cung cấp một lớp trừu tượng và tự động
nhỏ|phải|Microsoft Visual C++ 2005, Professional Edition nhỏ|phải|Visual C++ 6.0 **Microsoft Visual C++** (còn được gọi là **MSVC**) là một sản phẩm Môi trường phát triển tích hợp (IDE) cho các ngôn ngữ lập trình C,
nhỏ|[[VirtualBox]] Trong khoa học máy tính, một **máy ảo** (**VM**) là một trình giả lập một hệ thống máy tính. Máy ảo dựa trên kiến trúc máy tính và cung cấp chức năng của máy
**Smalltalk** là ngôn ngữ lập trình hướng đối tượng, kiểu dữ liệu động, và có tính phản xạ. Smalltalk được thiết kế nhằm bảo vệ tối đa các đặc điểm ngắn gọn và trong sáng
**The Geometer's Sketchpad** (thường được gọi tắt là **Sketchpad** hay **GSP**) là một phần mềm thương mại với mục đích khám phá Hình học Euclid, Đại số, Giải tích, và các ngành khác của Toán
**WebKit** là một engine trình duyệt nguồn mở cung cấp các thành phần cần thiết để xây dựng một trình duyệt web. WebKit được Apple Inc. chính thức nhận từ thư viện phần mềm KHTML
**Nokia N8** là mẫu điện thoại thông minh (smartphone) của Nokia thuộc dòng Nseries. Nó là điện thoại quay phim đầu tiên của Nokia dùng một cỡ cảm biến 1/1.83" trên máy quay 12 Megapixel,
**Mono** là một dự án tự do nguồn mở nhằm tạo ra một để tạo software framework tương thích .NET Framework tương thích tiêu chuẩn Ecma, bao gồm một trình biên dịch C# và Common