简介

简单来说,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. yield return

    一次被yield return坑的历程.   事情的经过是这样的: 我用C#写了一个很简单的一个通过迭代生成序列的函数. public static IEnumerable<T> Iter ...

  2. USB 3.0规范中译本 第6章 物理层

    本文为CoryXie原创译文,转载及有任何问题请联系cory.xie#gmail.com. 6.1 物理层概览 物理层定义超高速总线的信号技术.本章定义超高速物理层的电气要求. 本节定义超高速组件之间 ...

  3. Home界面的启动

    继上篇文章Launcher进程的启动,我们继续分析Home界面的启动. public final class ActivityThread { ...... public static final v ...

  4. Use Word 2010's Navigation Pane to quickly reorganize documents

    Use Word 2010's Navigation Pane to quickly reorganize documents http://www.techrepublic.com/blog/mic ...

  5. Java序列化机制中的类版本号问题

    原文地址:http://yanwushu.sinaapp.com/java_serialversionuid/ 内容简单介绍 某些实现了serializable接口的java类中会看到名称为seria ...

  6. PhpStorm常用快捷键(不多够用)

    PhpStorm常用快捷键(不多够用) 一.总结 一句话总结: 1.前进 解答:Ctrl+shift+ z 2.跳转到指定行数 解答:Ctrl+G 3.块注释 解答:ctrl + shift + / ...

  7. NOIP模拟 回文序列 - DP

    题意: 如果一个字符串等于s和t的长度之和(\(l \le 50\)),并且可以拆成两个字符串子序列,分别与s和t相同,那么它就是s和t的一个并字符串(从字符串中选出若干个可以不连续的字符按照原序列写 ...

  8. js进阶 9-12 如何将数组的信息添加到下拉列表

    js进阶 9-12 如何将数组的信息添加到下拉列表 一.总结 一句话总结:创建出select的option,然后selectElement的add方法加进 selectElement 即可 1.创建出 ...

  9. 使用jsp,tomcat实现用户登录注册留言的代码

    以下jsp中,未使用样式表对网页进行排版和表单的验证(每个jsp的表单填写的时候应该进行空值与空格的验证,防止提交时出错) 所有错误,链接到error.jsp <%@ page language ...

  10. Erlang 命令行监控工具

    http://www.cnblogs.com/me-sa/archive/2012/11/22/erlang_vm_monitor_text_mode.html 之前介绍过一个Erlang的Web监控 ...