เก่ง J2ME ให้ครบสูตร

หนังสือหมดสต็อกชั่วคราว
ผู้เขียน: ทรงเกียรติ ภาวดี
ISBN: 974-91092-8-7
จำนวนหน้า: 297 หน้า
ขนาด: 14.5 x 21 ซม.
รูปแบบหนังสือ: หนังสือขาวดำ
แถม CD

ราคาปก: 245 บาท
ราคาสั่งซื้อ: 210 บาท
ส่งหน้านี้ให้เพื่อน  


  • แนะนำเทคโนโลยี J2ME ให้รู้จักและเข้าใจอย่างรวดเร็ว
  • เนื้อหาแน่นและครอบคลุมตั้งแต่แนวคิดพื้นฐาน, การเขียนโปรแกรม จนกระทั่งพัฒนาออกมาเป็นแอปพลิเคชัน J2ME ที่ใช้งานได้จริง
  • เรียนรู้และเลือกใช้เครื่องมือสำหรับพัฒนาแอปพลิเคชันของ J2ME
  • มีตัวอย่างการพัฒนาแอปพลิเคชัน J2ME เช่น เกมกราฟิก ซึ่งทดลองและปฏิบัติตามได้ โดยไม่จำเป็นต้องใช้โทรศัพท์มือถือจริง


บทที่ 1 เปิดตัว J2ME

รู้จักเทคโนโลยีตัวล่าสุดในตระกูล "2" ของ Java ภายใต้ กรอบและแนวคิดแบบคอนฟิกกูเรชันและโพรไฟล์ สำหรับการพัฒนา แอปพลิเคชันเพื่อทำงานในอุปกรณ์ไร้สาย อย่างโทรศัพท์มือถือหรือ PDA ที่มีข้อจำกัดหลายอย่าง โดยเฉพาะหน่วยความจำและกำลังของซีพียู

  • J2SE, J2EE และ J2ME
  • สถาปัตยกรรมของ J2ME
  • คอนฟิกกูเรชันคืออะไร
  • โพรไฟล์มีไว้ทำไม

บทที่ 2 เตรียมพร้อม J2SDK และ WTK

การพัฒนาแอปพลิเคชันของ J2ME จำเป็นจะต้องอาศัย J2SDK และ Wireless Toolkit ซึ่งถือว่าเป็นเครื่องมือพื้นฐานที่สุด และ โปรแกรมช่วยพัฒนาอื่นๆ ยังจำเป็นต้องเรียกใช้อีกด้วย เนื้อหาใน บทนี้จึงแนะนำวิธีการติดตั้ง J2SDK และ Wireless Toolkit เพื่อให้ ผู้อ่านใช้เป็นเครื่องมือทดลองพัฒนาแอปพลิเคชันด้วยตนเอง

  • ดาวน์โหลดและติดตั้ง J2SDK ก่อน
  • กำหนด PATH และ CLASSPATH
  • ทดลองเขียนโปรแกรม Java สั้นๆ
  • ปัญหาในการใช้งาน J2SDK
  • ดาวน์โหลดและติดตั้ง WTK ปิดท้าย

บทที่ 3 ทำความรู้จัก MIDlet

การทำความรู้จักและทำความเข้าใจการทำงานของไฟล์ .jad และ .jar รวมถึงโครงสร้างและความสัมพันธ์ของไฟล์ทั้งสอง เป็น สิ่งจำเป็นอย่างมากสำหรับนักพัฒนา MIDlet เพราะ MIDlet คือ แอปพลิเคชันขั้นสุดท้ายที่เราจะนำไปรันในอุปกรณ์ต่างๆ ที่สนับสนุน เทคโนโลยี J2ME

  • ความสำคัญของไฟล์ .jar และ .jad
  • แหล่งดาวน์โหลด MIDlet
  • MIDlet กับโทรศัพท์มือถือ
  • ดาวน์โหลด MIDlet ผ่าน OTA
  • เจาะลึก .jar และ .jad

บทที่ 4 เริ่มการใช้งาน WTK

