30
请替换讲义标题 移动跨平台开发一步到位 胡德民 微软中国开发工具及平台事业部 高级产品经理 林泰宏 昕力资讯资深顾问 MSDNCSDNIT采购一省到底! http://msdn.csdn.net

请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

  • Upload
    others

  • View
    56

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

请替换讲义标题 移动跨平台开发一步到位

胡德民 微软中国开发工具及平台事业部 高级产品经理

林泰宏 昕力资讯资深顾问

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 2: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

多种平台下开发企业的困惑

不同的移动平台

Windows

Andriod

iOS

Android Java

iOS Objective C

8 Windows

C#/C++/WinJS C#/C++

Phone

不同的开发工具/语言

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 3: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

跨平台?价值交付障碍

| |

代码如何有一致性的管理? 版本如何进行一致性的控管? 不同平台的App版本如何同时发布?

如何让研发成本有最经济的回报? 如何让开发者个人的价值最大化?

买软件送硬件就在CSDN企业会员服务 http://ems.csdn.net 买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 4: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Visual Studio 帮助您实现真正跨平台!

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 5: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Visual Studio 2013 让软件开发更敏捷

规划 Agile Portfolio Management

Kanban Customization

Work item tagging

开发 Team Room

Git

Code Information Indicators

.NET Memory Dump Analyzer

Load Testing as a Service

运维 Visual Studio and System Center integration

Performance Events

Integrated Release Management

交付

Configuration-based deployments

建立价值 | 团队紧密连结 | 改变交付模式

Build | Measure | Learn

团队协作

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 6: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 7: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Agenda

企业进行移动开发所面临的挑战

Xamarin 简介

使用 C# 开发 Android 及 iOS Apps

移动跨平台开发的最佳实践

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 8: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Agenda

企业进行移动开发所面临的挑战

Xamarin 简介

使用 C# 开发 Android 及 iOS Apps

移动跨平台开发的最佳实践

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 9: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

委外开发或自行开发

买软件送硬件就在CSDN企业会员服务 http://ems.csdn.net 买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 10: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

委外开发及维护

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 11: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

自行培养开发团队做不同平台的开发, 成本很高.

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 12: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

从前开发App….

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 13: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

现在….

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 14: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Agenda

企业进行移动开发所面临的挑战

Xamarin 简介

使用 C# 开发 Android 及 iOS Apps

移动跨平台开发的最佳实践

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 15: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Mono Project 的历史

2001 年在O’Reilly conference发表Mono project

2004 年发表C# 1.0 支援

2006 年发表C# 2.0 支援

2008 年发表C# 3.0 支援

2009 年发表MonoTouch, 支援iOS

2010 年发表C# 4.0 支援

2011 年发表Mono for Android , 支援Android

2012 年发表C# 5.0 支援

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 16: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

LINQ Easy XML parsing

Lambda Parallel LINQ

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 17: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Xamarin 如何运作?

针对iOS SDK 及 Android SDK做一对一对应

在iOS平台透过AOT编译直接编译为ARM机器码

在Android平台透过JIT编译直接编译为ARM机器码

透过良好的设计, 可以在不同平台共享程序代码

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 18: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Why Xamarin ?

任何在Objective-C 及 Java可以做的, 都可以在C#上编写.

实时更新 – 与Apple同一天推出iOS SDK的对应版本.

直接编译为原生的机器码,在执行时期有绝佳的效能表现.

与Visual Studio 2010/2012/2013及TFS整合.

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 19: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Agenda

企业进行移动开发所面临的挑战

Xamarin 简介

使用 C# 开发 Android 及 iOS Apps

移动跨平台开发的最佳实践

所有代码都在 : https://github.com/Terry-Lin/MDCC

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 20: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

存取Web Service

.NET 2.0 SOAP

WCF/ RESTFUL

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 21: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

图表组件

Bubble Radar Candle

Pie FastLine Line买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 22: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

数据库加密

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 23: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

扫描/ 生成条形码毫不费力

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 24: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

APNS/ GCM 推送服务

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 25: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

Agenda

企业进行移动开发所面临的挑战

Xamarin 简介

使用 C# 开发 Android 及 iOS Apps

移动跨平台开发的最佳实践

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 26: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

跨平台开发-代码共用

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 27: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

跨平台开发范例

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 28: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

参考信息:

昕力Xamarin技术文档 http://thinkpower.info/xamarin/cn/Article_01.aspx?idx=01#xamarin_top Xamarin 官方技术文档: http://docs.xamarin.com/

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 29: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

29

Any Questions ?

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net

Page 30: 请替换讲义标题 - CSDNXamarin 如何运作? 针对iOS SDK 及 Android SDK做一对一 对应 在iOS平台透过AOT编译直接编译为ARM 机器码 在Android平台透过JIT编译直接编译为

谢 谢!

买MSDN上CSDN,IT采购一省到底! http://msdn.csdn.net