SlideShare a Scribd company logo
1 of 33
Download to read offline
Mono   .NET
       - 2011.8
•       /       / Jeffrey Zhao /

•
•         http://blog.zhaojie.me/

•         @

• F#, JavaScript, Scala, C#, Python, .NET, Mono...
• Java
Mono
Mono
• Mono                    CLI
     ECMA 335
 •   C# +   +
 •   .NET          CLI

• Xamarin
• Mono   .NET

•       Mono             .NET
Mono .NET
• Microsoft .NET
 •   PC     Windows 7    Windows Server
 •           Win CE     Windows Phone
 •        XBox

• Mono
 •           Windows Linux     OS X     Solaris
 •           iOS    Android
 •        PS3 Wii
C#
                        Windows
   VB.NET
                          Linux
      F#
                          OS X
 JavaScript
              Mono   Windows Phone
Java (IKVM)
                      iPhone / iPad
    Scala
              .NET      XBox 360
IronPython
                       Play Station
  IronRuby
                           Wii
     Boo
                            …
      …
Mono
   Mono

                             Game


                                                      Mono
          Unity C++ Engine
                                                     Runtime


Physics       Graphics       Audios



                                      http://tirania.org/blog/archive/2011/Mar-07.html
Mono
•
    •   SIMS 3
    •   Fusion Fall        MMO
    •        2

•3
• 100            iOS   *

•
                           * http://tirania.org/blog/archive/2009/Jan-07.html
Mono                                               *
•
    •      vs.
    •      vs.

• DeltaEngine    Mono + .NET




                        * http://tirania.org/blog/archive/2011/Mar-07.html
Profile
•
• Microsoft .NET
 •                   Client Profile
 •   Windows Phone            Silverlight
 •
• Mono
 •
 •   iOS   Android
 •
Mono

• Mono 2.10
• C# 4 .NET 4
•       WPF WF   WCF
.NET                               Mono

•       .NET                Mono
    •                              dll

• Mono                .NET
    •   ASP.NET MVC 2 & 3
    •   F#
        Mono                 F#
• Mono.CSharp
• Mono.Cecil
Mono iOS   Android
MonoTouch
Apple Featured
        iCircuit is the premier iPad
        and iPhone app for designing
           and experimenting with
            circuits. Its advanced
        simulation engine can handle
       both analog and digital circuits
        and features realtime always-
         on analysis. It is the perfect
           companion to students,
          hobbyists, and engineers.
London Bike               Diggify *

              * Why we chose MonoTouch to write the Diggify iPhone app
iCoolHunt   Child Timer   Little Gamer
MonoTouch

• Mono iOS
• MonoDevelop + Interface Builder
    •   IB   xib       C#

•
Mono Java
• Java
 •
 •
 •
• Mono
 •
 •
 •            UI
Mono JIT
   IL



               Mono JIT


                            Native
                            Code

Machine with Mono Runtime
……

• Apple
    •
    •
•
    •   JIT
MonoTouch AOT
  IL



       Mono AOT


                     Native
                     Code


                  App with Mono
                     Runtime
MonoTouch
• MonoDevelop
• CocoaTouch.NET
•
•
 •
 •
 •   LINQ
 •   …
CocoaTouch

• MonoTouch
• MonoTouch.Xyz            CocoaTouch Xyz


•
    •   MonoTouch.UIKit.UILabel
    •   CocoaTouch UIKit        UILabel
• Objective-C
    •
    •   NSArray

• MonoTouch
    •   UIView[] Subviews { get; }
    •   NSArray *subviews;

•
•                         .NET


•                            Dispose
    // MonoTouch            IDisposable
    using (var image = UIImage.FromFile("...")) {
        surface.DrawImage(image, 20, 20);
    }
• Mono                 M


• MonoTouch Linker
•             4   5M
•   Mono   iOS

•   Mono   Mac OS X
• Mono CLI
• .NET          Mono

•       Mono

• .NET / Mono
.NET
    Mono
