Friday, December 21, 2007

From P910i to P1i

2-3เดือนนี้ เปลี่ยนอะไรหลายๆอย่าง

เปลี่ยน Blogใหม่ เปลี่ยนที่ทำงานใหม่ เปลี่ยนโทรศัพท์มือถือเครื่องใหม่ ฯลฯ

โทรศัพท์มือถือเครื่องใหม่ ใช้ SonyEricsson P1i

ที่เลือก P1 เพราะจำเป็นต้องใช้ Java ที่ทำอะไรได้มากกว่า J2ME ทั่วไป

P1 มี JVM (J2ME) อยู่ถึง 2 ตัว ในเครื่องเดียว

JVMหนึ่ง เป็น J2ME (CLDC) เหมือนโทรศัพท์มือถือทั่วไป

อีกJVM เรียกว่า Personal Profiles (CDC) ค่อนข้างใกล้เคียงกับ JAVA บน PC

แล้วก็ต้องมานั่ง port โปรแกรมจาก P910i ลง P1

เริ่มจาก JavaRun ไว้เรียกไฟล์ .class ขึ้นมาทำงาน

ไม่ต้องเสียเวลา Install หลายๆโปรแกรม หลายๆรอบ

(เพราะแต่ละโปรแกรมก็ยังเขียนไม่เสร็จสักที)


และก็ kReflection ไว้ดูวิธีใช้คร่าวๆแต่ละคำสั่ง






ต่อมาก็ Notepad

ใช้การได้ แต่ cursor มันยังเพี้ยนๆอยู่ ต้องปรับอีกนิดหน่อย



ถัดมาโปรแกรมอ่านพระไตรปิฎก เปิดแต่ละหน้าได้เร็วทันใจกว่าบน p910i เยอะ



พยายาม port swing มาลง ก็ใช้ไม่ได้ ขึ้น Buffer Create แล้วเงียบ

Jython ก็ใช้ไม่ได้อีก InvocationTargetException ตลอด

jCompile ไว้ compile .class ก็ทำงานแบบไม่มีไฟล์ออกมาเลย

แล้วจะเขียนโปรแกรม บน P1 ได้ไงล่ะนี่

ลอง JavaScript แล้ว Work ดีเลย แต่มันเขียนไฟล์ไม่ได้






เลยนึกไปถึง Rhino ซึ่งเป็น JavaScript ที่เป็น Java จริงๆ

พยายามหา rhino version 1.6R2 ล่าสุด มาลองก็ล้มเหลวอีก

ขณะกำลังจะหลับ นึกได้ ว่า Rhino ตัวเก่าเคยใช้ได้บน Microsoft SmartPhone

เอา rhino version 1.5R5 มาลอง ใช้ได้เลยทีนี้




ตัวอย่าง Rhino Code


importPackage(java.awt);

f = new Frame("javascript");

f.setSize(176,200);

bt = new Button("Exit");

bt.setSize(176,40);

function wexit() { f.dispose();}

o = { actionPerformed: wexit}

bl = java.awt.event.ActionListener(o);

bt.addActionListener(bl);

f.add("South",bt);

f.show();



ไว้ต้องลองลุ้นว่า Rhino บน P1 จะ compile .class ออกมาได้แบบบน PC หรือเปล่า

แต่แค่คิดว่าต้องเขียน Prototype language ที่ไม่มี class ก็มึนแล้ว



ปล.-อะไรที่ทำไม่ได้วันนี้ ไม่ได้แปลว่าจะทำไม่ได้ในวันถัดๆไปนี่นา

(ไปๆมาๆ เลยเขียนโปรแกรมไม่เสร็จเลยสักโปรแกรม )