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

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

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

??????? 这三个项目里面只有 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] 方案结构与共用的两个面向

原文地址:https://www.cnblogs.com/chinatrump/p/11505089.html

时间: 2024-11-03 21:48:17

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

结构体共用变量 递归

结构体共用变量 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 结构体复习共用变量 { class Program { public int renfen; public int dianfen; public int caiquan() { Console.Write("你要出的是(剪刀石头布

公布windows的"Universal Apps" Unity3D游戏

转载请注明出处:http://blog.csdn.net/u010019717 更全的内容请看我的游戏蛮牛地址:http://www.unitymanual.com/space-uid-18602.html "Universal Apps" Unity3D 你须要两件东西:当前版本号的Unity(从 4.5.3 或 4.6 beta),以及 Visual Studio 2013 Update 3 还有下载文件: Unity-Download (4.5.3) Visual Studio

发布windows的"Universal Apps" Unity3D游戏

"Universal Apps" Unity3D 你需要两件东西:当前版本的Unity(从 4.5.3 或 4.6 beta),以及 Visual Studio 2013 Update 3 还有下载文件: Unity-Download (4.5.3) Visual Studio 2013 mitUpdate 3, z.B. die kostenlose Express-Version: 只要你完成安装,加载您的项目,UNITY3D   File -> Build Settings

一个相对通用的JSON响应结构,其中包含两部分:元数据与返回值

定义一个相对通用的JSON响应结构,其中包含两部分:元数据与返回值,其中,元数据表示操作是否成功与返回值消息等,返回值对应服务端方法所返回的数据. public class Response { private static final String OK = "ok"; private static final String ERROR = "error"; private Meta meta; private Object data; public Respon

瘋子C语言笔记(结构体/共用体/枚举篇)

 (一)结构体类型 1.简介: 例: struct date { int month; int day; int year; }; struct student { int num; char name[20]; char sex; int age; struct date birthday; /*birthday 是 struct date 类型*/ char addr[30]; }student1,student2; (1):结构体可嵌套 (2):与枚举相比结构体内元素为变量,而枚举为常

8.1 结构体 共用体 typedef 枚举

typedef :  给类型起一个新的名字 int main() { unsigned int a = 10; } 可以用下面表示: typedef unsigned int u32_t; int main() { u32_t a = 10; } 与definde的区别: typedef char *  N; #define N char* N p1,p2,p3; define的话  p2 p3 变成了char 类型 结构体 :不同类型元素的汇聚 ①匿名结构体 struct{ int id;  

ASP.NET Zero--解决方案结构(层)

解决方案结构(层) 创建和下载项目后,您将具有如下所示的解决方案结构: 解决方案有8个项目: Core项目包含域层类(如 实体 和 域服务). Application项目包含应用程序逻辑(如应用程序服务和 DTO). EntityFrameworkCore项目包含您的DbContext, 存储库实现,数据库迁移和其他EntityFramework Core特定的概念. Web.Mvc项目包含用于后端和前端应用程序的演示/ API层(控制器,视图,javascripts,样式,图像等). Web.

新方案,一个手机号注册两个微信

需求:一个手机号注册两个微信(目前可用) Step1: 1.绑定了a1手机号的微信(a1准备再注册一个微信) 2.再准备一个微信(绑定的手机号为b1) Step2: 1.绑定了a1的手机号的微信到账户中心 2.点击手机号 3.点击更换手机号 4.输入b1手机号 5.输入验证码,换绑定成功,此时的a1也解绑了 Step3: 1.用a1手机号再注册微信就可以了,原来微信没有绑定手机号了,(但是微信系统里是有联系的) ps:只能注册两个微信!!!!

怎样将结构完全一样的两个表的内容合并到一个表中,SQL语句

标签: SQL合并数据 2013-08-21 10:41 489人阅读 评论(0) 收藏 举报  分类: Oracle数据库(14)  select * into 新表名 from (select * from T1 union all select * from T2) 这个语句可以实现将合并的数据追加到一个新表中. 不合并重复数据 select * from T1 union all select * from T2 合并重复数据 select * from T1 union select