• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Introduction to iOS development with Xamarin
 

Introduction to iOS development with Xamarin

on

  • 681 views

 

Statistics

Views

Total Views
681
Views on SlideShare
418
Embed Views
263

Actions

Likes
0
Downloads
2
Comments
0

4 Embeds 263

http://www.vifani.com 159
http://vifani.com 72
http://www.slideee.com 16
http://localhost 16

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introduction to iOS development with Xamarin Introduction to iOS development with Xamarin Presentation Transcript

    • Mobile Development Day 2014 Introduction to iOS Development with Xamarin Raffaele Fanizzi Microsoft MCTS & MCPD
    • Mobile Development Day 2014 Chi sono • Raffaele Fanizzi • Membro di DotNetSide – www.dotnetside.org • Microsoft Certified Professional Developer – MCPD • Microsoft Certified Technical Specialist – MCTS • Email – vifani@gmail.com • Blog – www.vifani.com • LinkedIn – www.linkedin.com/in/raffaelefanizzi • Twitter - @raffaelefanizzi
    • Mobile Development Day 2014 Agenda • Introduzione a Xamarin • Xamarin.iOS • Code Session – Nuovo progetto – UIView e Xcode Interface Builder – Accesso a foto e fotocamera – Navigazione – UITableView – Core Animation – Core Image – Social Framework • Limitazioni e costi • Domande e (spero) risposte
    • Mobile Development Day 2014 Introduzione a Xamarin • Mono è un’implementazione opensource del .NET Framework • E’ composto essenzialmente da un Common Language Runtime e dalle Base Class Library • E’ legale e supportato – Sfrutta gli standard ECMA pubblicati da Microsoft sul .NET Framework – Sfrutta il codice rilasciato con license opensource sempre da Microsoft • Disponibile per sistemi operativi Windows, Mac OS X, Linux, Solaris, ecc…
    • Mobile Development Day 2014 Introduzione a Xamarin • Inizialmente sviluppato da Miguel de Icaza (GNOME, Novell, Ximian) • Oggi è il core business di Xamarin • Mono 1.0 – 2004 – C# 1.0, .NET 1.1 • Mono 2.0 – 2008 – C# 2.0, 3.0 e 4.0 – .NET 2.0, 3.0, 3.5 e 4.0 – ASP.NET, MVC • Mono 3.0 – 2012 e 2013 – C# 5.0, Async
    • Mobile Development Day 2014 Introduzione a Xamarin • Mono supporta tutto il .NET Framework tranne – Windows Presentation Foundation – Windows Workflow Foundation – WCF è supportato solo per il sottoinsieme di Silverlight (BasicBinding)
    • Mobile Development Day 2014 Introduzione a Xamarin • Xamarin propone un ecosistema per lo sviluppo multipiattaforma alla cui base c’è Mono • Xamarin Studio è l’IDE di Xamarin per sviluppare con Mono sotto Windows, Mac OS X e Linux
    • Mobile Development Day 2014 Xamarin.IOS • Xamarin.iOS è la soluzione di Xamarin per lo sviluppo di applicazioni native per iOS utilizzando C# e Mono • iOS non consente il funzionamento di compilatori Just In Time • Xamarin.iOS si basa su un compilatore ahead-of-time (AOT) che compila le applicazioni in linguaggio assembly per processori ARM v6, v7 e v7s • Xamarin.iOS espone la totalità dell’SDK CocoaTouch di Apple come classi .NET
    • Mobile Development Day 2014 Xamarin.IOS • Supporta i seguenti assembly del .NET Framework: – System.dll – System.Core.dll – System.Data.dll (ADO.NET) – System.Data.Service.Client.dll (OData support) – System.Json.dll – System.Runtime.Serialization.dll – System.ServiceModel.dll (WCF stack di Silverlight, senza parte server) – System.ServiceModel.Web.dll – System.Transactions.dll – System.Web.Services – System.Xml.dll – System.Xml.Linq.dll
    • Mobile Development Day 2014 Xamarin.IOS • Oltre ai propri assembly: – monotouch.dll (CocoaTouch API) – Mono.Data.Sqlite.dll (SQL Lite ADO.NET provider) – Mono.Data.Tds.dll (supporto a SQL Server) – Mono.Security.dll (API di crittografia) – OpenTK.dll (OpenGL e OpenAL)
    • Mobile Development Day 2014 Xamarin.IOS • Supporta le Portable Class Library compatibili con il suo profilo – Microsoft Compression – Microsoft HTTP Client – Microsoft Immutable Collections – Odata – JSON.NET – …
    • Mobile Development Day 2014 Xamarin.IOS • Perché usare Xamarin.iOS? – Per utilizzare C#
    • Mobile Development Day 2014 Xamarin.IOS
    • Mobile Development Day 2014 Xamarin.IOS
    • Mobile Development Day 2014 Xamarin.IOS • Perché usare Xamarin.iOS? – Per sfruttare le proprie conoscenze in ambito .NET: ADO.NET, WCF, Task Parallel Library, ecc… – Perché le app risultanti sono native né più né meno di quelle sviluppate con XCode
    • Mobile Development Day 2014 Xamarin.IOS • Perché usare Xamarin.iOS? – E’ sviluppato attivamente: ad ogni nuova versione dell’SDK Apple corrisponde entro 24/48 ore una nuova versione – E’ ampiamente supportato: Infragistics, Telerik, Shinobi, SAP, ecc… – E’ utilizzato da grandi nomi: Microsoft, National Instrument
    • Mobile Development Day 2014 Xamarin.IOS Ma quale è il vero motivo per sviluppare app?
    • Mobile Development Day 2014 Xamarin.IOS • Di cosa abbiamo bisogno? – Di un Mac con Mac OS Lion (10.7) o superiore – Xcode (SDK e IDE di sviluppo Apple) – Xamarin Studio (IDE di sviluppo Mono) • E’ possibile usare Visual Studio sotto Windows per scrivere il codice, ma è comunque obbligatoria la presenza di un Mac per l’editing dell’interfaccia grafica, per compilare le app e per rispettare le licenze Apple
    • Mobile Development Day 2014 DEMO: ICARTOLINA
    • Mobile Development Day 2014 CODE SESSION: NUOVO PROGETTO
    • Mobile Development Day 2014 CODE SESSION: UIVIEW E INTERFACE BUILDER
    • Mobile Development Day 2014 CODE SESSION: FOTO E FOTOCAMERA
    • Mobile Development Day 2014 CODE SESSION: NAVIGAZIONE
    • Mobile Development Day 2014 CODE SESSION: UITABLEVIEW
    • Mobile Development Day 2014 CODE SESSION: CORE ANIMATION
    • Mobile Development Day 2014 CODE SESSION: SOCIAL FRAMEWORK
    • Mobile Development Day 2014 CODE SESSION: CORE IMAGE
    • Mobile Development Day 2014 Limitazioni e costi • Si possono usare – Assembly forniti in dotazione – Assembly compilati espressamente come Xamarin.iOS – Portable Class Library • Non si possono usare librerie di terze parti Objective-C
    • Mobile Development Day 2014 Limitazioni e costi • Supporto limitato ai generics – Niente metodi virtuali generici – Niente classi generiche con P/Invoke • Nessun supporto alla generazione dinamica di codice – Niente System.Reflection.Emit • Niente Dynamic Language Runtime (o quasi…) • Per il momento nessun supporto a iOS 64 bit • Nessun supporto a COM
    • Mobile Development Day 2014 Limitazioni e costi
    • Mobile Development Day 2014 Domande e (spero) risposte
    • Mobile Development Day 2014 GRAZIE PER L’ATTENZIONE 