ย้ายบล็อกไปที่ bact.cc แล้วนะครับ

พ.ร.บ.คอมพิวเตอร์
หยุด ร่างพ.ร.บ.คอมพิวเตอร์
พื้นที่เก็บข้อมูลออนไลน์ ฟรี 2GB จาก Dropbox (sync กับ Windows, Linux, Mac, iPhone, Android ฯลฯ ได้)

2004-12-17

WeeDict

WeeDict 0.3.2 เป็นพจนานุกรม ไทย-อังกฤษ อังกฤษ-ไทย สำหรับ J2ME ที่พัฒนาต่อจาก LekLekDict 0.3.1 โดย อ. พฤษภ์ บุญมา

เป็นโครงการที่ทำเล่น ๆ หลังจากส่งดิสเซอ แล้วว่างงาน เบื่อโคตร (ถามพี่โอ๋ รุ่นน้องอ.พฤษภ์ ได้)
ก็เลยอยากศึกษาการเขียนโปรแกรมภาษาไทยบนมือถือ โดยใช้ J2ME บ้าง (โดยตั้งใจไว้ว่า จะใช้เวลาว่างจากการกินเบียร์และดูบอล -_-")
เริ่มจากการดาวน์โหลดโค้ด LekLekDict รุ่นล่าสุดในตอนนั้น คือ 0.3.1 มาลองเล่นดู
แก้ไปแก้มา เปลี่ยนโค้ดไปพอสมควร ก็ออกมาเป็น WeeDict ตัวนี้

wee เป็นภาษาสก็อต (Scots) แปลว่า เล็ก ๆ (tiny, little)

หลัก ๆ ที่ลองเล่นก็คือ ในส่วนของโค้ด ลองยุบคลาสและเมธทอดต่าง ๆ ที่คล้าย ๆ กันเข้าด้วยกัน
ในส่วนของการใช้งาน หลังจากผู้ใช้กดเลือกคำศัพท์จากรายการ เพื่อดูความหมาย เมื่อกด Back แล้ว สามารถกลับมาที่หน้ารายการเดิมได้ทันที (แทนที่จะกลับไปยังหน้าป้อนคำศัพท์)
นอกนั้นก็เป็นการแก้นู่นแก้นี่ ลองผิดลองถูก ไม่ค่อยมีสาระเท่าไหร่
คือหน้าตาของโค้ดเปลี่ยนไปเยอะใช้ได้ แต่การทำงานจริง ๆ ก็ยังคล้าย ๆ เดิม คือแก้ไปงั้นแหละ

อ๋อ อีกอันใหญ่ ๆ ที่เปลี่ยนก็คือ พยายามยุบการใช้ String และ byte[] ที่ปน ๆ กัน
ให้เป็น MiniString (คลาสใหม่) อันเดียว เพื่อลด overhead ในการแปลงไปแปลงมา
(จากการทำ profiling ดู พบว่าเวลาส่วนใหญ่หมดไปกับการ getBytes())
หลังยุบรวม ก็พบว่าลด cpu clock ไปได้พอสมควร แต่ไม่ถึงขนาดที่ผู้ใช้จะรู้สึกได้
(สรุปว่าเป็นการ optimize ที่ไม่ค่อยจะจำเป็นเท่าไหร่ คือเธอทำเอามันนั่นเอง)

น่าจะใช้ได้กับมือถือที่รองรับ MIDP 1.0 และ CLDC 1.0
ทดสอบกับ Sony Ericsson k700i ของตัวเอง ใช้งานได้ดี (ไม่เคยลองกับเครื่องอื่น รุ่นอื่น)

WeeDict.jad | WeeDict.jar | source code | Readme
ใช้หนังสืออนุญาตแบบ GPL ตาม LekLekDict

ตัว LekLekDict ต้นฉบับนั้น ตอนนี้พัฒนาไปถึงรุ่น 0.3.3 แล้ว
โดยมีความสามารถเพิ่มเติมหลายอย่าง พร้อมพจนานุกรมตัวใหม่
อ่านรายละเอียดได้ที่ เว็บของ LekLekDict
โดยที่ความสามารถใหม่ ๆ เหล่านั้น ยังไม่มีใน WeeDict รุ่น 0.3.2 (จริง ๆ คือ ไม่รู้เมื่อไหร่จะมี)

ลองเล่นกันได้ครับ
ขอขอบคุณ อ.พฤษภ์ และ อ.วุฒิชัย (น่าจะสะกดแบบนี้) สำหรับโค้ดต้นฉบับด้วย

หมายเหตุ:
ทำใน NetBeans 4.0 RC2, ตอนนี้ 4.0 ตัวจริงออกแล้ว

4 comments:

bact' said...

NetBeans Mobility Pack 5.0 ก็ออก(นาน)แล้ว

bact' said...

LCTL/Thai harvest links here
http://lodl.ldc.upenn.edu/LCTL/Thai_harvest.html

;)

t·o·o said...

ansใช้ nokia series 40 อดเลย รับได้แค่ 1M :(

bact' said...

too: อืมม เดี๋ยวหาทางบีบ ๆ น่าจะได้
หรือไม่ก็ต้องตัดคำบางคำทิ้ง