Transcript
Page 1: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Andreano Lanusse | Developer Relations, Embarcadero Blog: www.andreanolanusse.com

Building managed-code cross platform applications with Delphi Prism

Page 2: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Agenda •  Delphi Prism and Cross Platform development •  Mono •  Build/Deploy ASP.NET and Web Service on Linux •  MonoTouch •  Build/Run iPhone application with Delphi Prism •  Q&A

Page 3: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Delphi Prism and Cross Plataform Development

Page 4: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Delphi Prism XE •  Support for the latest .NET 4.0 and Silverlight Technologies

•  New Language and Compiler Features

•  Import or Copy and Paste C# Code as Delphi Prism Code

•  Visual Studio 2010 Shell Based IDE Work with all your data sources

•  Code Obfuscation

•  CodeSite logging system

•  Works with MonoTouch product from Novell to build apps for iPhone OS

Page 5: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Windows Linux Apple

Microsoft .NET 4.0 Mono for Windows

Mono for Linux Mono for OSX iPhone/iPad

Delphi Prism Cross Platform Development

Page 6: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Embarcadero® RAD Studio XE

Page 7: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono

Page 8: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono •  Software platform designed to allow developers to easily create cross

platform applications •  Open Source implementation of Microsoft's .NET Framework •  FREE •  Mono runs on:

–  Linux –  Microsoft Windows –  Mac OS X –  BSD –  Sun Solaris –  Nintendo Wii –  Sony PlayStation 3 –  Apple iPhone

•  It also runs on x86, x86-64, IA64, PowerPC, SPARC (32), ARM, Alpha, s390, s390x (32 and 64 bits)

Page 9: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono Architecture •  Code Execute Engine

–  Just in time compilation –  Ahead-of-Time compilation –  Full Static compilation

•  Garbage Collector •  Class Library •  Common Language Runtime •  Common Language Specification •  Managed and unmanaged code

Page 10: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono - .NET Support •  Mono current version 2.6.7 •  .NET 1.1

–  Core Libraries 1.1: mscorlib, System, System.Xml –  ASP.Net 1.1 and ADO.Net 1.1 –  Winforms/System.Drawing 1.1 –  System.Management - does not map to Linux –  System.EnterpriseServices – deprecated

•  .NET 2.0 –  C# 2.0 (generics) –  Core Libraries 2.0: mscorlib, System, System.Xml –  ASP.NET 2.0 - except WebParts –  ADO.NET 2.0 –  Winforms/System.Drawing 2.0 - does not support right-to-left

•  .NET 3.0 –  WCF - silverlight 2.0 subset completed –  WPF - no plans to implement –  WF - will implement WF 4 instead on future versions of Mono

Page 11: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono - .NET Support, cont. •  Mono currently supports everything in .NET 3.5 except WPF and WF,

limited WCF

•  .NET 3.5 –  C# 3.0 –  System.Core –  LINQ –  ASP.NET 3.5 –  ASP.NET MVC –  LINQ to SQL - Mostly done, but a few features missing

•  The upcoming version of Mono will support: –  C# 4.0 –  LINQ 4.0 –  ASP.NET 4.0

Page 12: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono - Database support •  Provides ADO.NET Data Providers for many databases, like:

–  PostgreSQL –  SQLite –  InterBase/Firebird –  MySQL –  ODBC –  Oracle –  SQL Server –  Sybase –  DB2

•  Object Persistent Libraries and Object Databases –  NHibernate

Page 13: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Mono – Desktop and Web •  Web

–  Mod_Mono Apache 2.0/2.2 module that provides ASP.NET support for Apache

•  Desktop –  Mono provide toolkit for desktop development –  Toolkit support:

•  GTK# •  Windows.Forms •  Qyoto •  Qt4Dotnet •  Cocoa# •  wxNet

Page 14: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Demo •  Build and deploy .NET Web Service on Ubuntu •  Build and deploy ASP.NET database application on Ubuntu

Page 15: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch

Page 16: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch •  Software development kit for Mac OS X

•  Allows developers to use.NET programming languages to create native applications for Apple iPhone/iPod and Apple iPad Touch devices.

•  Based on the Mono framework and compatible with .NET 2.0

•  MonoTouch "Apps" are compiled down to machine code targeted specifically at the Apple iPhone.

Page 17: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch SDK •  Static compiler that turns .NET executables and libraries into native

applications

•  There is no JIT or interpreter shipped with your application, only native code

•  MonoTouch supports: –  garbage collection –  multi-threading –  many features of .NET 3.5, including LINQ, with some exceptions

•  Database assemblies part of MonoTouch, like: –  Mono.Data.Sqlite.dll –  Mono.Data.Tds.dll

Page 18: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch - Support •  MonoTouch current version 3.0.8

•  Support for iPhone 4 SDK

•  Platform Support –  iOS 4 (iPhone and iPod devices) –  iPhoneOS 3.2 (iPad) –  iPhoneOS 3.0 (iPhone and iPod devices)

Page 19: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch – Requirements for Development and Deploy

•  DEVELOPMENT –  Mac machine –  Delphi Prism XE license –  MonotTouch SDK is FREE for development and testing against the

iPhone simulator only

•  DEPLOYMENT –  Join the Apple Developer Program ($99/year), and must adhere to

Apple’s iPhone developer license terms –  Obtain a MonoTouch deployment license from Novell for distribution

on the Apple App Store •  Professional Edition •  Enterprise Edition

Page 20: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

MonoTouch – How to start •  Download Novell’s MonoTouch

–  http://monotouch.net/DownloadTrial •  Install MonoDevelop IDE – included in Delphi Prism ISO

–  Don’t install or update for a different version of MonoDevelop •  Start developing iPhone and iPad applications in Delphi Prism language.

Page 21: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Demo •  Build a web browser application

Page 22: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Q&A •  My Blog – www.andreanolanusse.com •  Twitter - @andreanolanusse •  Email: [email protected]

•  References –  Mono - http://www.mono-project.com

–  MonoTouch – http://monotouch.net

–  Book: Professional iPhone Programming with MonoTouch and .NET/C# Remember Delphi Prism allow you to copy/past C# code as Delphi Prism

•  Embarcadero Developer Network – http://edn.embarcadero.com

Page 23: Delphi Prism for iPhone/iPad and Linux with Mono and Monotouch

Thank you!!! •  My Blog – www.andreanolanusse.com •  Twitter - @andreanolanusse •  Email: [email protected]

•  References –  Mono - http://www.mono-project.com

–  MonoTouch – http://monotouch.net

–  Book: Professional iPhone Programming with MonoTouch and .NET/C# Remember Delphi Prism allow you to copy/past C# code as Delphi Prism

•  Embarcadero Developer Network – http://edn.embarcadero.com


Top Related