Q &A
Mono for .NET Developers

More Related Content

Similar to Mono for .NET Developers

Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
Jonas Follesø
 

Similar to Mono for .NET Developers (20)

Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
 
C# On The iPhone with MonoTouch at DDD8
C# On The iPhone with MonoTouch at DDD8C# On The iPhone with MonoTouch at DDD8
C# On The iPhone with MonoTouch at DDD8
 
C# on the iPhone with MonoTouch Glasgow
C# on the iPhone with MonoTouch GlasgowC# on the iPhone with MonoTouch Glasgow
C# on the iPhone with MonoTouch Glasgow
 
Italian Alt.Net Conference MonoTouch Session
Italian Alt.Net Conference MonoTouch SessionItalian Alt.Net Conference MonoTouch Session
Italian Alt.Net Conference MonoTouch Session
 
Introduction to Cross Platform Development with Xamarin/ Visual Studio
Introduction to Cross Platform Development with Xamarin/ Visual StudioIntroduction to Cross Platform Development with Xamarin/ Visual Studio
Introduction to Cross Platform Development with Xamarin/ Visual Studio
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
 
WP7, Droid, iPhone, Oh my!
WP7, Droid, iPhone, Oh my!WP7, Droid, iPhone, Oh my!
WP7, Droid, iPhone, Oh my!
 
EastBay.NET - Introduction to MonoTouch
EastBay.NET - Introduction to MonoTouchEastBay.NET - Introduction to MonoTouch
EastBay.NET - Introduction to MonoTouch
 
Introduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for AndroidIntroduction to MonoTouch and Monodroid/Mono for Android
Introduction to MonoTouch and Monodroid/Mono for Android
 
Xamarin v.Now
Xamarin v.NowXamarin v.Now
Xamarin v.Now
 
Mono
MonoMono
Mono
 
Xamarin Tecnhologies
Xamarin TecnhologiesXamarin Tecnhologies
Xamarin Tecnhologies
 
History of Mobile, Mobile application development and secret to be a great de...
History of Mobile, Mobile application development and secret to be a great de...History of Mobile, Mobile application development and secret to be a great de...
History of Mobile, Mobile application development and secret to be a great de...
 
HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기
 
Eco system apps
Eco system appsEco system apps
Eco system apps
 
Droidcon 2011: Mosync mobile framework, Stefan Sels, Tronicum
Droidcon 2011: Mosync mobile framework, Stefan Sels, TronicumDroidcon 2011: Mosync mobile framework, Stefan Sels, Tronicum
Droidcon 2011: Mosync mobile framework, Stefan Sels, Tronicum
 
Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発
 
Applebu
ApplebuApplebu
Applebu
 
Applebu
ApplebuApplebu
Applebu
 
Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発
 

More from jeffz

Wind.js无障碍调试与排错
Wind.js无障碍调试与排错Wind.js无障碍调试与排错
Wind.js无障碍调试与排错
jeffz
 
JavaScript现代化排错实践
JavaScript现代化排错实践JavaScript现代化排错实践
JavaScript现代化排错实践
jeffz
 
Jscex:案例、经验、阻碍、展望
Jscex:案例、经验、阻碍、展望Jscex:案例、经验、阻碍、展望
Jscex:案例、经验、阻碍、展望
jeffz
 
