>>> Let's run Python on Mobile

วันอาทิตย์, กุมภาพันธ์ 12, 2549

Jython for PocketPC and Smartphone

2-3 เดือนที่ผ่านมา ผมมักจะใช้เวลาว่างค้นคว้าเรื่อง การนำ Jython มาใช้บน PocketPC และ Microsoft Smartphone
Jython เป็น Python ที่เป็น Pure Java
คือเป็น Python Interpreter ที่สร้างขึ้นด้วย Java ล้วนๆ
(ฝีมือ Jim Hugunin ผู้สร้าง IronPython)
ดังนั้น Jython จึงสามารถทำงานได้บน แทบทุก Platform ที่ลง Java ไว้
(Java Virtual Machine version 1.1 ขึ้นไป)
แต่ PocketPC และ Microsoft Smartphone นี่ก็หา Java มาใช้แบบฟรีๆ ได้ยากมากๆเลย

หลังจากผมค้นคว้าไปสักพัก ก็พบว่า J2ME ไม่สามารถ Run Jython ได้
เพราะ Java 2 Micro Edtion - ที่ใช้ตามโทรศัพท์มือถือ มีความสามารถจำกัด มีความสามารถน้อยกว่า Java ที่อยู่บน PC
โดยเฉพาะ พวก Reflection นั้น จำเป็นมากในการ Run Jython

จนกระทั้งวันนึง ผมอ่านเจอใน Mailing List เก่าๆของ Jython และ Python WinCE
ว่าสามารถ Run Jython ได้บน PocketPC โดยใช้ PersonalJava

PersonalJava เป็น Java for Mobile Device ที่ Sun เลิกสนับสนุน
ออกมาแค่ version 1.1 beta แล้วไม่มีออกมาอีก
ปัจจุบันหาD/Lไม่ได้แล้ว จากWebsite ของ Sun
แต่ยังพอหาได้ด้วย Google

Run Jython ได้บน PocketPC โดยใช้ PersonalJava เป็นแค่ก้าวแรกๆ
บอกตามตรง มันใช้ไม่ค่อยสะดวกนักหรอก
ถ้าคุณอยาใช้ Python บน PocketPC ก็ใช้ Python for PocketPC ที่แนะนำไปแล้วจะสะดวกกว่า
เว้นเสียแต่ คุณจะใจรัก อยากใช้ Java อยากใช้ Jython มากจริงๆ
Run Jython บน PocketPC ช่วยให้เขียนโปรแกรมใช้คำสั่งต่างๆของ Java ได้โดยไม่ต้องเสีย เวลา compile บน PC
เขียนเป็น สคริปต์ไฟล์ .py แล้วใช้งานบนPocketPC ได้ทันที
และยัง support java.awt อีกต่างหาก

ผมใช้ Python ได้บน PC, JVM, Symbian และ PocketPC
สิ่งหนึ่ง ที่ผมอยากทำมากๆเลย ในขั้นถัดไป ก็คือ
Run Python บน Microsoft Smartphone
เพราะช่วงนี้ ผมพก Microsoft Smartphone (2003SE) ค่อนข้างบ่อย
และวันนี้ผมก็ทำได้สำเร็จ
โดยใช้ PersonalJava + Jython

แต่มันต้อง Hack อะไรอีกหลายๆอย่าง ไว้จะค่อยๆเล่าให้ฟังครับ