Pythonista - Python untuk iOS

Seperti judul, pythonista ini adalah sebuah app untuk iOS yang memungkinkan kita untuk menggunakan python di iOS tanpa jailbreak. Wow! Aplikasi ini tersedia di App Store dengan harga 79.000 rupiah. Bagi saya, harga 79.000 rupiah sangat wajar untuk pythonista dengan berbagai kelebihannya. Pythonista tersedia sebagai Universal App yang dapat digunakan di iPhone, iPad maupun iPod Touch. Apa saja kemampuan pythonista?

Pythonista versi 1.5 dan Python 2.7.5

Dengan pythonista kita bisa melakukan eksperimen atau membuat prototype menggunakan kemampuan multi-touch pada perangkat iOS, menggunakan animasi atau audio, atau bahkan menggunakan python interactive prompt sebagai kalkulator multifungsi.
Pyhonista menggunakan basis python versi 2.7.5 dan berbagai macam modul bawaan python, dan tambahan. Modul tambahan ini sangat luar biasa berguna, beberapa modul tambahan ini memungkinkan kita untuk mengakses dan memanipulasi data dari kontak, camera-roll, clipboard, notifikasi, bahkan sensor-sensor pada iOS seperti motion-sensor dan GPS, dan masih banyak lagi lainnya yang memungkinkan kita untuk melakukan banyak hal-hal yang memudahkan kehidupan kita sehari-hari. Modul-modul lainnya seperti requests, numpy, matplotlib, paramiko dan banyak lainnya.

Belajar python di iOS

Pythonista menyediakan dokumentasi lengkap python beserta dokumentasi untuk modul tambahannya. Ini sangat membantu untuk mempelajari python. Interactive prompt-nya juga dilengkapi dengan code completion. Pythonista juga menyediakan contoh-contoh script yang menarik dan memberikan inspirasi.

Tidak hanya sekedar Python Interpreter

Pythonista juga menyediakan code editor dengan berbagai macam themes, syntax highlighting dan code completion, bahkan dengan module tambahan dengan editor kita bisa memanipulasi code editor itu sendiri. Modul ini sering digunakan untuk fitur actions pada code-editor. Coba lihat beberapa potong kode berikut yang diambil dari halaman dokumentasi pythonista ini:

# Search StackOverflow for selected text

import editor  
import webbrowser

text = editor.get_text()  
s = editor.get_selection()  
selection = text[s[0]:s[1]]  
if len(selection) > 0:  
    from urllib import quote
    q = quote(selection)
    search_url = 'http://stackoverflow.com/search?q=' + q
    webbrowser.open(search_url)
else:  
    from console import alert
    i = alert('No Selection', 'Do you want to open the StackOverflow homepage?', 'StackOverflow')
    if i == 1:
        webbrowser.open('http://stackoverflow.com')

Simpan script tersebut misalkan dengan nama search-stackoverflow.py, lalu assign script tersebut sebagai actions pada code editor. Setelah itu setiap kali kita highlight sebuah kata atau kalimat pada code editor, lalu tekan tombol actions di kanan atas dan pilih script tersebut, maka pythonista akan membuka webbrowser untuk mencari kata tersebut pada situs web stackoverflow.com. Masih banyak lagi hal-hal yang bisa dilakukan, seperti membuat sendiri fitur search and replace, mengunggah script ke pastebin.com dan lain sebagainya.
Untuk memudahkan, pythonista juga menambahkan beberapa shortcut untuk keyboard yang didesain spesial untuk python.

Visual User Interface Editor

Ini adalah salah satu kelebihan pythonista lainnya. Pythonista menyediakan fitur untuk membuat desain GUI bagi script kita. Wow! Komponen-komponen seperti Text Field, Text View, Label, Button, dan lainnya dapat kita gunakan untuk membuat aplikasi menggunakan python dan GUI seperti native app.

Export to XCode

Dengan segala kemampuan python dan pythonista, kita bahkan bisa membuat iOS App untuk dipublikasikan di App Store. Pythonista menyediakan template yang bisa kita gunakan untuk mentransformasikan script kita menjadi iOS App. Fitur ini membutuhkan XCode. Template lainnya juga tersedia di github.

Dukungan Komunitas

Tidak dapat dipungkiri, tanpa dukungan dari komunitas, akan sangat sulit untuk mendapatkan solusi ketika kita mendapatkan masalah yang sulit untuk dipecahkan. Pythonista mempunyai komunitas tersendiri. Komunitas ini terdapat pada forum pythonista.

Alat-alat bantu untuk Pythonista

Dengan komunitas yang aktif, sudah terdapat banyak alat bantu untuk pythonista. Beberapa alat bantu ini dapat dilihat di halaman github pythonista tools. Beberapa alat bantu yang saya gunakan:

  • Dropbox Sync: Seperti namanya, ini saya gunakan untuk melakukan sync semua script saya pada Dropbox. Sehingga saya mempunyai akses ke script saya di iPhone, iPad maupun PC saya.
  • StaSh: Ini adalah semacam simulasi shell pada pythonista, sehingga kita bisa menggunakan perintah-perintah seperti ls, cp, mv, grep, rm, zip, unzip, tar, bahkan pip dan git. Untuk lebih jelasnya dapat dilihat pada halaman github StaSh.
  • MarkdownPDF: Ini memungkinkan kita untuk mengkonversi format Markdown ke PDF.

Untuk lengkapnya dapat dilihat pada github pythonista tools.

Screenshots pada iPhone

Code Editor Code Editor

File Manager File Manager

Python Interpreter Python Interpreter

Documentation Documentation

UI Editor UI Editor

Screenshots pada iPad

Code Editor Code Editor

Python Interpreter Python Interpreter

Documentation Documentation

Download

Pythonista @ App Store