UWP?UWP! - Build 2015有些啥?

Build 2015圆满落幕了,不知大家有多少人刷夜看了直播呢?不管怎么说,想必各位都很好奇在这场微软开发者盛宴上,Microsoft又发布了什么令人惊叹的消息吧。笔者略微整理了一些与UWP相关的内容,抛砖引玉,并不全面,希望读者多多指正。

(文章中涉及的图片均来源于Build)

1. UAP改名UWP

Win10下的应用名称正式确定为了Universal Windows App,也许是为了和以前的UAP划清关系以表示其真正做到了“Universal”。是的,UWP是本次Build大会最重要的主题之一,其跨平台兼容性,多语言支持以及对其他平台应用的支持都有着前所未有的“Universal”。微软变了,变得更开放更广大了,而这应该会让大量开发者拍手叫好吧。
这条消息只是个引子,有关UWP的细节问题将在下面更详细的提出。

2. 大不相同的App Store

WP/WinRT的用户恐怕都有觉得Windows App Store中的应用太少的时候吧?微软似乎也注意到了这一点。在Win10的应用商店中,微软将“不择手段”地增加应用商店里用户的选择,力保UWP有一个欣欣向荣的生态系统。我们来看一看都有些什么吧:

微软所开发设备的全面通用

Windows 10并不存在WP10一说——从PC到RT,从Lumia到Surface,从搭载该系统的IoT开发板到运算能力强大的Xbox,均使用相同的Windows 10,所不同之处只有分辨率与外设而已,想必Windows在高分辨率屏幕下为人诟病的表现将会彻底翻盘。
与本主题更相关的,上述所有采用Windows 10作为OS的设备将共享相同AppStore。同时,微软为App设计者提供了一整套工具以方便其将自己的应用适配各种平台,这点下文再详述。想必光是这一点就足够WP用户觉得振奋了。

微软的必杀技:传统Win32PE程序的加入

传统Win32PE,也就是大家都耳熟能详的从MSDOS沿袭至今的桌面环境可执行文件,.exe便是其中最大的一支。将其转换为UWP听上去似乎有点科幻,但微软却真的在将其付诸实践。
说到这一点,则不得不谈此次Build大会中提及的Project Centennial——尽管该项目仍然处于开发阶段,我们还并不能直接享受其成果,但可以预见的是,一旦该项目真正投入实际使用,将会给UWP应用生态圈带来革命性改变:Build中给出的数据显示,成熟的传统PE应用有超过一千七百万,这并不算各个小辅助程序等。将他们转变为UWP带来的影响有多大,不言而喻。说它是微软的必杀技毫不为过。

海纳百川——安卓、iOS应用也能运行

又是一个科幻的设定,但是它似乎也在一步步成真:Project ASTORIA提供内嵌于Eclipse/Android Studio的插件用于帮助从安卓项目生成能在Windows10上运行的UWP,微软声称其有很高的代码重用率,能在已有安卓逻辑的基础上简单的生成UWP。另外,iOS应用也将能通过类似的手段完成到UWP的迁移,但其具体细节仍在开发中。

上述手段能不能给UWP带来一个欣欣向荣的应用生态系统呢?我们拭目以待吧。

3. 更开发者友好的集成开发环境

说到应用生态系统,开发者当然是必不可少的一部分,如果不能讨好开发者谁来写UWP呢?(咳咳)… 言归正传,作为微软的当家IDE,Visual Studio 2015也将发生很大的变化,以给UWP开发者带来更好的开发体验。

Github的原生支持

不知道使用VS开发应用的开发者有多少人用过Team Foundation Server?平心而论,这是一个相当不错的源代码托管工具,但是想必大家更耳熟能详的是开源界各大源码托管工具,如git/svn等吧。微软为了表现其拥抱开源的诚意,表示将在VS2015中增加对github的原生支持。


好顶赞啊~

跨平台的VS

哈,VS也要跨平台?是的,此次Build中,微软宣布发布Visual Studio for Linux以及Mac OSX。今后即使是unix系程序员也可以使用vs了,只是不知道其他版本的vs是否会携带.net runtime,如果有,想必在非Windows上开发UWP的一幕即将成真。

UWP开发工具的升级

在新的VS中,将加入一系列辅助工具帮助开发UWP,如更强大全面的Design视图,更好、更详细地用于分析软件运行性能、资源情况的调试工具以及支持在调试时实时查看UI元素排布情况的Live Visual Tree Inspector(类似于浏览器的类似功能)。它们的存在无疑是UWP开发者的又一福音。

Node.js和python的加入

作为脚本语言的风向标,Node和python无疑是最被广大开发者谈及的语言,笔者也是Node的忠实粉丝。之前VS将Html+js加入UAP的开发工具中已经十分惊艳,而今微软将在VS2015中全面支持Node.js和python开发并为其提供相关工具。尽管并不明确它们能否用于开发UWP,但从该行为的趋势来看,将来用脚本语言为UWP编写相关组件的日子也不远了。