J2ME Wireless Toolkit หรือ WTK เป็นเครื่องมือพื้นฐาน สำหรับพัฒนาแอปพลิเคชัน J2ME อย่างเป็นทางการของ Sun ช่วย ให้นักพัฒนาสามารถเขียนและทดสอบแอปพลิเคชัน J2ME ได้อย่าง รวดเร็ว ครบทุกขั้นตอน ไม่ว่าจะเป็นการคอมไพล์, แสดงข้อผิดพลาด, รันดูผลใน Emulator จนกระทั่งสร้างออกมาเป็น MIDlet Suite

  • ดาวน์โหลดและติดตั้ง WTK
  • ทดลองรัน MIDlet ที่มากับ WTK
  • การรัน MIDlet อื่นๆ
  • เมนูและเครื่องมือที่น่าสนใจใน WTK
  • เมนู Default Device
  • เมนู Documentation
  • เมนู KToolbar
  • เมนู Preferences
  • เมนู Utilities

บทที่ 5 SMTK เป็นอีกทางเลือกหนึ่ง

นอกจาก Wireless Toolkit ของ Sun แล้ว บริษัทอื่นๆ อย่าง เช่น Siemens ก็มีชุดพัฒนาแอปพลิเคชันที่เรียกว่า Siemens Mobility Toolkit หรือ SMTK ให้นักพัฒนานำไปใช้งานด้วยเหมือนกัน จุดประสงค์ หลักของ SMTK คือ ทำให้แอปพลิเคชันของ J2ME ที่พัฒนาออกมา สามารถดึงความสามารถของโทรศัพท์ Siemens มาใช้อย่างเต็มที่

  • ก่อนอื่นต้องดาวน์โหลด SMTK
  • พินิจหน้าตา SL45i Emulator
  • การรัน MIDlet ของ Emulator
  • นำ MIDlet อื่นมารันใน SL45i Emulator
  • เปิดดูเอกสาร J2ME API ได้จากเมนู
  • มี Emulator สำหรับรุ่น M50 เหมือนกัน

บทที่ 6 อุปกรณ์ที่สนับสนุน J2ME

โทรศัพท์มือถือเป็นอุปกรณ์อย่างหนึ่งที่สนับสนุนเทคโนโลยี J2ME ซึ่งผู้ใช้สามารถเข้าถึงและสัมผัสได้ง่ายที่สุด แต่อุปกรณ์ที่สนับ สนุนเทคโนโลยี J2ME ยังมีมากกว่านั้น เช่น Palm, Pocket PC หรือ Smart phone และมีแนวโน้มว่าจะเพิ่มมากขึ้นในอนาคต เราจึงควร มาทำความเข้าใจศักยภาพของอุปกรณ์เหล่านี้กันบ้าง

  • โทรศัพท์มือถือ
  • Smartphone 2002 และ Pocket PC
  • Palm OS

บทที่ 7 MIDlet กับ Palm OS

การนำแอปพลิเคชันหรือ MIDlet ที่เขียนขึ้นสำหรับโทรศัพท์มือถือ ไปรันในอุปกรณ์อื่นอย่าง Palm OS สามารถทำได้โดยแปลง ไฟล์ของ MIDlet Suite ให้อยู่ในรูปแบบของ Palm OS แล้วนำไปติด ตั้งใช้งาน โดยไม่ต้องแก้ไขโปรแกรมต้นฉบับหรือคอมไพล์ใหม่ ความ สามารถนี้ช่วยตอกย้ำแนวคิด "Write Once Run Anywhere" ของ Java อย่างชัดเจน

  • ติดตั้ง MIDP ลงเครื่อง Palm
  • แปลง MIDlet ให้เป็น .prc
  • ตัวอย่างปัญหาการแปลง MIDlet เป็น .prc

บทที่ 8 พัฒนา MIDlet ทีละขั้น

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

  • ขั้นที่ 1 เขียนโปรแกรม HelloJ2ME.java
  • ขั้นที่ 2 สร้างไดเรกทอรีเก็บคลาสไฟล์
  • ขั้นที่ 3 คอมไพล์ซอร์ซโค้ด
  • ขั้นที่ 4 ตรวจสอบคลาสไฟล์
  • ขั้นที่ 5 รันดูผลใน Emulator
  • ขั้นที่ 6 เตรียมไฟล์ manifest.mf
  • ขั้นที่ 7 สร้างไฟล์ .jar
  • ขั้นที่ 8 สร้างไฟล์ .jad
  • ขั้นที่ 9 นำ MIDlet ไปติดตั้งหรือใช้งาน

