Home : จาวา (Java) คืออะไร ?
Q10066 - INFO: จาวา (Java) คืออะไร ?

Summary

จาวา (Java) คืออะไร ? ถ้าเราดูความหมายของคำว่า จาวา จะมีความหมายหลายอย่าง ได้แก่

  • ภาษาจาวาที่ใช้เขียนโปรแกรมจาวา
  • Java platform ที่ใช้ในการรันโปรแกรมจาวา
  • เครื่องดื่มกาแฟ (แสลงในภาษาอังกฤษ) นี่เป็นเหตุผลว่าทำไมเรามักเห็นปกหนังสือจาวามีแก้วกาแฟอยู่เสมอ
  • เกาะชวาในประเทศอินโดนิเซีย (เกาะชวา จะเขียนในภาษาอังกฤษเป็น Java)

ความหมายที่เราคุ้นเคยก็คงจะเป็นภาษาจาวาและ Java platform ที่รันโปรแกรมจาวา แต่ถ้าเรามองจาวาในมุมกว้าง จาวาจะเป็น technology ที่ใช้ในการพัฒนาโปรแกรมแบบต่าง ๆ ซึ่งได้แก่ application, applet, web application (servlet & JSP), EJB, และ midlet โดยโปรแกรมเหล่านี้จะมีลักษณะพิเศษที่ต่างจากโปรแกรมที่เขียนขึ้นในภาษาอื่น อย่าง C หรือ C++ คือสามารถทำงานได้หลาย platform* (อย่างเช่น Windows, Solaris, Linux) โดยไม่จำเป็นต้องเขียนใหม่ หรือ compile ใหม่ ทำให้เราสามารถใช้โปรแกรมเดิมที่เคยพัฒนามาแล้วบน platform หนึ่งไปใช้งานบน platform อื่น ๆ ได้โดยง่าย ซึ่งช่วยประหยัดเวลาและทรัพยากรในการที่จะทำให้โปรแกรมหนึ่งทำงานได้มากกว่าหนึ่ง platform  ตัวอย่างเช่น ถ้าเราเขียนโปรแกรมจาวาขึ้นมาบน Windows  โปรแกรมที่เราเขียนขึ้นนี้ก็สามารถที่จะทำงานบน Solaris, Linux หรือ Mac ได้โดยไม่ต้องแก้ไขอะไรเลย ไม่ต้อง compile ใหม่ เราสามารถนำ class files ของโปรแกรมที่เราเขียนขึ้นไปใช้งานบน platform อื่น ๆ ได้ทันที

เทคโนโลยีจาวา มีองค์ประกอบหลักที่สำคัญสองอย่าง ที่ทำให้โปรแกรมจาวาสามารถทำงานได้มากกว่าหนึ่ง platform คือ

  • ภาษาจาวา ซึ่งเป็นภาษาแบบวัตถุที่ใช้ในการเขียนและพัฒนาโปรแกรมจาวา
  • Java platform คือ platform หรือสภาพแวดล้อมที่ใช้ในการรันโปรแกรมจาวา โปรแกรมจาวาจะทำงานบน Java platform เท่านั้น  Java platform จะประกอบไปด้วยสองอย่าง คือ Java VM (JVM) และ runtime library  โปรแกรมจาวาที่เราเขียนขึ้นจะทำงานบน platform ใดก็ได้ที่มี Java platform ทำงานอยู่

ทำไมหลายคนถึงเลือกใช้จาวา ? จาวามีข้อดีหลัก ๆ อยู่หลายข้อ ดังนี้

  • โปรแกรมจาวาที่เขียนขึ้นสามารถทำงานได้หลาย platform โดยไม่จำเป็นต้องแก้ไขหรือ compile ใหม่ ทำให้ช่วยลดค่าใช้จ่ายและเวลาที่ต้องเสียไปในการ port หรือทำให้โปรแกรมใช้งานได้หลาย platform
  • ภาษาจาวาเป็นภาษาเชิงวัตถุ ซึ่งเหมาะสำหรับพัฒนาระบบที่มีความซับซ้อน การพัฒนาโปรแกรมแบบวัตถุจะช่วยให้เราสามารถใช้คำหรือชื่อ ต่าง ๆ ที่มีอยู่ในระบบงานนั้นมาใช้ในการออกแบบโปรแกรมได้ ทำให้เข้าใจได้ง่ายขึ้น
  • ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น
  • ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย
  • ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น
  • มี IDE, application server, และ library ต่าง ๆ มากมายสำหรับจาวาที่เราสามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย ทำให้เราสามารถลดค่าใช้จ่ายที่ต้องเสียไปกับการซื้อ tool และ s/w ต่าง ๆ

