Titanium SDK: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Aggiunti logo, link alle pagine del framework e della community, aggiunti dettagli alla scheda software
m smistamento lavoro sporco e fix vari
Riga 1:
{{C|"solita" traduzione semiautomatica in cui le fonti non sono state riportate correttamente dalla versione di origine|informatica|febbraio 2023}}
{| class="infobox vevent"
| colspan="2" class="infobox-full-data" |
|}
{{Software
|Nome = Titanium SDK
Line 8 ⟶ 6:
|DataPrimaVersione = {{Data|09|03|2010}}
|UltimaVersione = 12.0.0.GA
|DataUltimaVersione = {{Data|30|12|2022}}<ref>{{CiteCita web|url=https://titaniumsdk.com/guide/Titanium_SDK/Titanium_SDK_Release_Notes/Titanium_SDK_Release_Notes_12.x/Titanium_SDK_12.0.0.GA_Release_Note.html|title titolo= GA Release of Titanium SDK 12.0.0|date data= 30 Decemberdicembre 2022}}</ref>
|latest preview version = [https://github.com/tidev/titanium_mobile/releases]
|SistemaOperativo = {{nowrapTutto attaccato|[[macOS]]}}
|SistemaOperativo2 = {{nowrapTutto attaccato|[[Microsoft Windows|Windows]]}}
|SistemaOperativo3 = {{nowrapTutto attaccato|[[Linux]]}}
|SistemaOperativoAltri = [[iOS]], [[Android (operating system)|Android]], [[multipiattaforma]]
|Linguaggio = Objective C
Line 24 ⟶ 22:
}}
 
'''Titanium SDK''' è un framework open source che consente la creazione di [[Applicazione mobile|applicazioni mobili]] native su [[Dispositivo mobile|piattaforme]] [[iOS]] e [[Android]] da un'unica [[codebase]] [[JavaScript]].<ref>{{Cita web|url=https://titaniumsdk.com/guide/Titanium_SDK/Titanium_SDK_Guide/Titanium_Command-Line_Interface_Reference/#build|titolo= |sito=titaniumsdk.com|dataaccessoaccesso=4 gennaio 2023-01-04}}</ref> Titanium SDK è attualmente sviluppato dalla fondazione software senza scopo di lucro TiDev, Inc.<ref>{{Cita libro|url=http://www.packtpub.com/creating-mobile-apps-with-appcelerator-titanium/book|edizione=1st|p=318|ISBN=978-1-84951-926-7}}</ref><ref>{{Cita libro|url=https://www.packtpub.com/application-development/appcelerator-titanium-business-application-development-cookbook|edizione=1st|p=328|ISBN=978-1-84969-534-3}}</ref><ref>{{Cita libro|url=http://www.packtpub.com/augmented-reality-using-appcelerator-titanium-starter/book|edizione=1st|p=52|ISBN=978-1-84969-390-5}}</ref><ref>{{Cita libro|url=http://eu.wiley.com/WileyCDA/WileyTitle/productCd-047066083X.html|edizione=1st|p=352|ISBN=978-0-470-66083-6}}</ref><ref>{{Cita libro|url=http://www.packtpub.com/appcelerator-titanium-patterns-and-best-practices/book|edizione=1st|p=110|ISBN=978-1-84969-348-6}}</ref><ref>{{Cita libro|url=http://www.packtpub.com/appcelerator-titanium-mobile-applications-development-for-smartphone-iphone-android-cookbook/book|edizione=1st|p=308|ISBN=978-1-84951-396-8}}</ref>
 
Nel febbraio 2013, ''[[Business Insider]]'' ha stimato che il 10% di tutti gli smartphone in tutto il mondo esegue app realizzate con Titanium.<ref name="business-insider-microsoft">{{Cita web|url=http://www.businessinsider.com/microsoft-eyes-appcelerator-acquisition-2013-2#ixzz2YmNSFhT7|titolo= |autore=Julie Bort}}</ref> Dal 2017, Titanium aveva accumulato oltre 950.000 registrazioni di sviluppatori.<ref name="appc-2017">{{Cita web|url=http://www.appcelerator.com/|titolo= |autore=Appcelerator}}</ref>
 
Il componente principale dell'ecosistema software Titanium è il [[Software development kit|kit di sviluppo software]] [[Licenza Apache|con licenza Apache]], Titanium SDK. Alloy, un framework [[model-view-controller]] basato su Titanium, è un progetto correlato attualmente gestito e sviluppato da TiDev, Inc per l'utilizzo con Titanium SDK, che consente di semplificare e velocizzare lo sviluppo.
 
Titanium SDK è stato originariamente sviluppato e gestito da Appcelerator, Inc, poi successivamente da Axway, Inc dopo che Axway ha acquistato Appcelerator nel 2016.<ref name=":0">{{Cita libro|url=http://www.packtpub.com/appcelerator-titanium-mobile-applications-development-for-smartphone-iphone-android-cookbook/book|edizione=1st|p=308|ISBN=978-1-84951-396-8}}<cite class="citation book cs1" data-ve-ignore="true" id="CITEREFPollentine2011">Pollentine, Boydlee (December 16, 2011). </cite></ref> Oggi il Titanium SDK e i progetti correlati sono mantenuti dagli sviluppatori sotto la direzione della società senza scopo di lucro dell'Alabama TiDev, Inc. con sede a [[Centreville (Alabama)|Centreville, Alabama]].<ref>{{Cita web|url=https://www.bibbvoice.com/2022/05/01/titanium-mobile-development-software-finds-a-new-home-in-central-alabama/|titolo= |lingua=en-US|dataaccessoaccesso=4 gennaio 2023-01-04}}</ref>
 
== Architettura ==
Line 39 ⟶ 37:
* Il framework Alloy basato sul paradigma MVC.
 
Tutto il codice sorgente dell'applicazione viene distribuito sul dispositivo mobile dove viene [[Interprete (informatica)|interpretato]] <ref>{{Cita web|url=http://developer.appcelerator.com/question/45001/is-appcelerator-titanium-mobile-really-a-cross-compiler}}</ref> utilizzando un [[Interprete JavaScript|motore JavaScript]]; [[Rhino (interprete JavaScript)|Rhino]] di Mozilla viene utilizzato su Android e BlackBerry e [[WebKit|JavascriptCore]] di Apple viene utilizzato su iOS.<ref>{{Cita web|url=http://developer.appcelerator.com/blog/2010/12/titanium-guides-project-js-environment.html|titolo= |autore=Kevin Whinnery|citazione=Titanium runs your application's JavaScript using one of two JavaScript interpreters – JavaScriptCore on iOS (the interpreter used by Webkit) and Mozilla Rhino on Android and BlackBerry.}}</ref> Nel 2011 è stato annunciato che era in fase di sviluppo un porting per il [[V8 (motore JavaScript)|motore JavaScript V8]] di Google che, una volta completato, avrebbe migliorato significativamente le prestazioni.<ref>{{Cita web|url=http://developer.appcelerator.com/blog/2011/09/platform-engineering-android-runtime-performance-improvements.html|titolo= |autore=Don Thorp}}</ref> Il caricamento del programma richiede più tempo rispetto ai programmi sviluppati con gli SDK nativi, poiché l'interprete e tutte le librerie richieste devono essere caricate prima che possa iniziare l'interpretazione del codice sorgente sul dispositivo.
 
Titanium fornisce API per:
Line 48 ⟶ 46:
 
== Storia ==
Quando è stato introdotto nel dicembre 2008, Titanium era destinato allo sviluppo di applicazioni desktop multipiattaforma ed è stato talvolta paragonato ad [[Adobe Integrated Runtime|Adobe Air]].<ref>{{Cita web|url=https://www.techcrunch.com/2008/12/09/appcelerator-raises-41-million-for-open-source-ria-platform/}}</ref><ref>{{Cita web|url=http://www.eweek.com/c/a/Application-Development/Appcelerator-Takes-on-Adobe-AIR-with-Titanium/}}</ref> Tuttavia, ha aggiunto il supporto per lo sviluppo di applicazioni mobili per iPhone e Android nel giugno 2009 e nel 2012 Titanium Desktop è stato scorporato in un progetto separato guidato dalla comunità chiamato TideSDK.<ref>[http://developer.appcelerator.com/blog/2012/01/the-future-of-titanium-desktop.html Appcelerator Developer Blog – The Future of Titanium Desktop]</ref><ref>{{Cita web|url=http://www.infoworld.com/d/developer-world/appcelerator-enables-iphone-android-app-dev-655}}</ref> Il supporto per lo sviluppo di app per tablet basate su iPad è stato aggiunto nell'aprile 2010.<ref name="mashable">{{Cita web|url=http://mashable.com/2010/04/05/titanium-tablet-sdk/|titolo= |sito=[[Mashable]]}}</ref> Il supporto BlackBerry è stato annunciato nel giugno 2010,<ref>http://blackberryrocks.com/2010/05/06/appcelerator-announces-titanium-mobile-beta-support-blackberry-news/</ref> ed è stato in versione beta da aprile 2013. Il supporto di Tizen è stato aggiunto anche nell'aprile 2013 con le versioni 3.1.0 Titanium Studio e SDK. L'ultima aggiunta alla piattaforma nel 2016 è stata Hyperloop, una tecnologia per accedere alle API native su iOS, Android e Windows con JavaScript.<ref name="hyperloop">{{Cita web|url=http://www.appcelerator.com/blog/2016/08/hyperloop-is-here/|titolo= |autore=Jeff Haynie}}</ref>
 
Nell'aprile 2010, Appcelerator ha ampliato la linea di prodotti Titanium con Titanium Tablet SDK. Titanium Tablet SDK attinge in gran parte dal supporto esistente per iPhone, ma include anche il supporto nativo per i controlli dell'interfaccia utente solo per iPad, come la suddivisione delle finestre e le popover. Inizialmente l'SDK mobile supportava solo lo sviluppo per iPad, ma ora il supporto include anche i tablet basati su Android.
Line 54 ⟶ 52:
Nel giugno 2011, Appcelerator ha rilasciato Studio e Titanium Mobile 1.7.<ref>{{Cita web|url=http://www.readwriteweb.com/mobile/2011/06/appcelerator-launches-titanium-studio-mobile-desktop-web-development-in-one.php}}</ref> Studio è un IDE standard completamente aperto derivato da Aptana Studio che Appcelerator ha acquisito nel gennaio 2011.
 
Nel giugno 2013, Jeff Haynie, CEO di Appcelerator, ha annunciato che la società aveva avviato Ti.Next, un progetto per riscrivere Titanium SDK in Javascript per migliorare le prestazioni e avvicinare gli utenti finali di Titanium, che scrivono in Javascript, al codice interno.<ref>{{Cita webtesto|autore=Martin Monroe}}</ref> In un post sul blog, ha scritto:<blockquote>Riteniamo che JavaScript dovrebbe essere il linguaggio giusto per sviluppare Titanium, non solo app con Titanium SDK. Con Ti.Next, abbiamo creato un piccolo progetto di [[Kernel#Microkernel|microkernel]] che ci consentirà di avere un codice di bootstrap minimo nel linguaggio nativo ([[C (linguaggio)|C]], [[Java (linguaggio di programmazione)|Java]], [[C sharp|C#]], ecc.) che dialoga con un set comune di [[Compilatore|compilatori]], strumenti e una singola [[Macchina virtuale|Macchina Virtuale]] JavaScript. Abbiamo trovato un modo per far funzionare la {{Abbr|VM|virtual machine}} [[WebKit]] [[KJS (JavaScript)|KJS]] su più piattaforme invece di utilizzare macchine virtuali diverse per piattaforma. Ciò significa che possiamo ottimizzare pesantemente il microkernel (di seguito chiamato "TiRuntime") e la manutenzione, le ottimizzazioni e la profilazione possono essere notevolmente semplificate. Stiamo parlando di {{Abbr|~5K|about 5,000}} {{Abbr|LOC|lines of code}} contro 100K LOC per piattaforma.<ref>{{Cita web|url=http://www.appcelerator.com/blog/2013/07/thoughts-on-ti-next/|titolo= |autore=Jeff Haynie}}</ref></blockquote>Nel gennaio 2016, Appcelerator è stata acquisita da Axway, una società di software globale con oltre 11.000 clienti del settore pubblico e privato in 100 paesi.<ref>{{Cita web|url=http://www.appcelerator.com/blog/2016/01/axway-acquires-appcelerator-and-why-this-is-great-news-for-all/|titolo= |autore=Jeff Haynie}}</ref> Da allora, i piani Indie sono stati nuovamente resi gratuiti, incluso l'accesso API nativo con Hyperloop.<ref>{{Cita web|url=https://www.appcelerator.com/blog/2017/05/free-plan-announcement/|titolo= |autore=Brad Hipps}}</ref>
 
=== Versioni ===
Line 228 ⟶ 226:
 
=== Integrazione Angular ===
Da aprile 2018 è possibile utilizzare [[Angular]] 6 in combinazione con Titanium per sviluppare app mobili.<ref>{{Cita testo|url=https://github.com/appcelerator/titanium-angular}}</ref><ref>{{Cita web|url=https://devblog.axway.com/mobile-apps/titanium-angular-technical-preview-release/|titolo= |sito=Axway Developer Blog|lingua=en-US|dataaccessoaccesso=4 agosto 2019-08-04}}</ref>
 
=== Integrazione Vue.js ===
Oltre all'integrazione Angular è anche possibile utilizzare [[Vue.js]] (a partire da maggio 2018) come framework per sviluppare app.<ref>{{Cita web|url=https://devblog.axway.com/mobile-apps/announcing-vue-js-support-in-titanium/|titolo= |sito=Axway Developer Blog|lingua=en-US|dataaccessoaccesso=4 agosto 2019-08-04}}</ref><ref>{{Cita testo|url=https://github.com/appcelerator/titanium-vue}}</ref>
 
=== Supporto ES6 ===
Titanium supporta le funzionalità di [[ECMAScript|ES6]] a partire dall'SDK 6.1.0 come le Classi, le arrow function e altro ancora.<ref>{{Cita web|url=https://devblog.axway.com/mobile-apps/using-es6-in-a-titanium-app/|titolo= |sito=Axway Developer Blog|lingua=en-US|dataaccessoaccesso=4 agosto 2019-08-04}}</ref>
 
=== Hyperloop ===
Hyperloop<ref>{{Cita web|url=https://www.appcelerator.com/mobile-app-development-products/hyperloop/|sitotitolo=www.appcelerator.com |lingua=en-US|dataaccessoaccesso=4 agosto 2019-08-04}}</ref> consente all'utente di accedere al codice nativo (Java, Objective-C, Swift, C#) all'interno di JavaScript e utilizzare librerie di terze parti.
 
=== App native ===
Line 243 ⟶ 241:
 
=== Codice riutilizzabile ===
Uno degli obiettivi di Titanium è riutilizzare quanto più codice possibile per le varie piattaforme. Esiste un elevato livello di parità di componenti e l'utilizzo del framework Alloy MVC consente di condividere fino al 90% del codice su tutte le piattaforme.<ref>{{Cita web|url=https://www.appcelerator.com/mobile-app-development-products/|sitotitolo=www.appcelerator.com |lingua=en-US|dataaccessoaccesso=4 agosto 2019-08-04}}</ref> D'altra parte, si possono integrare funzionalità specifiche della piattaforma in modo molto semplice.<syntaxhighlight lang="xml">
<Alloy>
<Window title="Titolo della finestra">
Line 259 ⟶ 257:
* [[Apache Cordova|PhoneGap]]
 
== RiferimentiNote ==
<references />
{{References|2}}
 
== LinkCollegamenti esterni ==
* {{collegamenti esterni}}
 
* [https://titaniumsdk.com/ Pagina web ufficiale]
[[Categoria:Ambienti di sviluppo]]
* [https://tidev.io/ Pagina web della Titanium SDK Organization (TiDev)]
* [https://github.com/tidev/titanium_mobile Codice open source di Titanium SDK]
* [https://github.com/tidev/titanium_mobile/discussions Titanium Discussions su GitHub]
* [https://slack.tidev.io/ Community TiDev Slack di Titanium]