Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
基于Xamarin 2.0的跨平台移动开发
Search
cngump
May 06, 2013
Programming
0
140
基于Xamarin 2.0的跨平台移动开发
基于Xamarin 2.0的跨平台移动开发
cngump
May 06, 2013
Tweet
Share
More Decks by cngump
See All by cngump
iOS开发中的MVC
cngump
2
1.8k
构造基于Coretext的排版引擎
cngump
1
450
IM DIY
cngump
1
250
Mac OS APP 的沙盒和相关审核技术
cngump
0
540
Other Decks in Programming
See All in Programming
Perplexity Slack Botを作ってAI活用を進めた話 / AI Engineering Summit プレイベント
n3xem
0
620
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
120
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
複数アプリケーションを育てていくための共通化戦略
irof
10
3.7k
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
2.9k
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
180
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
21
5.9k
インターフェース設計のコツとツボ
togishima
2
690
PT AI без купюр
v0lka
0
230
技術懸念に立ち向かい 法改正を穏便に乗り切った話
pop_cashew
0
1.3k
#QiitaBash TDDでAIに設計イメージを伝える
ryosukedtomita
2
1.7k
從零到一:搭建你的第一個 Observability 平台
blueswen
1
830
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Building an army of robots
kneath
306
45k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Bash Introduction
62gerente
614
210k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
KATA
mclloyd
29
14k
Facilitating Awesome Meetings
lara
54
6.4k
Documentation Writing (for coders)
carmenintech
71
4.9k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Music & Morning Musume
bryan
46
6.6k
Transcript
基于Xamarin 2.0的跨平台移动开发 华南师范⼤大学⺴⽹网络教育学院程序开发总监 卢建晖 13年4月20⽇日星期六
概要 • ⾃自我介绍 • 谈谈移动开发 • Mono • Xamarin •
CrossPlatform 13年4月20⽇日星期六
⾃自我介绍 关于我司的应⽤用可以访问 http://app.gdou.com 13年4月20⽇日星期六
移动开发 iOS 2007 .9 Android 2008 .10 WindowsPhone 2010 .10
Windows 8/RT 2012.10 13年4月20⽇日星期六
Windows 8/RT iOS Windows Phone Android WinJS+Html5/C#+XAML(Visual Studio) C#+XAML(Visual Studio)
Java+XML(Eclipse) Objective-C+.xib/.storyboard(Xcode) 13年4月20⽇日星期六
iOS Windows (Windows Phone/Windows 8) Android 企业内部的移动开发 proj1 proj2 proj3
proj4 proj1 proj2 proj3 proj4 proj4 proj3 proj1 proj2 13年4月20⽇日星期六
企业在移动终端开发中所⾯面临的问题 平台越多,开发成本就越⼤大 内部员⼯工就是码农,需要不断学习,⽽而且培训费⽤用⾼高 管理统筹难 ...................... ⽤用⼀一种语⾔言,便捷的开发⼯工具去简化开发团队? 13年4月20⽇日星期六
Mono Mono是跨平台的.net 开发环境,之前是⼀一个由Novell 公司主持的项⺫⽬目。该项⺫⽬目的⺫⽬目标是创建⼀一系列符合ECMA 标 准(Ecma-334 和Ecma-335)的.NET ⼯工具,包括C# 编译器和共通语⾔言执⾏行平台。与微软的.NET Framework
不同,Mono 项⺫⽬目不仅可以运⾏行于Windows 系统上,还可以运⾏行于Linux,FreeBSD,Unix,Mac OS X 和Solaris。 App Class Library Common Language Runtime Operating System MonoTouch MonoAndroid MonoWeb C# 13年4月20⽇日星期六
MonoTouch(Mono for iOS) 使⽤用静态编译(Ahead-Of-Time)⽅方式将C#代码编译为 ARM⼆二进制代码。 这⾥里要说明⼀一下,使⽤用MonoTouch创建的每⼀一个应⽤用程序都是独⽴立的,也就是说应⽤用程 序所需要的东⻄西都要打包,之所以这样是因为iPhone不允许使⽤用共享库。MonoTouch通过 绑定⽅方式向C#公开iPhone的原⽣生库,因⽽而不⽤用在语⾔言之间做转换。 MonoDroid(Mono for
Android) 是将C# 代码编译成IL封装到MonoVM+JIT. 13年4月20⽇日星期六
MonoTouch Demo 13年4月20⽇日星期六
为何选择Mono UI层(原⽣生UI) UI逻辑组织 核⼼心 数据层 数据逻辑层 安全层 业务逻辑层 服务访问层 虽然每个移动端的UI展现不同,但是核⼼心功能
都是⼀一样,⽽而这些代码是可以重⽤用 。虽然可能 调⽤用类库不⼀一样,但是也可以通过判断预加载 进⾏行处理。 13年4月20⽇日星期六
iOS UI层(原⽣生UI) UI逻辑组织 核⼼心 数据层 数据逻辑层 安全层 业务逻辑层 服务访问层 Android
UI层(原⽣生UI) UI逻辑组织 WindowsPhone UI层(原⽣生UI) UI逻辑组织 Windows 8/RT UI层(原⽣生UI) UI逻辑组织 通过C#实现跨移动平台的逻辑代码共享 13年4月20⽇日星期六
Xamarin 2.0 新的开始 新的Xamain Studio 作为Visual Studio 的插件,进⾏行iOS/Android的开发 组件商城(http://components.xamarin.com/) aync
/ await 13年4月20⽇日星期六
再谈跨平台 设计模式 MVC / MVP / MVVM 代码共享 file share
link 异步 虽然不同平台在异步线程⽅方⾯面有不同,但是也可以通过C#的语⾔言特性 去优化 Xamarin.Mobile 13年4月20⽇日星期六
在Visual Studio 上的简单Demo 13年4月20⽇日星期六
谢谢 13年4月20⽇日星期六