简介

简单来说,Xamarin提供了使用C#完成iOS,Android和Windows Phone三个移动平台开发的可能性
Xamarin包括Xamarin.Andriod、Xamarin.IOS、Xamarin.Forms等

官方文档翻译

当考虑如何构建iOS和Android应用程序时,许多人认为本机语言Objective-C,Swift和Java是唯一的选择。但是,在过去的几年里,出现了一个全新的移动应用平台生态系统。

Xamarin在这个领域是独一无二的,通过在iOS,Android和Windows Phone(Windows Phone的本地语言已经是C#)的所有三个移动平台上提供单一语言(C#,类库和运行时),同时仍编译native,即使对于要求苛刻的游戏也足够高性能的应用程序。

这些平台中的每一个都有不同的功能集,每个平台的编写本地应用程序的能力都不相同 - 也就是说,编译为本机代码的应用程序,以及与底层Java子系统交互的流畅程度。例如,某些平台只允许使用HTML和JavaScript构建应用程序,而有些平台只能使用C / C ++代码。一些平台甚至不使用本地控制工具包。

Xamarin的独特之处在于它结合了本地平台的所有功能,并增加了许多自己的强大功能,其中包括:

1.底层SDK的完整绑定 - Xamarin包含iOS和Android中几乎所有底层平台SDK的绑定。另外,这些绑定是强类型的,这意味着它们易于导航和使用,并且在开发过程中提供可靠的编译时类型检查。这导致更少的运行时错误和更高质量的应用程序。
2.Objective-C,Java,C和C ++ Interop - Xamarin提供了直接调用Objective-C,Java,C和C ++库的功能,使您可以使用已经创建的大量第三方代码。这使您可以利用Objective-C,Java或C / C ++编写的现有iOS和Android库。另外,Xamarin提供了绑定项目,允许您使用声明性语法轻松绑定本地Objective-C和Java库。
3.现代语言结构 - Xamarin应用程序是用C#编写的,现代语言包括对Objective-C和Java的重大改进,如动态语言特性,功能结构(如Lambda,LINQ,并行编程功能,复杂的泛型等等)。
4.令人惊叹的基础类库(BCL) - Xamarin应用程序使用.NET BCL,这是一个庞大的具有强大的XML,数据库,序列化,IO,字符串和网络支持等功能的类的集合。此外,现有的C#代码可以被编译用于一个应用程序,它可以访问成千上万的库,这将使您可以执行BCL中尚未涵盖的内容。
现代集成开发环境(IDE) - Xamarin在Windows上使用Mac OS X和Visual Studio上的Visual Studio for Mac。这些都是现代IDE,包括代码自动完成功能,复杂的项目和解决方案管理系统,全面的项目模板库,集成的源代码控制等等。
5.移动跨平台支持 - Xamarin为iOS,Android和Windows Phone三大移动平台提供先进的跨平台支持。可以编写应用程序来共享其代码的90%,而我们的Xamarin.Mobile库提供了一个统一的API来访问所有三个平台上的公共资源。这可以显着降低移动开发人员的开发成本和上市时间,目标是三个最受欢迎的移动平台。
由于Xamarin强大而全面的功能集,为希望使用现代语言和平台开发跨平台移动应用程序的应用程序开发人员填补了空白。

原文

https://developer.xamarin.com/guides/cross-platform/getting_started/introduction_to_mobile_development/

Xamarin简介的更多相关文章

  1. Xamarin简介与Xamarin支持MVC设计模式

    Create Native iOS, Android,Mac and Windows apps in C#. 官方网站:http://xamarin.com/ 使用武器 Run a C# app, g ...

  2. xamarin之 安装工具介绍

    原文:xamarin之 安装工具介绍 思考: 1,  一定要按照顺序安装吗? 先装JDK,再装Android SDK 原因:Android SDK采用了Java语言 先装Android SDK,再装A ...

  3. Xamarin介绍

    郑重声明: 本文非Xamarin使用详解,也没什么有用的干货,只是给不知道Xamarin到底是什么的大家提供一点点微不足道的小介绍,看完以后啥收获都没有也不是没可能的(*/ω\*).so......ε ...

  4. C# Xamarin移动开发基础进修篇

    一.课程介绍 英文原文:C# is the best language for mobile app development. Anything you can do in Objective-C, ...

  5. Hello, Android 快速入门

    Hello, Android Android 开发与 Xamarin 简介 在这两节指南中,我们将 (使用 Xamarin Studio或 Visual Studio)建立我们的第一个 Xamarin ...

  6. ApacheCN C# 译文集 20211124 更新

    C# 代码整洁指南 零.前言 一.C# 代码标准和原则 二.代码审查--过程和重要性 三.类.对象和数据结构 四.编写整洁的函数 五.异常处理 六.单元测试 七.端到端系统测试 八.线程和并发 九.设 ...

  7. Xamarin.Forms 简介

    An Introduction to Xamarin.Forms 来源:http://developer.xamarin.com/guides/cross-platform/xamarin-forms ...

  8. Xamarin+Prism开发详解六:DependencyService与IPlatformInitializer的关系

    祝各位2017年事业辉煌!开年第一篇博客,继续探索Xamarin.Forms… 为什么我做Xamarin开发的时候中意于Prism.Forms框架?本章为你揭晓. 实例代码地址:https://git ...

  9. Xamarin体验:使用C#开发iOS/Android应用

    Xamarin是Mono创始人Miguel de Icaza创建的公司,旨在让开发者可以用C#编写iOS, Android, Mac应用程序,也就是跨平台移动开发.   简介 Xamarin是基于Mo ...

随机推荐

  1. ios开发网络学习四:NSURLConnection大文件断点下载

    #import "ViewController.h" @interface ViewController ()<NSURLConnectionDataDelegate> ...

  2. 单机/伪分布式Hadoop2.4.1安装文档 2014-07-08 21:16 2275人阅读 评论(0) 收藏

    转载自官方文档,最新版请见:http://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-common/SingleCluster.h ...

  3. AE指定字段转成注记

    转自原文 ae指定字段转成注记 ArcMap中有一个功能是Label Features,就是可以将图层内指定字段值显示以Label形式显示在主窗口上,在Label Features后,用右键点击图层, ...

  4. java.lang.ClassNotFoundException: org.codehaus.jackson.JsonProcess******

    http://blog.csdn.net/jrainbow/article/details/38764039

  5. JNDI 的理解

    JNDI是 Java 命名与文件夹接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之中的一个,不少专家觉得,没有透彻理解JNDI的意义和作用 ...

  6. window对象属性alert、confirm、prompt怎么使用?

    window对象属性alert.confirm.prompt怎么使用? 一.总结 1.参数依次复杂,返回值依次复杂,但是感觉都是一一继承的,所以很好想也很好写. 二.window对象alert.con ...

  7. phpStorm怎么解决502 bad gateway(总结整理)

    phpStorm怎么解决502 bad gateway(总结整理) 一.总结 1.配置 php解释器. 二.phpStorm解释器与服务器配置(解决502 bad gateway与404 not fo ...

  8. spring data jpa auditing

    审计日志,记录实体版本的修改信息,创建时间,修改时间,创建人,修改人等 可以采用切片AOP的方式实现,也可以通过Spring Data JPA的审计功能实现 切片方式 Spring AOP中Point ...

  9. 【20.00%】【codeforces 44G】Shooting Gallery

    time limit per test5 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  10. expdp备份速度慢的问题

    --出口分析 --两个时间报表分析,该声明仅出口4,059,292  数据,10之后分钟数据没有继续出口              Snap Id  Snap Time  Sessions  Curs ...