อย่างไรก็ตาม จาวาเองก็มีข้อเสียอยู่ด้วยเหมือนกัน ได้แก่

  • ทำงานได้ช้ากว่า native code (โปรแกรมที่ compile ให้อยู่ในรูปของภาษาเครื่อง) หรือโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น อย่างเช่น C หรือ C++ ทั้งนี้ก็เพราะว่าโปรแกรมที่เขียนขึ้นด้วยภาษาจาวาจะถูกแปลงเป็นภาษากลางก่อน แล้วเมื่อโปรแกรมทำงานคำสั่งของภาษากลางนี้จะถูกเปลี่ยนเป็นภาษาเครื่องอีกทีหนึ่ง ทีล่ะคำสั่ง (หรือกลุ่มของคำสั่ง) ณ runtime ทำให้ทำงานช้ากว่า native code ซึ่งอยู่ในรูปของภาษาเครื่องแล้วตั้งแต่ compile  โปรแกรมที่ต้องการความเร็วในการทำงานจึงไม่นิยมเขียนด้วยจาวา
  • tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าเราดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า (แต่เราต้องซื้อ tool ของ MS และก็ต้องรันบน platform ของ MS)

*platform คือสภาพแวดล้อมที่โปรแกรมทำงานอยู่ ส่วนมากเราจะพูดถึง platform หนึ่ง ๆ โดยอิงจากระบบปฏิบัติการที่ใช้ (operating system) และ hardware ที่ใช้ อย่างเช่น

  • Windows platform จะหมายถึงสภาพแวดล้อมที่โปรแกรมทำงานบนระบบปฏิบัติการ Windows ซึ่งทำงานโดยใช้ CPU x86 ของ Intel
  • Linux platform จะหมายถึงสภาพแวดล้อมที่โปรแกรมทำงานบนระบบปฏิบัติการ Linux ซึ่งทำงานโดยใช้ CPU ตระกูล x86 ของ Intel 
  • Solaris/SPARC platform จะหมายถึงสภาพแวดล้อมที่โปรแกรมทำงานบนระบบปฏิบัติการ Solaris ซึ่งทำงานโดยใช้ CPU SPARC
  • Solaris/x86 platform จะหมายถึงสภาพแวดล้อมที่โปรแกรมทำงานบนระบบปฏิบัติการ Solaris ซึ่งทำงานโดยใช้ CPU ตระกูล x86 ของ Intel
Related Articles
No Related Articles Available.

Article Attachments
No Attachments Available.

Related External Links
No Related Links Available.
Help us improve this article...
What did you think of this article?

poor 
1
2
3
4
5
6
7
8
9
10

 excellent
Tell us why you rated the content this way. (optional)
 
Approved Comments...
ดีดีดี Approved: 9/2/2010 4:02 PM
ขอบคุณครับ Approved: 8/30/2010 10:52 PM
ดีมากครับ Approved: 8/15/2010 12:25 PM
Thanks for good information kaa Approved: 7/28/2010 5:51 PM
thank Approved: 7/27/2010 1:26 AM
ยอดเยี่ยมกระเทียมดอง เข้าใจอะไรๆ ในชีวิตได้มากขึ้นเลยทีเดียว Approved: 7/5/2010 5:48 PM
เข้าใจขึ้นมากเลยครับ ขอบคุณครับ Approved: 6/16/2010 2:49 PM
ขอบคุณมากครับ Approved: 3/15/2010 4:51 PM
ค่ะ เข้าใจแล้ว Approved: 2/18/2010 6:53 PM
thank you...very much.. Approved: 2/9/2010 4:40 PM
ขอบคุณมากครับ Approved: 1/22/2010 2:09 PM
thanks Approved: 10/26/2009 11:34 AM
thanks Approved: 10/19/2009 10:52 AM
thanks Approved: 6/19/2009 11:30 AM
ขอบคุณสำหรับความรู้มากครับ อยากให้เว็บนี้มีเนื้อหาที่สอนละเอียด สำหรับู้เริ่มต้นเข้าใจง่ายมากขึ้น : ) Approved: 6/8/2009 3:41 PM
good at all. Approved: 6/7/2009 9:22 AM
Good !! Approved: 4/7/2009 7:06 PM
feel goods. Approved: 12/13/2008 8:11 PM
Created on 5/28/2007 11:07 PM.
Last Modified on 5/28/2007 11:09 PM.
Last Modified by admin.
Skill Level: Beginner.
Article has been viewed 27231 times.
Rated 6 out of 10 based on 54 votes.
Print Article
Email Article