È possibile usare Python per scrivere applicazioni multipiattaforma sia per iOS che per Android?

Sì, certamente.

PyMob è una piattaforma dove le app possono essere scritte puramente in Python e il flusso di strumenti del compilatore (PyMob) le converte in codici sorgente nativi per varie piattaforme. Ci sono alcuni aspetti che rendono l'approccio di PyMob veramente unico. In primo luogo, scrivere applicazioni in Python è certamente più semplice di Obj-C, Java o JavaScript (alcuni non sarebbero d'accordo). In secondo luogo, le specifiche devono essere scritte in Python solo una volta. In terzo luogo, PyMob genera codice sorgente nativo per tutte le piattaforme supportate. Il codice sorgente nativo generato è virtualmente indistinguibile da un codice scritto a mano e può essere ulteriormente ottimizzato da compilatori nativi. Maggiori informazioni su PyMob sono disponibili su http://pyzia.com/technology.html.

Qui ci sono i "contro" che sono tipicamente menzionati per ogni piattaforma di sviluppo di app mobile cross-platform e i miei input su come PyMob se la cava:

1.Il framework potrebbe non supportare tutte le caratteristiche di un sistema operativo o di un dispositivo: Nell'approccio PyMob, questo non sarà un problema poiché gli sviluppatori ottengono il codice sorgente nativo di PyMob che possono modificare e aggiungere caratteristiche a mano (se lo desiderano).

2. Non puoi sempre usare i tuoi strumenti: Il codice di PyMob può essere scritto con qualsiasi IDE (o vi/emacs). Il codice generato, ad esempio, Objective C (iOS), Java (Android) o JavaScript (HTML5) può essere utilizzato con qualsiasi strumento come desiderato dallo sviluppatore.

3. Il codice potrebbe non essere eseguito così velocemente: Dal momento che PyMob genera codice sorgente nativo, esso viene ulteriormente compilato dal compilatore nativo e quindi questo non è affatto un problema.

4. Grafica High-End e supporto 3D sono spesso limitati: PyMob include il motore Cocos2d che permette agli sviluppatori di usare tutte le caratteristiche della grafica di fascia alta. Infatti, questo è uno dei grandi punti di forza della piattaforma PyMob. Ci sono giochi educativi di alta qualità sviluppati usando PyMob (http://pyzia.com/apps.html).

5. Vendor Lock-In: Con l'approccio di PyMob, non c'è nessun vendor lock-in. PyMob non usa caratteristiche speciali di Python quindi funziona praticamente su qualsiasi macchina o ambiente. Inoltre, l'IP è con lo sviluppatore sia in Python che nel codice sorgente nativo quindi non c'è alcun lock-in.