• 关于Metro style下可用的.net类库的一些概要说明


    翻译自:http://blogs.msdn.com/b/dotnet/archive/2012/04/17/net-for-metro-style-apps.aspx

    .net现在是微软几个平台的核心了,每个平台都有基于.net特定的子集,关于API覆盖面的制作已经融入了很多想法,很多人问到在metro下哪些.net类可用,下面CLR核心框架组的PM将会回答。

    开发者预览版和客户预览版已经发布,很多开发人员开发win8的时候问到metro下可用的.NET类,这关系代码到移植到win8 metro的时候要重写多少代码,我们也扪心自问过这个问题。
    后面会列出一个可用列表,这里主要讨论一些我们决定其可用的想法和原则,和一些.net类和metro类的关系。

    设计目标:
      开始做这项工作之前,我们意识到让开发者更容易和技术实现上的两难,metro应用允许开发者通过所有win8设备提供一些强制的终端用户体验,为了达到目的,windows做了很多改变,有一些影响到了我们的设计。最大的变化是 windows runtime是一套新的接口,能被C#,C++,VB,调用,我们组的任务就是让.net开发人员自然而然地同时调用.net类和windows runtime类。windows runtime组从相反的方向做着相同的工作。以下几点是我们的目标:
      避免.net类和win runtime类中有重复的功能
      明确.net类的重点
      让.net开发人员感觉到很方便。
      方便移植C#、VB代码

    .NET Framework profiles in context

    Figure 1: .NET Framework profiles in context

    设计配置

    为了给metro设计一个新的类库,从现有的子集中削减并扩展一些类,上图是一个图表用来说明关系的。图中小点的圈是.net的配置,交叉点是共用的,可以认为metro应用也是一个.net类库的子集,并且和其他子集共享一些共通类。基于这个图,我们从完整的.net类库中为windows phone选择一些类,因为wp应用和metro应用很像。

    选择类的过程
      为了达到之前讨论的目的,我们建立了一个严格的挑选流程,我们要确认每一个API符合以下要求:
      1,这个API在Metro中可用吗?答案并非显而易见,比如asp.net的api明显与Metro开发关系不大,但是控制台api可能有用(例如测试的时候)。当有疑虑的时候,我们先自问我们是否需要给出这些api,然后移除一些不会用到的api,例如在metro中用路径操作文件是不支持的,因为文件存取是另一个代理线程调用的。
      2,这个API过时了吗?包括不好用的,或者不符合指导规范的。
      3,这个API和.net类的重复了么?重复的话用的时候就得选择,选择一般都是随便做的,这样就不能很好的分享代码,因为你可能选择了不同的函数。

     

    Feature areas supported by .NET for Metro style apps

     

    下图是量化的图表

     

    .NET for Metro style apps

    Windows Phone 7.1

    .NET Framework 4.5

    Namespace

    72

    95

    447

    Type

    1,246

    1,788

    14,936

    Member

    15,674

    20,291

    217,166

    Table: API surface counts, by .NET Profile

    关于考虑的流程,可以看这个文章 A .NET developer's view of Windows 8 app development

    关于移植.net代码 Bringing existing managed code into Metro style apps,

    .NET for Metro style apps overview

    converting your existing .NET Framework code.

      

  • 相关阅读:
    刷脸背后:人脸检测人脸识别人脸检索_张重生资料整理
    webpack工具
    js精度缺失和最大安全整数
    在线文档预览(干货篇)
    讨论js比较两个数组(对象)是否相等的范围
    js不同数据类型中==与===的对比
    js中this的指向
    前后端数据类型
    js网页节点操作
    圆角渐变边框实现
  • 原文地址:https://www.cnblogs.com/icuit/p/2526076.html
Copyright © 2020-2023  润新知