ขั้นตอนการเขียนจาวา
ขั้นตอนการเขียนจาวา
  1. Download : JDK จาก Oracle มาติดตั้ง
  2. เตรียมสภาพแวดล้อม เช่นกำหนด Path หรือการทำงานใน DOS mode เป็นต้น
  3. เขียนโปรแกรมด้วย editor เช่น edit หรือ notepad เป็นต้น
  4. แปลโปรแกรม ใน DOS mode
  5. สั่งประมวลผล JAVA application หรือ JAVA applet
  6. การใช้ editor ช่วยในการเขียน แปล และประมวลผล
  7. การเขียนโปรแกรมสำหรับ อุปกรณ์อื่น
1. Download compiler
Java Standard Edition (JSE) [http://www.oracle.com/technetwork/java]
มีตัวแปรที่หลายบริษัทสร้างขึ้น แต่ตัวที่น่าสนใจ คือ Java ที่กำลังอยู่ในระหว่างการพัฒนาอย่างต่อเนื่อง ผมขอเลือก J2SE ของ sun เพราะใช้งานใน text mode นำไปใช้ใน linux ก็มีหลักการเหมือนกัน แต่ถ้าเป็นของบริษัทอื่น ส่วนใหญ่ต้องใช้ใน Windows ไม่อย่างยึดติดกับ OS จึงเลือกที่จะใช้ J2SE สอนนักศึกษา
แต่บริษัทต่าง ๆ พัฒนาตัวแปลเป็นระบบ IDE (Integrated development environment) ซึ่งใช้ง่ายกว่า ส่วน J2SE แม้ไม่มี IDE ในตัว แต่มีโปรแกรมหลายตัวที่นำมาใช้เป็น editor แล้วเรียก J2SE มาแปล และใช้งานได้สะดวกขึ้น เช่น kawa เป็นต้น
ชุดโปรแกรมพัฒนา javaบริษัท
Java developer Kit(JDK)Java.sun.com(Java soft)
Visual cafeSymantec
JBuilder (tutorial by Michael J. Donahoo)Borland
JDeveloperOracle
Visual age for javaIBM
Visual J++Microsoft
2. เตรียมสภาพแวดล้อม 2.1 วิธีสร้าง short cut
    สร้าง short cut ไว้บน Desk top เพื่อให้เรียกใช้ได้ง่าย
  1. Right click บน Desk top จะมี pop-up menu ขึ้นมา
  2. เลือก New, Short cut
  3. พิมพ์ c:\windows\command.com ในช่องว่างที่อยู่เหนือคำว่า Browse..
  4. เมื่อกดปุ่ม Next จะแสดงคำว่า MS-DOS Prompt ให้เปลี่ยนเป็นคำว่า JAVA จะได้จำง่ายแล้ว กดปุ่ม Finish
  5. ให้ใช้ Mouse วางเหนือ Icon แล้วกดปุ่ม Right click แล้วเลือก Properties จะปรากฏภาพดังด้านล่าง ให้แก้ Working และ Batch file
2.2 การสร้าง short cut ชื่อ java เรียก c:\windows\command.com บน desktop 2.3 Code ในแฟ้ม setclass.bat (version ของ java ให้เปลี่ยนตามรุ่นที่ท่านมี)
c:\thaiall.com\class>edit setclass.bat
    doskey
    path=%path%;c:\j2sdk1.4.0_03\bin
    
3. เขียนโปรแกรมด้วย editor
หลักจากเรียก short cut ชื่อ java จะเข้าสู่ DOS mode ให้เรียกโปรแกรมชื่อ edit ซึ่งเป็นโปรแกรมของ dos แล้วตามด้วยชื่อโปรแกรมพร้อมนามสกุลดังตัวอย่าง จากนั้นก็พิมพ์ตัวอย่างโปรแกรมตามด้านล่างนี้เลย ตัวพิมพ์ใหญ่ พิมพ์เล็กต้องเหมือนผมนะครับ
c:\thaiall.com\class>edit prthello.java
    class prthello {
      public static void main(String args[]) {
        System.out.println("hello");
      }
    }
    
หลังพิมพ์โปรแกรมแล้วให้จัดเก็บด้วยการกด Alt-F-S เพื่อจัดเก็บ แล้วออกจากโปรแกรมด้วย Alt-F-X แต่โดยปกติผมจะกดปุ่ม Alt-F-X แล้วโปรแกรมจะถามว่าจัดเก็บหรือไม่ ก็จะตอบว่า Yes ไม่ต้องเรียกเมนู 2 รอบ จากนั้นก็จะออกมาที่ DOS prompt
4. แปลโปรแกรมใน DOS mode
การแปลโปรแกรมจะพิมพ์คำสั่งง่าย ๆ ดังตัวอย่างข้างล่าง หากการแปลเสร็จสิ้นจะไม่แสดงผลอะไรบนจอภาพ นอกจากขึ้น DOS prompt บรรทัดใหม่ ข้อย้ำอีกครั้งว่า ถ้าแปลผ่านจะไม่แสดงข้อความใด ๆ ให้เห็นนอกจากขึ้น DOS prompt บรรทัดใหม่
ตัวอย่างข้างล่างนี้ แสดงข้อพิดพลาดที่ตัวแปลภาษาพบ โดยปกติคำว่า System.out.println("hello"); คำว่า S จะเป็นพิมพ์ใหญ่ หากมีใครเขียน พิมพ์เล็กก็จะแปลโปรแกรมไม่ผ่าน ตัวอย่างข้างล่างแสดงให้เห็นว่าเขียนโปรแกรมมาไม่ถูก จึงแปลไม่ผ่าน และพบข้อผิดพลาด 1 error
c:\thaiall.com\class>javac prthello.java
    prthello.java:5: package system does not exist
        system.out.println("hello");
              ^
    1 error
    
c:\thaiall.com\class>
5. สั่งประมวลผล JAVA application
เมื่อแปลโปรแกรมแล้ว ก็ต้องสั่งประมวลผลโปรแกรมที่ได้มาจากการแปล แฟ้มที่ได้มาจากการแปลคือ prthello.class แต่การสั่งให้โปรแกรมทำงานต้องอาศัยโปรแกรม java.exe เรียก ดังนั้นทุกครั้งที่จะสั่งให้ .class ทำงานต้องเขียนดังข้างล่างนี้ จึงจะเห็นผลลัพธ์ที่ต้องการ
c:\thaiall.com\class>java prthello
    hello
    
c:\thaiall.com\class>
6. การใช้ editplus ช่วยในการเขียน แปล และประมวลผล
โปรแกรม editplus เป็นเพียง editor มิใช่ compiler แต่เป็นโปรแกรมที่ช่วยเรียก compiler มาแปลโปรแกรมที่กำลังเขียนอยู่ พร้อมกับ run โดยเพิ่มเข้าไปในส่วนของ Tools, Configure User Tools ... ทำให้สามารถเรียกโปรแกรมอื่น มาทำงาน โดยแสดงผลในส่วนของ Output windows ว่าผลการ run หรือ compile เป็นอย่างไร โดยเรียก program ด้วยการกดปุ่ม CTRL+1 หรือ CTRL+2 เป็นต้น... มีตัวอย่างการสร้างปุ่มดังภาพด้านล่าง
# ตัวอย่างนี้ใช้ชื่อห้องเก็บ compiler เป็น c:\java แต่ถ้าเป็นของท่านจะเป็น c:\j2sdk.. พร้อมชื่อเวอร์ชั่น นะครับ
ถ้าต้องการให้ compile หรือ run ในห้องใดก็ได้ต้องแก้ค่า path โดยเพิ่มห้อง c:\j2sdk\bin เช่น c:\>path = %path%;c:\j2sdk\bin หากต้องการแก้ใน Windows XP ต้องเข้า Control Panel, System, Advanced, Environment Variables และเพิ่มคำว่า ;c:\j2sdk\bin ต่อท้ายค่าเดิมของตัวแปร path

ตัวอย่างการเรียก applet ผ่าน DOS mode
C:\j2sdk1.4.1_01\bin>appletviewer x.htm
C:\j2sdk1.4.1_01\bin>explorer x.htm
C:\j2sdk1.4.1_01\bin>appletviewer j1101.java
ตัวอย่าง code ใน x.htm
<applet code=j1101 width=200 height=200></applet>
ถ้าเรียก applet ผ่าน editplus ต้องเพิ่มบรรทีดแรก
//<applet code=j1101 width=200 height=200></applet>
import java.lang.*;
import java.applet.*;
import java.awt.Graphics;
public class j1101 extends java.applet.Applet {
public void paint(Graphics g) {
g.drawString("test",10,20);
}
}

7. โปรแกรมแรกบนมือถือ ด้วย KToolbar และ Jar
โปรแกรมนี้ download burin1.jar ไปใช้กับมือถือได้เลย
 โปรแกรม java บนมือถือโ ปรแกรมแรกของผม ทดสอบในคอมพิวเตอร์
   1. ติดตั้ง J2ME ให้ได้หลังติดตั้ง J2SDK แล้ว
   2. เปิด KToolbar
   3. เลือก New project..
   4. กรอก burin1 ในช่อง ProjectName 
   5. กรอก burin1.TextHelloDemo ในช่อง MIDIet Class Name แล้วกดปุ่ม OK
   6. Copy source code ด้านล่างไปไว้ใน notepad
   7. Save โปรแกรมนี้ชื่อ TextHelloDemo.java ไว้ใน C:\WTK21\apps\burin1\src
   8. กดปุ่ม Build
   9. กดปุ่ม Run จะเห็นรูปโทรศัพท์มือถือ และคำว่า burin1 ในโทรศัพท์มือถือ
 ===============
 สร้าง jar อ่านจาก C:\WTK21\docs\UserGuide.pdf
 พิมพ์ C:\WTK21\apps\burin1\bin>jar cfm burin1.jar manifest.mf -C ..\classes .
 ลองคำสั่ง dir ก็จะเห็น burin1.jar เพื่อดูขนาดแฟ้ม พบขนาดเป็น 1656 Byte จำเลขนี้ไว้
   10. ใช้ KToolbar open project burin1 ขึ้นมา แล้วเลือก Settings..
   11. เลือก Tab ชื่อ Required แล้ว Click ชื่อ MIDlet-Jar-Size เปลี่ยนขนาด 100 เป็น 1656
   12. กดปุ่ม Build เพื่อสร้างแฟ้ม burin1.jad ใหม่
 ===============
 นำ .jar และ .jad เข้ามือถือ
   13. ต่อสาย datalink กับคอมพิวเตอร์ผ่าน com1
   14. เปิด Start, Program, Siemens Data Suite, Mobile
   15. เข้าห้อง Mobile\Java\Jam แล้วสร้างห้องชื่อ burin1
   16. คัดลอก burin1.jad และ burin1.jar จาก C:\WTK21\apps\burin1\bin\ ไว้ห้อง burin1 ในมือถือ
   17. ทดสอบ run โปรแกรมชื่อ burin1 ก็เหมือนกับที่ run ใน KToolbar ครับ

// C:\WTK21\apps\burin1\src\TextHelloDemo.java
package burin1; 
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
public class TextHelloDemo extends MIDlet implements CommandListener {
  private Command exitCommand = new Command("Exit", Command.EXIT, 1);    
  private boolean firstTime;    
  private Form mainForm;    
  public TextHelloDemo() { 
    firstTime = true;
    mainForm = new Form("rujjanapan");
  }    
  protected void startApp() {
    if(firstTime) {
      mainForm.append("This demo display hello" + "and wait your text.");    
      mainForm.append(new TextField("Hello1", "", 5, TextField.NUMERIC));
      mainForm.append(new TextField("Hello2", "", 15, TextField.NUMERIC));			
      mainForm.addCommand(exitCommand);
      mainForm.setCommandListener(this);
      firstTime = false;
    }
    Display.getDisplay(this).setCurrent(mainForm);
  }    
  public void commandAction(Command c, Displayable s) {
	if(c == exitCommand) {
	  destroyApp(false);
	  notifyDestroyed();
	}	
  }    
  protected void destroyApp(boolean unconditional) { }    
  protected void pauseApp() { }
}

8. ข้อมูลสำหรับ Windows XP ที่มีปัญหาการใช้ JAVA 1. http://www.saigoninfo.com/mjv_help.htm
2. ข่าวเรื่อง XP ไม่รับ JAVA หรือ JVM เข้ามาในระบบ
โปรแกรมสำหรับ Upgrade WindowsXP ให้ใช้ JAVA (5.4 MB)
+ http://www.saigoninfo.com/msjavx86.exe
+ http://downloads.downseek.com/18598/msjavx86.exe
+ ftp://sqr.myftp.biz/XP/XP Service Packs/msjavx86.exe
+ http://visiteinteractive.free.fr/VM_java/msjavx86.exe
+ http://www.onlinemg.com/download/msjavx86.exe
+ http://www.bunden.dk/download/msjavx86.exe
+ https://www.alibre.com/alibrelibraries/ftp/JavaVM/9xNT4/msjavx86.exe
+ http://download.windowsupdate.com/.../MSJavWU.exe
+ http://www.download.windowsupdate.com/.../MSJavWU.exe
แนะนำเว็บ (Web Guides)
  1. http://home.cogeco.ca/~ve3ll/jatutor0.htm?reload_coolmenus (สุดยอด + ละเอียด)
  2. http://www.janeg.ca/scjp/overload/poly.html
  3. http://www.javaworld.com
  4. http://java.sun.com
  5. http://java.sun.com/j2se/1.4.2/download.html
  6. http://java.sun.com/j2se/1.4.1/docs/api/index-files/
  7. http://www.cs101.org/ipij/procedures.html (explain: encapsulation)

http://goo.gl/72BPC