The Evolution of Async Programming (GZ TechParty C#)
The Evolution of Async Programming (GZ TechParty C#)The Evolution of Async Programming (GZ TechParty C#)
The Evolution of Async Programming (GZ TechParty C#)
jeffz
 
深入浅出Jscex
深入浅出Jscex深入浅出Jscex
深入浅出Jscex
jeffz
 
Javascript Uncommon Programming
Javascript Uncommon ProgrammingJavascript Uncommon Programming
Javascript Uncommon Programming
jeffz
 
Jscex: Write Sexy JavaScript (中文)
Jscex: Write Sexy JavaScript (中文)Jscex: Write Sexy JavaScript (中文)
Jscex: Write Sexy JavaScript (中文)
jeffz
 
Jscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScriptJscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScript
jeffz
 
单点登录解决方案的架构与实现
单点登录解决方案的架构与实现单点登录解决方案的架构与实现
单点登录解决方案的架构与实现
jeffz
 
Documentation Insight技术架构与开发历程
Documentation Insight技术架构与开发历程Documentation Insight技术架构与开发历程
Documentation Insight技术架构与开发历程
jeffz
 
Windows Phone应用开发心得
Windows Phone应用开发心得Windows Phone应用开发心得
Windows Phone应用开发心得
jeffz
 
分布式版本管理
分布式版本管理分布式版本管理
分布式版本管理
jeffz
 
使用.NET构建轻量级分布式框架
使用.NET构建轻量级分布式框架使用.NET构建轻量级分布式框架
使用.NET构建轻量级分布式框架
jeffz
 
针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构
jeffz
 
企业开发领域的语言特性
企业开发领域的语言特性企业开发领域的语言特性
企业开发领域的语言特性
jeffz
 
The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)
jeffz
 
The Evolution of Async-Programming on .NET Platform (.Net China, C#)
The Evolution of Async-Programming on .NET Platform (.Net China, C#)The Evolution of Async-Programming on .NET Platform (.Net China, C#)
The Evolution of Async-Programming on .NET Platform (.Net China, C#)
jeffz
 
The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)
jeffz
 
大话程序员可用的算法
大话程序员可用的算法大话程序员可用的算法
大话程序员可用的算法
jeffz
 

More from jeffz (20)

Wind.js无障碍调试与排错
Wind.js无障碍调试与排错Wind.js无障碍调试与排错
Wind.js无障碍调试与排错
 
JavaScript现代化排错实践
JavaScript现代化排错实践JavaScript现代化排错实践
JavaScript现代化排错实践
 
Jscex:案例、阻碍、体会、展望
Jscex:案例、阻碍、体会、展望Jscex:案例、阻碍、体会、展望
Jscex:案例、阻碍、体会、展望
 
Jscex:案例、经验、阻碍、展望
Jscex:案例、经验、阻碍、展望Jscex:案例、经验、阻碍、展望
Jscex:案例、经验、阻碍、展望
 
The Evolution of Async Programming (GZ TechParty C#)
The Evolution of Async Programming (GZ TechParty C#)The Evolution of Async Programming (GZ TechParty C#)
The Evolution of Async Programming (GZ TechParty C#)
 
深入浅出Jscex
深入浅出Jscex深入浅出Jscex
深入浅出Jscex
 
Javascript Uncommon Programming
Javascript Uncommon ProgrammingJavascript Uncommon Programming
Javascript Uncommon Programming
 
Jscex: Write Sexy JavaScript (中文)
Jscex: Write Sexy JavaScript (中文)Jscex: Write Sexy JavaScript (中文)
Jscex: Write Sexy JavaScript (中文)
 
Jscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScriptJscex: Write Sexy JavaScript
Jscex: Write Sexy JavaScript
 
单点登录解决方案的架构与实现
单点登录解决方案的架构与实现单点登录解决方案的架构与实现
单点登录解决方案的架构与实现
 
Documentation Insight技术架构与开发历程
Documentation Insight技术架构与开发历程Documentation Insight技术架构与开发历程
Documentation Insight技术架构与开发历程
 
Windows Phone应用开发心得
Windows Phone应用开发心得Windows Phone应用开发心得
Windows Phone应用开发心得
 
分布式版本管理
分布式版本管理分布式版本管理
分布式版本管理
 
使用.NET构建轻量级分布式框架
使用.NET构建轻量级分布式框架使用.NET构建轻量级分布式框架
使用.NET构建轻量级分布式框架
 
针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构
 
企业开发领域的语言特性
企业开发领域的语言特性企业开发领域的语言特性
企业开发领域的语言特性
 
The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)The Evolution of Async-Programming on .NET Platform (TUP, Full)
The Evolution of Async-Programming on .NET Platform (TUP, Full)
 
The Evolution of Async-Programming on .NET Platform (.Net China, C#)
The Evolution of Async-Programming on .NET Platform (.Net China, C#)The Evolution of Async-Programming on .NET Platform (.Net China, C#)
The Evolution of Async-Programming on .NET Platform (.Net China, C#)
 
The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)The Evolution of Async-Programming (SD 2.0, JavaScript)
The Evolution of Async-Programming (SD 2.0, JavaScript)
 
大话程序员可用的算法
大话程序员可用的算法大话程序员可用的算法
大话程序员可用的算法
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Mono for .NET Developers

  • 1. Mono .NET - 2011.8
  • 2. / / Jeffrey Zhao / • • http://blog.zhaojie.me/ • @ • F#, JavaScript, Scala, C#, Python, .NET, Mono... • Java
  • 4. Mono • Mono CLI ECMA 335 • C# + + • .NET CLI • Xamarin • Mono .NET • Mono .NET
  • 5. Mono .NET • Microsoft .NET • PC Windows 7 Windows Server • Win CE Windows Phone • XBox • Mono • Windows Linux OS X Solaris • iOS Android • PS3 Wii
  • 6. C# Windows VB.NET Linux F# OS X JavaScript Mono Windows Phone Java (IKVM) iPhone / iPad Scala .NET XBox 360 IronPython Play Station IronRuby Wii Boo … …
  • 7. Mono Mono Game Mono Unity C++ Engine Runtime Physics Graphics Audios http://tirania.org/blog/archive/2011/Mar-07.html
  • 8. Mono • • SIMS 3 • Fusion Fall MMO • 2 •3 • 100 iOS * • * http://tirania.org/blog/archive/2009/Jan-07.html
  • 9. Mono * • • vs. • vs. • DeltaEngine Mono + .NET * http://tirania.org/blog/archive/2011/Mar-07.html
  • 10. Profile • • Microsoft .NET • Client Profile • Windows Phone Silverlight • • Mono • • iOS Android •
  • 11. Mono • Mono 2.10 • C# 4 .NET 4 • WPF WF WCF
  • 12. .NET Mono • .NET Mono • dll • Mono .NET • ASP.NET MVC 2 & 3 • F# Mono F#
  • 14. Mono iOS Android
  • 16. Apple Featured iCircuit is the premier iPad and iPhone app for designing and experimenting with circuits. Its advanced simulation engine can handle both analog and digital circuits and features realtime always- on analysis. It is the perfect companion to students, hobbyists, and engineers.
  • 17. London Bike Diggify * * Why we chose MonoTouch to write the Diggify iPhone app
  • 18. iCoolHunt Child Timer Little Gamer
  • 19. MonoTouch • Mono iOS • MonoDevelop + Interface Builder • IB xib C# •
  • 20. Mono Java • Java • • • • Mono • • • UI
  • 21. Mono JIT IL Mono JIT Native Code Machine with Mono Runtime
  • 22. …… • Apple • • • • JIT
  • 23. MonoTouch AOT IL Mono AOT Native Code App with Mono Runtime
  • 25. CocoaTouch • MonoTouch • MonoTouch.Xyz CocoaTouch Xyz • • MonoTouch.UIKit.UILabel • CocoaTouch UIKit UILabel
  • 26. • Objective-C • • NSArray • MonoTouch • UIView[] Subviews { get; } • NSArray *subviews; •
  • 27. .NET • Dispose // MonoTouch IDisposable using (var image = UIImage.FromFile("...")) { surface.DrawImage(image, 20, 20); }
  • 28. • Mono M • MonoTouch Linker • 4 5M
  • 29. Mono iOS • Mono Mac OS X
  • 30. • Mono CLI • .NET Mono • Mono • .NET / Mono
  • 31. .NET Mono
  • 32. Q &A