[Universal Apps] 方案结构与共用的两个面向

了解 Universal Apps 的方案结构与共用的两个面向


??????? Universal Apps 方案认有三个项目 (1) Windows Apps (2) Windows Phone Apps (3) Shared,如下图所示

r1

??????? 这三个项目里面只有 Windows 和 Windows Phone 的项目会输出二进制档,但 Shared 项目是不会输出二进制档的,意思就是说 Shared 项目无法独立被编译,它也不会产生 exe 或 dll 之类的二进制输出档.

?????? 所以 Universal Apps 是如何编译的,其实他在编译的行为是先将 Windows 和 Shared 项目的所有文件合并在一起然后编译成 Windows Apps 的二进制档 (事实上你会得到一个 exe 档); Windows Phone 也是一样,在编译时将 Windows Phone 和 Shared 项目所有的文件合并后才进行编译,所以三个项目会得到两个二进制输出档.

?????? 有了对方案结构的基本了解后,我们来聊聊‘共用的两个面向’,在我进行前面一篇文章 [Universal Apps] 共用 Basic Page 的范本 中的范本建立与修改时,不断地在思索‘Universal Apps 中共用的意义为何?’. 我发现共用这件事是有两个面向的意义,你没看错,的确有两个意义,待我细细说明.

?????? 1. 共用文件

?????? Universal Apps 中共用的意义大家最容易理解的就是共用文件,也就是我们在 Shared 项目中建立或加入某些文件,如 xaml,cs,图档,文字档 等等,让 Windows 项目和 Windows Phone 项目在编译时会参考同样的文件来合并. 这个行为很容易理解,大部分提到共用时,这也是最直觉的方式. 在我前一篇文章的范本中,MainPage.xaml 就是属于此类.

?????? 2. 共用命名

?????? 这个共用的意义就不是那么的直觉了,但我认为这也是共用的一种方式,这种方式的呈现乃在于分别于 Windows 与 Windows Phone 项目建立文件,但使用相同的命名方式,如相同的文件名称,相同的类全名,相同的模式 (Style)键值,而使得在 Shared 中的程序或 xaml 能够使用相同的命名定义两个分属在不同项目的实体. 在我前一篇文章的范本中,PageTitleControl.xaml 与 DefaultResources.xaml 就是属于共用命名的类型.

?????? 所以‘共用’这件事并不是狭隘的只有共用文件这样的定义,当我们深入理解共用的两个面向时,就能更灵活地在 Universal Apps 方案中应用这两个面向的技巧,不仅对于开发的速度有帮助,更可以针对平台特性发挥其专长.


原文:大专栏  [Universal Apps] 方案结构与共用的两个面向

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...