บทที่ 9 เจาะลึกขั้นตอนการพัฒนา MIDlet

จากบทที่ผ่านมา ทำให้เราได้ทราบขั้นตอนการพัฒนา MIDlet อย่างคร่าวๆ กันไปแล้ว ในบทนี้จะเป็นการเจาะลึกถึงการทำงานและ คำสั่งต่างๆ ที่ใช้ในแต่ละขั้นตอนอย่างละเอียด ก่อนที่จะไปอธิบายการ ใช้เครื่องมือพัฒนา MIDlet หรือ Wireless Toolkit และแสดงตัวอย่าง ในบทถัดไป

  • เริ่มจากคอมไพล์ซอร์ซโค้ด
  • แล้วตรวจสอบคลาสไฟล์ให้ชัวร์
  • ทดลองรันคลาสไฟล์ใน Emulator
  • ทำ MIDlet Suite เพื่อเผยแพร่การใช้งาน
  • JAM, JAR และ JAD คืออะไร
  • JAM (Java Application Manager)
  • JAR (Java Archive)
  • JAD (Java Application Descriptor)
  • ความสำคัญของ MIDlet-Jar-URL

บทที่ 10 พัฒนา MIDlet ด้วย WTK

เมื่อเข้าใจขั้นตอนการพัฒนา MIDlet แบบป้อนคำสั่งผ่าน คอมมานด์ไลน์แล้ว ในการพัฒนา MIDlet ใช้งานจริง ควรจะใช้เครื่อง มืออย่าง Wireless Toolkit เข้ามาช่วย เพื่อให้รวดเร็วและสะดวก เนื่องจาก Wireless Toolkit ได้ซ่อนการทำงานหลายอย่างเอาไว้ ในฉากหลัง โดยที่เราไม่ต้องทำเอง

  • สร้างโปรเจ็กต์ใหม่
  • คอมไพล์และตรวจสอบ
  • ทำ Packaging
  • รัน MIDlet ใน POSE

บทที่ 11 MIDlet 2 ตัว ในไฟล์เดียว

การนำเอา MIDlet มากกว่า 1 ตัว มาบรรจุไว้ในไฟล์ .jar ไฟล์ เดียว หรืออยู่ใน MIDlet Suite เดียวกันนั้น มีข้อดีคือ ทำให้ MIDlet ที่อยู่ข้างใน สามารถทำงานและแชร์ข้อมูลร่วมกันได้ โดยในระหว่าง การรัน จะมีเมนูให้เราเลือกว่าต้องการรัน MIDlet ตัวใด

  • คอมไพล์ซอร์ซโค้ด
  • ตรวจสอบคลาสไฟล์
  • รันใน Emulator
  • สร้างไฟล์ manifest.mf
  • สร้างไฟล์ .jar
  • สร้างไฟล์ .jad
  • สร้างไอคอนให้แก่ MIDlet
  • กรณีใช้ WTK เป็นเครื่องมือพัฒนา

บทที่ 12 GUI ของ MIDP

หน้าที่พื้นฐานของ GUI คือ สร้างอินเทอร์เฟซสำหรับการรับ ข้อมูลจากผู้ใช้ (เช่น การรับข้อความหรือแสดงรายการเมนูให้ผู้ใช้เลือก) และแสดงผลการทำงาน ซึ่งในการพัฒนา MIDlet เราจะเลือก GUI สำเร็จรูปที่ MIDP เตรียมไว้ให้ มาใช้งานเลย หรือจะสร้าง GUI แล้วเขียนโค้ดควบคุมการทำงานต่างๆ เองก็ได้

  • High-level API ดูแลอินเทอร์เฟซระดับสูง
  • Low-level API จัดการกราฟิกระดับต่ำ
  • Display ตัวจัดการจอภาพ
  • Displayable ตัวนำอ็อบเจ็กต์มาแสดง
  • คลาส Screen แยกย่อยเป็น 4 คลาส
  • Form รวมคอมโพเนนต์ต่างๆ อยู่ในหน้าจอเดียว
  • Command สร้างเมนูสำหรับผู้ใช้
  • Alert แจ้งเตือนหรือแจ้งข้อผิดพลาด
  • TextBox สร้างกรอบรับข้อความจากผู้ใช้
  • List สร้างรายการให้ผู้ใช้เลือก
  • TextField สร้างกรอบรับข้อความบรรจุใน Form
  • ChoiceGroup สร้างรายการบรรจุใน Form ให้ผู้ใช้เลือก
  • StringItem แสดงข้อความใน Form
  • Image แสดงรูปกราฟิกใน Form
  • ImageItem แสดงรูปกราฟิก + ข้อความกำกับรูป
  • Gauge โชว์กราฟแท่งแทนตัวเลข
  • DateField รับข้อมูลวัน-เวลาตามที่ผู้ใช้เลือก
  • Ticker โชว์ตัวอักษรวิ่ง