未完待续,下一片博文将详细介绍对于UWP开发者而言此次Build带来的新特性。

UWP?UWP! - Build 2015有些啥?(1)的更多相关文章

  1. UWP?UWP! - Build 2015有些啥?(2)

    UWP?UWP! - Build 2015有些啥? Build 2015圆满落幕了,不知大家有多少人刷夜看了直播呢?不管怎么说,想必各位都很好奇在这场微软开发者盛宴上,Microsoft又发布了什么令 ...

  2. Microsoft Build 2015 汇总

    简要概括(GitHub 完成约 45%): Visual Studio Code Preview(意料之外) Visual Studio 2015 RC Visual Studio 2013 Upda ...

  3. Build 2015 Beijing & Windows 10 China Geek Challenge

    6月5日,借着Build 2015在北京召开分会的东风,参加了这次由微软中国举办的Windows 10中国开发者极客挑战赛. 白天是Build 2015课程,学习了Windows 10最新的技术,包括 ...

  4. BUILD 2015: Visual Studio对GitHub的支持

    微软BUILD 2015大会上发布了Visual Studio 对GitHub的支持.安装了如下Developer Assistant插件后,你便可以在Visual Studio中找到GitHub上的 ...

  5. Microsoft Build 2015

    Microsoft Build 2015 汇总   简要概括(GitHub 完成约 45%): Visual Studio Code Preview Visual Studio 2015 RC Vis ...

  6. [UWP]UWP App Data存储和获取

    这篇博客介绍如何在UWP开发时,如何存储App Data和获取. App Data是指用户的一些设定,偏好等.例如,App的主题,是否接收推送,离线接收消息等.需要区分下App Data和User D ...

  7. [UWP]UWP中获取联系人/邮件发送/SMS消息发送操作

    这篇博客将介绍如何在UWP程序中获取联系人/邮件发送/SMS发送的基础操作. 1. 获取联系人 UWP中联系人获取需要引入Windows.ApplicationModel.Contacts名称空间. ...

  8. 挑灯熬夜看《Build 2015 Keynote》图文笔记

    又是一年微软Build大会时间,网络上流传各种微软新品发布的消息终于也要揭晓了,一直熬夜到凌晨3点,好久没有这么兴奋了. 微软给力的很嘛! Satya nadella开始讲解 首先回顾微软的传统和技术 ...

  9. 微软build 2015

    1.apple Object-C项目和安卓项目经过移植可以运行在windows上,演示看起来有些卡. 2.平台大统一,Universal Windows App,10亿台设备,这个很重要,以后恐怕离不 ...

随机推荐

  1. Ext.encode 抛出异常“Uncaught RangeError: Maximum call stack size exceeded”

    在用使用Ext.encode(ExtObject)过程中抛出了如下错误: Uncaught RangeError: Maximum call stack size exceeded 实际上,不能用 E ...

  2. 磊科NI360路由器绕过密码登录

    先分析正确登陆360路由器后cookies是怎么样的,发现只有一个值如下图: 可以看出登陆后只有一个netcore_login=guest:1 下面来模拟一下这个cookies看是否能登陆 增加好后直 ...

  3. 总结最近移动端遇到的坑(auto-size + zepto)

    问题一:移动端页面双击会放大,图片时大时正常,布局偶尔很丑..刷新多遍又乜有问题 解决:所有图片设置宽高100%,最外面的html,给个 <meta name="viewport&qu ...

  4. Object.assign()方法

    对象的扩展 1.ES6中,对象的属性和方法可简写:对象的属性值可不写,前提是属性名已经声明: var name = "zhangsan"; "; var obj = { ...

  5. java8 ArrayList源码阅读

    转载自 java8 ArrayList源码阅读 本文基于jdk1.8 JavaCollection库中有三类:List,Queue,Set 其中List,有三个子实现类:ArrayList,Vecto ...

  6. 编译PCL Tutorial文件

    1.PCL Tutorial是使用SPHINX编译而成的. 2.安装Python2.7,从官方网站上下载(Portable Python测试未成功,待研究). 3.安装setuptools,安装成功会 ...

  7. Win7 64位 VS2015环境编译Libpng

    第3次编译Libpng依然想不起任何东西,为了不浪费第4次的时间... http://libmng.com/pub/png/libpng.html http://www.zlib.net/ 解压两个压 ...

  8. Android 文章列表

    Android  --列表-- Android(1)-Handler Looper Message MessageQueuehttp://www.cnblogs.com/TS-qrt/articles ...

  9. 修改centos启动项

    centos7下修改启动项在路径/etc/grub.d/文件路径下,修改完成之后需要运行命令 grub2-mkconfig --output=/boot/grub2/grub.cfg

  10. Web大文件上传控件-jsp-sql示例更新-Xproer.HttpUploader6.2

    版权所有 2009-2016荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webapp/up6.2/in ...