{"id":6649,"date":"2011-04-14T15:16:23","date_gmt":"2011-04-14T13:16:23","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=6649"},"modified":"2011-04-14T15:16:23","modified_gmt":"2011-04-14T13:16:23","slug":"xcode-4-scopriamo-le-novita-introdotte-con-il-nuovo-ambiente-di-sviluppo-apple","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/xcode-4-scopriamo-le-novita-introdotte-con-il-nuovo-ambiente-di-sviluppo-apple\/","title":{"rendered":"XCode 4: scopriamo le novit\u00e0 introdotte con il nuovo ambiente di sviluppo Apple"},"content":{"rendered":"<p><a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona.png\" alt=\"Xcode-4-devAPP-icona\" title=\"Xcode-4-devAPP-icona\" width=\"175\" height=\"175\" class=\"alignleft size-full wp-image-6636\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona.png 175w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona-150x150.png 150w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona-92x92.png 92w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-devAPP-icona-64x64.png 64w\" sizes=\"auto, (max-width: 175px) 100vw, 175px\" \/><\/a> Dopo una lunga gestazione <strong>Xcode 4<\/strong> \u00e8 finalmente tra noi. Anche se ha ancora qualche problemuccio &#8211; io stesso ho avuto modo in pi\u00f9 occasioni di verificarne l&#8217;instabilit\u00e0 e il notevole consumo di risorse &#8211; \u00e8 tempo di imparare ad usarlo, perch\u00e9 sono pronto a scommettere che entro breve Xcode 3 verr\u00e0 definitivamente messo in pensione (ne \u00e8 prova il fatto che il link da cui scaricarlo \u00e8 stato ben nascosto).<\/p>\n<p>Semplificando al massimo per chi non lo conoscesse ancora, Xcode \u00e8 l&#8217;IDE (Integrated Development Environment) per lo sviluppo di software per Mac OS X e iOS, cio\u00e8, in parole povere, il Visual Studio secondo Apple. Poich\u00e9 ci accompagna in ogni sviluppo, \u00e8 fondamentale padroneggiarlo perfettamente.<!--more--><\/p>\n<p>Prima di entrare nei dettagli cominciamo con una rapida panoramica di quelle che a mio avviso sono le pi\u00f9 importanti novit\u00e0 introdotte.<\/p>\n<h4>Interfaccia grafica<\/h4>\n<p>    L&#8217;interfaccia grafica \u00e8 stata completamente rivista. Bisogna prenderci la mano, ma finalmente vengono risolti i problemi di usabilit\u00e0 che affliggevano la precedente versione 3. In particolare compare una nuova barra laterale, detta &#8220;Navigator area&#8221;, che permette di separare in modo pi\u00f9 logico e netto quanto prima era messo un po&#8217; alla rinfusa nella barra &#8220;Groups &#038; Files&#8221;.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-01.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-01.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-01\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-01\" width=\"270\" height=\"396\" class=\"aligncenter size-full wp-image-6637\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-01.jpg 270w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-01-204x300.jpg 204w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-01-102x150.jpg 102w\" sizes=\"auto, (max-width: 270px) 100vw, 270px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Nuovo compilatore<\/h4>\n<p>    E&#8217; stato introdotto il nuovo compilatore LLVM 2.0 e il relativo debugger LLDB. E questo \u00e8 a parer mio il punto pi\u00f9 interessante. In parte perch\u00e9, come dichiara Apple, LLVM ci mette meno tempo a compilare rispetto a GCC e genera binari &#8220;che vanno pi\u00f9 veloci&#8221; (ma rimanga tra noi: ammesso che sia vero, \u00e8 difficile accorgersene). Ma soprattutto perch\u00e9, e questo \u00e8 il vero vantaggio, mentre GCC \u00e8 sostanzialmente una &#8220;scatola nera&#8221; che dati in input i file sorgente genera il binario, ora Xcode pu\u00f2 collegarsi e sfruttare il parser di LLVM per fornire un autocompletamento del codice degno finalmente di questo nome, pi\u00f9 alcuni miglioramenti notevoli nel refactoring e perfino nella colorazione della sintassi.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-02.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-02.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-02\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-02\" width=\"465\" height=\"65\" class=\"aligncenter size-full wp-image-6638\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-02.jpg 465w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-02-300x41.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-02-150x20.jpg 150w\" sizes=\"auto, (max-width: 465px) 100vw, 465px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Integrazione nell&#8217;IDE di Interface Builder<\/h4>\n<p>    Interface Builder \u00e8 stato integrato nell&#8217;IDE di Xcode. Anche questo punto, che potrebbe essere frettolosamente classificato come semplice finezza grafica, rappresenta in realt\u00e0 un notevole passo in avanti: finalmente possiamo disporre dell&#8217;autocompletamento anche per i Cocoa Bindings dentro i NIB e, soprattutto, possiamo farci creare in automatico il codice di outlet e action.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-03.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-03.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-03\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-03\" width=\"550\" height=\"249\" class=\"aligncenter size-full wp-image-6639\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-03.jpg 550w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-03-300x135.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-03-150x67.jpg 150w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Schemes<\/h4>\n<p>    Sono stati introdotti gli <em>schemes<\/em>. Al posto di specificare, in punti diversi, l&#8217;SDK da usare, la configurazione di build, il target e l&#8217;eseguibile da lanciare, in Xcode 4 possiamo semplicemente scegliere lo <em>scheme<\/em> da utilizzare. Esso definisce la configurazione da usare quando dal men\u00f9 Product scegliamo una tra le azioni <em>run<\/em>, <em>test<\/em>, <em>profile<\/em>, <em>analyze<\/em> o <em>archive<\/em>. Ciascuna di esse viene usata in momenti ben precisi: l&#8217;azione run, ad esempio, viene usata quando vogliamo eseguire un test sul simulatore o su un device di test; archive invece porta alla generazione del binario per la distribuzione sull&#8217;App Store. In attesa di un nostro approfondimento, per maggiori informazioni consigliamo la lettura di <a href=\"http:\/\/pilky.me\/view\/17\" target=\"_blank\">questo articolo<\/a>.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-04.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-04.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-04\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-04\" width=\"269\" height=\"212\" class=\"aligncenter size-full wp-image-6640\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-04.jpg 269w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-04-150x118.jpg 150w\" sizes=\"auto, (max-width: 269px) 100vw, 269px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Workspace<\/h4>\n<p>    Sono stati introdotti i workspace. Xcode 4 finalmente pu\u00f2 gestire i workspace, ovvero contenitori di progetti legati tra loro. I workspace comportano diversi benefici, come la gestione automatica delle dipendenze tra i progetti e l&#8217;indicizzazione (e quindi l&#8217;autocompletamento) estesi a tutti i progetti del workspace.<\/p>\n<h4>Migliorato il supporto a SVN, GIT &#8230;<\/h4>\n<p>    E&#8217; stato migliorato il supporto ai sistemi di controllo delle versioni (Subversion e GIT). Non finir\u00f2 mai di ripetere quanto sia importante un sistema di controllo delle versioni, anche quando si lavora da soli. Finalmente, con Xcode 4 diventa estremamente pi\u00f9 piacevole e veloce usare SVN. Ad esempio, se apriamo un progetto ottenuto facendo un checkout, non dobbiamo pi\u00f9 fare alcuna configurazione manuale: Xcode lo riconosce ed \u00e8 immediatamente operativo. Attraverso il nuovo Version editor diventa anche molto pi\u00f9 comodo confrontare versioni diverse dello stesso file. Inoltre, Xcode 4 ha rimosso il supporto a CSV, l&#8217;antenato di SVN, sostituendolo con GIT, un sistema di controllo delle versioni distribuito (purtroppo per il momento non si parla di Mercurial).<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-06.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-06.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-06\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-06\" width=\"263\" height=\"162\" class=\"aligncenter size-full wp-image-6641\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-06.jpg 263w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-06-150x92.jpg 150w\" sizes=\"auto, (max-width: 263px) 100vw, 263px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Assistant<\/h4>\n<p>    E&#8217; stato introdotto l&#8217;Assistant. Esso non \u00e8 altro che un secondo pannello laterale che complementa il file sul quale stiamo lavorando. Per i file sorgenti, il comportamento di default dell&#8217;Assistant \u00e8 di visualizzare la controparte del file su cui stiamo lavorando. Ad esempio, dato un file di implementazione (.m), l&#8217;Assistant visualizza il corrispondente file di header (.h), o viceversa. E&#8217; comunque molto configurabile: possiamo dirgli di mostrare la classe padre, il NIB, e cos\u00ec via. Per sfruttare appieno l&#8217;Assistant \u00e8 conveniente usare uno o pi\u00f9 monitor di dimensioni generose.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-07.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-07.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-07\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-07\" width=\"550\" height=\"363\" class=\"aligncenter size-full wp-image-6642\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-07.jpg 550w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-07-300x197.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-07-150x98.jpg 150w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Live Issue e Fix-it<\/h4>\n<p>    Sono stati introdotti i Live Issue e Fix-it. L&#8217;integrazione con il nuovo compilatore LLVM permette a Xcode di parsare il codice mentre lo digitiamo, facendo un controllo in tempo reale sulla sintassi, evidenziando ogni errore trovato (Live Issue) e, in alcuni casi, addirittura offrendosi di correggerlo in automatico (Fix-it).<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-08.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-08.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-08\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-08\" width=\"550\" height=\"165\" class=\"aligncenter size-full wp-image-6643\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-08.jpg 550w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-08-300x90.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-08-150x45.jpg 150w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Behavior<\/h4>\n<p>    Sono stati introdotti i Behavior. Attraverso il nuovo pannello Behavior all&#8217;interno delle preferenze di Xcode 4, si possono specificare delle azioni da compiere al verificarsi di particolari eventi. Ad esempio, possiamo fare in modo che Xcode apra in automatico il pannello di debug quando viene raggiunto un breakpoint, oppure che apra l&#8217;Issue Navigator quando una build fallisce.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-09.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-09.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-09\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-09\" width=\"550\" height=\"402\" class=\"aligncenter size-full wp-image-6644\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-09.jpg 550w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-09-300x219.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-09-150x109.jpg 150w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Supporto per i tab<\/h4>\n<p>Xcode 4 supporta i tab, anche se in modo diverso rispetto agli altri IDE come Visual Studio: ciascun tab rappresenta una vista completamente indipendente dell&#8217;intera area di lavoro (incluse, quindi, le eventuali barre laterali e inferiori). Bisogna abituarcisi, ma possono effettivamente risultare molto comodi. Per aprire un nuovo tab occorre andare su File > New Tab (oppure usare la scorciatoia da tastiera CMD + T).<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-10.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-10.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-10\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-10\" width=\"550\" height=\"100\" class=\"aligncenter size-full wp-image-6645\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-10.jpg 550w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-10-300x54.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-10-150x27.jpg 150w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Nuova organizzazione per i derived data<\/h4>\n<p>    E&#8217; stata spostata la directory in cui vengono inseriti i <em>derived data<\/em> (cio\u00e8: i prodotti della build, i file per l&#8217;indicizzatore e i log). Xcode 4 li salva dentro \/Users\/YourUserName\/Library\/Developer\/Xcode\/DerivedData, mentre Xcode 3 li inseriva direttamente dentro la directory del progetto (precisamente nella sottodirectory build). In questo modo i prodotti sono nettamente separati dai sorgenti, cosa particolarmente utile sia per il nuovo concetto di workspace sia per i sistemi di controllo delle versioni (sui quali \u00e8 buona norma non salvare mai ci\u00f2 che pu\u00f2 essere generato in qualche modo, come i binari: per questo con il vecchio Xcode 3 dovevamo sempre ricordarci di aggiungere la sottodirectory build a svn:ignore).<\/p>\n<h4>Conclusioni<\/h4>\n<p>Continuate a seguirci su devAPP.it, perch\u00e9 analizzeremo Xcode 4 in dettaglio, evidenziando le pi\u00f9 interessanti novit\u00e0 introdotte, raccontando alcuni trucchi e consigli, e spiegando, quando necessario, come fare le stesse cose che facevamo con Xcode 3, ma sfruttando ora la nuova interfaccia.<\/p>\n<p>Xcode 4 pu\u00f2 essere acquistato sul Mac App Store al costo di 3,99 \u20ac tramite questo <a href=\"http:\/\/clk.tradedoubler.com\/click?p=24373&#038;a=1735897&#038;g=0&#038;url=http:\/\/itunes.apple.com\/it\/app\/xcode\/id422352214?mt=12&#038;partnerId=2003\" target=\"_blank\">link diretto<\/a>, oppure, nel caso siate sviluppatori membri del Mac o iOS Developer Program, scaricato gratuitamente dal <a href=\"http:\/\/developer.apple.com\/\" target=\"_blank\">sito ufficiale developer<\/a> di Apple.<\/p>\n<p>Prima di concludere faccio una precisazione importante: sebbene sia stato rilasciato come software stabile, Xcode 4 soffre ancora di molti problemi di giovent\u00f9. Ci sono infatti ancora parecchi seri problemi di prestazioni e di stabilit\u00e0. Nel mio caso, ad esempio, spesso riscontro questo errore piuttosto curioso:<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-11.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-11.jpg\" alt=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-11\" title=\"Xcode-4-panoramica-ambiente-sviluppo-Apple-11\" width=\"533\" height=\"265\" class=\"aligncenter size-full wp-image-6646\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-11.jpg 533w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-11-300x149.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2011\/04\/Xcode-4-panoramica-ambiente-sviluppo-Apple-11-150x74.jpg 150w\" sizes=\"auto, (max-width: 533px) 100vw, 533px\" \/><\/a><br \/>\n<\/center><\/p>\n<h4>Bibliografia<\/h4>\n<ul>\n<li><a href=\"http:\/\/developer.apple.com\/library\/mac\/#documentation\/IDEs\/Conceptual\/xcode_quick_start\/000-About_Xcode\/introduction.html\" target=\"_blank\">Xcode Quick Start Guide<\/a>, un breve tutorial che ci guida passo passo nella creazione di una semplice applicazione usando, ovviamente, Xcode 4.<\/li>\n<li><a href=\"http:\/\/developer.apple.com\/library\/mac\/#documentation\/IDEs\/Conceptual\/Xcode4TransitionGuide\/Introduction\/Introduction.html\" target=\"_blank\">Xcode 4 Transition Guide<\/a>, una guida per chi conosce gi\u00e0 bene Xcode 3 e vuole passare a Xcode 4.<\/li>\n<li><a href=\"http:\/\/developer.apple.com\/library\/ios\/#documentation\/ToolsLanguages\/Conceptual\/Xcode4UserGuide\/Introduction\/Introduction.html\" target=\"_blank\">Xcode 4 User Guide<\/a>, il manuale completo della nuova versione di Xcode.<\/li>\n<\/ul>\n<h4>L&#8217;autore<\/h4>\n<p>Valerio Dutto. Ingegnere informatico con oltre 5 anni di esperienza nella realizzazione di software professionali. Dal 2009 si occupa a tempo pieno di sviluppo su piattaforme iOS e Mac OS X. Ha contribuito a oltre 15 applicazioni iPhone e iPad, alcune delle quali hanno ricevuto importanti riconoscimenti. Il suo sito Web \u00e8 <a href=\"http:\/\/www.valeriodutto.com\" target=\"_blank\">http:\/\/www.valeriodutto.com<\/a>. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dopo una lunga gestazione Xcode 4 \u00e8 finalmente tra noi. Anche se ha ancora qualche problemuccio &#8211;&#8230;<\/p>\n","protected":false},"author":544,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[7],"tags":[413,696,697,242,698,695],"class_list":["post-6649","post","type-post","status-publish","format-standard","hentry","category-strumenti-di-sviluppo","tag-programmare-iphone","tag-strumenti-di-sviluppo-apple","tag-sviluppatori-iphone","tag-tutorial-xcode","tag-valerio-dutto","tag-xcode-4"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/6649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/544"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=6649"}],"version-history":[{"count":2,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/6649\/revisions"}],"predecessor-version":[{"id":6654,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/6649\/revisions\/6654"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=6649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=6649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=6649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}