บทที่ 13 MIDlet แบบกราฟิก

MIDlet ที่พัฒนาขึ้นมาโดยใช้ GUI ระดับต่ำหรือแบบกราฟิก ย่อมมีความสวยงามและดูเป็นมืออาชีพมากกว่า ปกติแล้ว GUI ระดับ ต่ำเหมาะสำหรับการพัฒนา MIDlet จำพวกเกมแบบกราฟิก ที่จำเป็น ต้องสร้างหรือวาดรูปกราฟิกขึ้นมาใช้งานเอง เพราะ GUI ระดับสูงที่ MIDP จัดเตรียมไว้ ไม่สามารถจัดการงานลักษณะนี้ได้

  • ระบบโคออร์ดิเนตของ Graphics
  • การกำหนดสี
  • ทดลองวาดเส้นตรง
  • วาดรูปสี่เหลี่ยมโปร่ง
  • วาดรูปสี่เหลี่ยมทึบ
  • วาดส่วนของวงกลมหรือวงรี
  • กำหนดรูปแบบอักษรและแสดงข้อความ

บทที่ 14 ตรวจสอบเหตุการณ์

การตรวจสอบเหตุการณ์ใน MIDlet ที่ใช้ GUI ระดับต่ำ เป็น สิ่งที่ทำได้สบายมาก เราสามารถเขียนโค้ดเพื่อตรวจสอบหรือดัก เหตุการณ์อย่างการกดคีย์, ปล่อยคีย์ หรือแม้แต่การแตะบนจอภาพของ Palm จากนั้น ก็ขึ้นกับเราเองว่า เมื่อเกิดเหตุการณ์ดังกล่าว

  • ขึ้นแล้ว จะเขียนโค้ดสั่งให้ทำงานต่อไปอย่างไร
  • เมธอดตรวจสอบเหตุการณ์ระดับต่ำ
  • ตัวอย่างการตรวจสอบคีย์
  • เทคนิคการตรวจสอบคีย์
  • ตรวจสอบการแตะจอภาพของ Palm

บทที่ 15 รูปกราฟิกใน MIDlet แบบกราฟิก

การนำรูปกราฟิกมาแสดงใน MIDlet แบบกราฟิก ทำได้หลาย แบบ เช่น โหลดไฟล์รูปกราฟิกมาแสดงโดยตรง หรืออาจจะใช้เทคนิค แปลงรูปกราฟิกเป็นข้อมูล แล้วนำไปเขียนโค้ดฝังไว้ใน MIDlet เลยก็ได้ ซึ่งจะทำให้การแก้ไขหรือแกะรูปกราฟิกใน MIDlet ทำได้ยากขึ้น

  • เทคนิคการฝังรูปกราฟิกในไฟล์ .jar
  • แปลงข้อมูลกราฟิกเป็นตัวเลข
  • นำค่าตัวเลขไปกำหนดลงอาร์เรย์
  • เก็บหลายรูปในอาร์เรย์ชุดเดียว

บทที่ 16 เก็บข้อมูลด้วย RMS

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

  • โครงสร้างของ RMS
  • การทำงานกับ Record Store
  • เปิด Record Store
  • เพิ่มเรคอร์ด
  • อ่านเรคอร์ด
  • ลบเรคอร์ด
  • แก้ไขเรคอร์ด
  • ปิด Record Store
  • ไฟล์ของ Record Store
  • ตัวอย่าง MIDlet ที่ใช้ RMS

