# Appcelerator Titanium

Appcelerator Titanium is een gratis en open-source applicatieontwikkelingsframework ten behoeve van het ontwikkelen van mobiele en desktopapplicaties door middel van webtechnologieën, zoals JavaScript, HTML, CSS, Python, Ruby en PHP.
Appcelerator Titanium is ontwikkeld door Appcelerator Inc. en werd geïntroduceerd in december 2008.
In eerste instantie begon het met de ondersteuning van webtechnologieën om desktopapplicaties te ontwikkelen. In juni 2009 werd er ondersteuning voor iPhone- en Android gebaseerde mobiele applicaties toegevoegd. Ondersteuning voor het ontwikkelen van iPad gebaseerde applicaties werd in April 2010 toegevoegd. Blackberry ondersteuning was aangekondigd in juni 2010, maar dit is nog steeds in ontwikkeling en op het moment niet openbaar toegankelijk.
Titanium bestaat uit een combinatie van:
* De Titanium SDK tools
* De Titanium Mobile APIs
* Titanium Studio
* Native Modules
* Appcelerator cloud diensten
Titanium applicaties zijn verdeeld in vier onderdelen:
* De HTML, CSS en JavaScript code goed voor de basis van de logica en User Interface van de applicatie
* De APIs die toegang geven aan de native functionaliteiten van een mobile toestel, desktop computer, analytics of andere modulaire functionaliteiten
* De brug tussen de verschillende talen van besturingssystemen die web programeertalen compileert in native applicatie code.
* De run-time shell die de applicatie fabriceert voor cross-platform distributie

## Appcelerator Inc.

Appcelerator is in 2006 opgericht met als doel om “web ontwikkelaars in staat te stellen om intuïtieve, contentrijke applicaties te ontwikkelen voor mobiele en desktop platformen.”
Volgens Appcelerator maken de aangeboden diensten en producten het web ontwikkelaars mogelijk om:
* Inkomsten te vergroten door het maken van applicaties welke gebruik kunnen maken van de rijke content van het web in combinatie met de prestaties en mogelijkheden van mobiele apparaten en desktop apparaten.
* Ontwikkelingstijd te halveren door het één keer ontwikkelen van een applicatie en de mogelijkheid om de applicatie te distribueren naar verschillende platforms.
* Verminderen van de ontwikkelingskosten door gebruik te maken van de web-ontwikkelaarsteam die je al tot je beschikking hebt.
* Leverancier-ongebonden te zijn, door gebruik te maken van het opensource platform dat je maximale keuze biedt. Je raakt niet afhankelijk en bent in controle van je steeds veranderende behoeften.

## Functionaliteiten

De kernfunctionaliteiten van Appcelerator Titanium zijn:
* Ondersteuning voor gestandaardiseerde web technologieën: HTML, CSS en JavaScript voor alle ondersteunde platformen en PHP, Python en Ruby ondersteuning voor desktop platformen.
* Geïntegreerde ondersteuning voor populaire JavaScript en AJAX Frameworks zoals jQuery, YUI, MooTools, Scriptaculous en andere.
* Een platform-onafhankelijk API voor het kunnen aanspreken van native UI componenten als navigatie balken, menu’s, dialoog boxen en alerts, en native toestel functionaliteiten als werken met systeembestanden, geluid, netwerk en de lokale database.
* API toegang tot native mobiele functionaliteiten als geolocatie, accelerometer en kaarten
* Mogelijkheid tot uitbreiden door open interfaces en licenties, die het mogelijk maakt voor ontwikkelaars om additionele programmeertalen, media codecs en apparaat specifieke functionaliteiten toe te voegen.

## Platformen

Appcelerator Titanium ondersteunt het ontwikkelen van applicaties voor twee typen platformen: het mobiele platform en het desktop platform. De ondersteuning voor het maken van desktop applicaties wordt gedaan met behulp van Titanium Desktop SDK. Het ontwikkelen van applicaties voor mobiele platformen wordt gedaan met Titanium Mobile SDK.

### Titanium Desktop SDK

Het Titanium Desktop SDK voorziet ontwikkelaars van een runtime-omgeving om native desktop applicaties te creëren met behulp van HTML, CSS en JavaScript. Titanium Desktop haalt de geschreven broncode in HTML, CSS en JavaScript op en vult dit aan met een aangevulde versie van het populaire open source lay-out-engine Webkit. Een desktop applicatie gecreëerd met het Titanium Desktop SDK is in feite een set van webpagina’s, maar met native functionaliteiten. Met behulp van Titanium Desktop is het mogelijk om een applicatie te schrijven voor Windows, Linux of Mac OS met één dezelfde code. Om deze reden wordt Appcelerator Titanium wel is vergeleken met Adobe Air.

### Titanium Mobile SDK

Het Titanium Mobile SDK maakt het ontwikkelaars mogelijk om native mobiele applicaties voor iOS, Android en BlackBerry (beta) te compileren met behulp van cross-platform JavaScript API’s. In tegenstelling tot Titanium Desktop, waar applicaties worden uitgevoerd binnen een web-browser engine, worden applicaties ontwikkeld met de Titanium Mobile SDK uitgevoerd met een JavaScript engine welke native functionaliteiten aanroept. Mobiel applicaties ontwikkeld met de Titanium Mobile SDK zijn in feite native, dit in tegenstelling tot applicaties ontwikkeld door PhoneGap. .

### Titanium Tablet SDK

In april 2010 breidde Appcelerator Inc. haar Titanium productlijn uit met het Titanium Tablet SDK.
De Titanium Tablet SDK komt voor een groot deel voort uit de, reeds bestaande, ondersteuning voor de iPhone, maar biedt de mogelijkheid om native user interface van de iPad aan te spreken als split views en popovers. In eerste instantie biedt de Titanium Tablet SDK alleen ondersteuning voor het maken van applicaties voor Apple’s iPad.

## Titanium Studio

Titanium Studio is een op Eclipse gebaseerde Integrated Development Environment voor het ontwikkelen van Titanium applicaties uitgegeven in Juni 2011.
Titanium Studio is gebouwd op de Aptana IDE dat is overgenomen in Januari 2011 door Appcelerator.

## Cloud-based diensten

Appcelerator. Inc biedt cloud-based diensten aan voor het verpakken, het testen en het distribueren van applicaties ontwikkeld met Titanium.