从零開始学Xamarin.Forms(一) 概述

    Xamarin 读 “ˈmərin”,是一个基于开源项目mono的可使用C#开发的收费的跨平台(iOS、Android、Windows Phone、Mac)解决方式。


    1.原理
        Xamarin.iOS:
             也就是以前的 MonoTouch(Mono for iOS), 使⽤静态编译(Ahead-Of-Time)⽅式将C#代码编译为 ARM⼆进制代码。 
        Xamarin.Android:
            即以前的MonoDroid(Mono for Android) 。是 将C# 代码编译成IL封装到MonoVM+JIT.
        
    2.优劣势
        在Xamarin2.0下开发跨平台应用,最可能是逻辑层和数据訪问层的代码可以共用,而最花费时间的界面搭建则需要针对不一样的平台进行订制。

当时Xamarin的优点是C#开发者不需要再学习java和Objective-C了,缺点是需要了解各个平台界面的API,实际能节省下来的工做量并很少。java

        幸运的是Xamarin3.0带来了 Xamarin.Fo rms,界面部分也能共享一套代码了。真正能够达到“write your code once, and present native UIs on each platform.”(一次编写。在各平台使用原生控件展示)的效果。

这也是Xamarin最吸引个人地方。眼下CSDN为Xamarin在中国大陆的代理,正在开展一些对应的培训。设计模式


        固然,有优点确定也有劣势。眼下 Xa marin.Forms的版本号为1.2.2 Prerelease 3 版。b ug至关多(但更新较快)。提供的控件很少,最主要的Radio Button和CheckBox没有(官方解释:这两个不是每个平台都有的控件),需要本身重写Renderer。

在Android平台上,使用Xamarin.Forms开发略微复杂些的应用。启动速度较慢。让人不得不为它设计一个启动界面。还有就是Xamarin的中文文档差点儿没有,当中大部分资料来自台湾。CSDN上的论坛才20条帖子...眼下有问题比較靠谱的解决方法是在它的官方论坛或者加QQ群:385020493提问。async


   
    3.开发环境
        Xamarin可以在Windows和Mac上进行开发:
        Windows:    Xamarin Studio 或 Xamarin for Visual Studio(2010 -2013) Plugin(推荐)
                Mac:     Xamarin Studio

    4.技术基础
        C#基础,能够建立WCF、rest服务、掌握C#5.0,.net4.5后async、awaitkeyword。

学过Silverlight或wpf的最好:因为它们布局文件都使用xaml。包含设计模式也是一样的MVVM,了解Binding数据绑定、Command命令、DI依赖注入、DP依赖属性等等内容。布局

知识结构文件夹:AOT静态编译 相应中文

   5.系统支持
  • Android 4.0 or higher
  • iOS 6.1 or higher
  • Windows Phone 8 (using Visual Studio)
相关文章
相关标签/搜索