บทที่ 17 สร้างเกม Puzzle

เกม Puzzle หรือเกมสลับตัวเลข เป็นตัวอย่างประยุกต์ของ แอปพลิเคชัน J2ME เล็กๆ ที่นำเอาความสามารถหลายๆ ส่วนมารวม กัน ไม่ว่าจะเป็นการแสดงข้อมูลผ่านฟอร์มด้วย GUI ระดับสูง, การ วาดและแสดงรูปกราฟิก, การตรวจสอบการกดคีย์ รวมถึงเทคนิค ต่างๆ ในการเขียนโปรแกรมเกี่ยวกับเกม

  • ทำความเข้าใจเกม Puzzle
  • ปุ่มที่ใช้เล่นเกมมีปุ่มไหนบ้าง
  • ข้อควรทราบเมื่อนำไปรันใน Palm

บทที่ 18 เขียน MIDlet ติดต่อเน็ตเวิร์ก

การเขียน MIDlet เพื่อติดต่อกับเน็ตเวิร์กหรือเครือข่าย ไม่ใช่ เรื่องยาก เพราะใน J2ME มีคำสั่งสำหรับจัดการเกี่ยวกับเน็ตเวิร์ก เตรียมไว้ให้แล้ว คราวนี้เราจะเห็นตัวอย่างของจริง โดยการพัฒนาเป็น MIDlet ที่ไปดึงเอาข้อมูลไฟล์คำพยากรณ์จากเซิร์ฟเวอร์ในอินเทอร์เน็ต มาแสดงผลใน MIDlet

  • สร้างการเชื่อมต่อ
  • เลือกอินเทอร์เฟซของ Stream
  • อ่านข้อมูลจาก Stream
  • Daily Horoscope พยากรณ์รายวัน
  • เตรียมรูปกราฟิก
  • รวบรวมไฟล์คำพยากรณ์
  • ผลการทำงานของ MIDlet

บทที่ 19 ใช้ Decompiler แกะโค้ด Java

การแปลงแอปพลิเคชันที่เขียนด้วยภาษา Java ให้กลับมา เป็นซอร์ซโค้ดนั้น สามารถทำได้ง่ายๆ โดยใช้โปรแกรมพวก Java Decompiler เข้าช่วย ประโยชน์สำหรับนักพัฒนาก็คือ ทำให้สามารถ แกะดูซอร์ซโค้ดของผู้อื่น เพื่อศึกษาเทคนิคการเขียนโปรแกรม ดังนั้น ในทางกลับกัน โปรแกรมจำพวกนี้ทำให้นักพัฒนาไม่สามารถปกปิด เทคนิคของตนเอาไว้อีกต่อไป

  • แนะนำ DJ Java Decompiler
  • ทดลอง NMI's Java Code Viewer

บทที่ 20 ชุดพัฒนา MIDP ของ Nokia

นอกจาก Sun และ Siemens แล้ว Nokia ก็เป็นอีกบริษัทหนึ่ง ที่ออกชุดพัฒนาโปรแกรมมาให้นักพัฒนา MIDlet นำไปใช้งาน โดย มีเป้าหมายคล้ายกับ Siemens คือ เพื่อกระตุ้นให้มีการพัฒนาแอป-พลิเคชันหรือ MIDlet ที่สามารถใช้งานหรือใช้คุณสมบัติต่างๆ ของ โทรศัพท์ Nokia ได้อย่างเต็มที่

  • สมัครสมาชิก Forum ของ Nokia ก่อน
  • ดาวน์โหลดและติดตั้ง SDK
  • รัน Emulator ของ Nokia

ภาคผนวก รวมเว็บไซต์ที่น่าสนใจ ของ J2ME

  • ชุดพัฒนาโปรแกรมหรือ SDK ของ J2ME
  • แหล่งดาวน์โหลด MIDlet
  • ข้อมูลเกี่ยวกับ J2ME และเอกสารต่างๆ
  • ข้อมูลเกี่ยวกับ J2ME ภาษาไทย
  • Palm OS

FAQ คำถามที่ถามกันบ่อย