WinJS — это библиотека JavaScript от Microsoft для разработки приложений WinRT или Windows Store. Одно из менее значительных заявлений на Build этого года заключается в том, что он выпускается с открытым исходным кодом.
Учитывая, что JavaScript довольно сложно сделать приватным — кроме обфускации, вы мало что можете сделать, создание WinJS с открытым исходным кодом — не такой уж большой шаг, как может показаться, но это все же шаг вперед.
Вы можете подумать, что с таким количеством наборов инструментов JavaScript, доступных для создания приложений, вам не нужен другой, но WinJS очень хорош и предоставляет доступ к ряду стандартных компонентов пользовательского интерфейса WinRT, которые делают приложение HTML / JavaScript точно таким же, как и WinRT. «родное» приложение, написанное на C # или C ++.
WinJS 2.0 был представлен в Windows 8.1 с некоторыми дополнительными элементами управления пользовательского интерфейса. Помимо того, что он использовался для создания приложений WinRT, он также был расширен до Xbox, включая внешний вид.
WinJS 2.1 был анонсирован на Build, и это снова расширяет его возможности, включая Windows Phone 8.1, также запущенную на Build.
Другими словами, WinJS теперь работает с двумя новыми Windows API — WinRT и Windows Phone.
Однако выход за рамки Windows, похоже, является целью проекта с открытым исходным кодом. WinJS можно будет использовать в Chrome, Firefox и IE, если цели проекта будут достигнуты. Это означает, что у вас может быть одно веб-приложение, работающее на WinRT, Windows Phone и в стандартном браузере, и оно должно выглядеть одинаково на всех платформах.
Конечно, недостатком является то, что это еще одна спецификация веб-приложения, которую нужно добавить в приложения Chrome и открытые веб-приложения Mozilla. На данный момент ни одна из спецификаций не реализована достаточно хорошо, чтобы победить другие, поэтому, возможно, у WinJS есть шанс стать чем-то большим, чем просто еще одна библиотека пользовательского интерфейса — только время покажет.
Новый веб-сайт WinJS хорош еще и тем, что дает вам возможность попробовать WinJS в интерактивном редакторе. Если вам интересно, что такое WinJS, попробуйте его — например, это самый простой способ увидеть диапазон элементов управления пользовательского интерфейса.
Если вам нужен код или вы хотите внести свой вклад, вы найдете WinJS на GitHub под лицензией Apache 2.0.