ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ประวัติภาษา JAVA

ภาษา Java เป็นภาษาโปรแกรมเชิงวัตถุที่พัฒนาขึ้นโดย  “James Gosling”   และทีมวิศวกรของเขา ซึ่งบริษัท Sun Microsystems ต้องการนำภาษาจาวามาใช้แทนภาษา C++  ชื่อของ “Java” มาจากชื่อกาแฟที่ทีมวิศวกรของ Sun ดื่มตอนที่ร่วมกันพัฒนาภาษา Java ขึ้นมา 

Java  ถูกคิดค้นและสร้างโดย บริษัท Sun Microsystems ซึ่งเป็นบริษัทผู้ขายระบบ Unix ที่มีชื่อว่า Solaris ซึ่งจุดเด่นของภาษา Java อยู่ที่ผู้เขียนโปรแกรมสามารถใช้หลักการของ Object-Oriented Programming มาพัฒนาโปรแกรมของตนด้วย Java ได้ พัฒนาขึ้นโดยทีมวิจัยของ บริษัท Sun Microsystems พัฒนามาจากโครงการที่ต้องการพัฒนาระบบซอฟต์แวร์เพื่อควบคุมเครื่องใช้ไฟฟ้าขนาดเล็กภายในบ้านชื่อเดิมคือภาษา Oak ต่อมาเปลี่ยนชื่อเป็นภาษา Java

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

ภาษา Java เริ่มเป็นที่นิยมแพร่หลายในปี ค.ศ. 1995 ภาษาจาวาเป็นภาษาที่ไม่ขึ้นกับแพลตฟอร์ม (platform independent)

ข้อดีของ ภาษา Java

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

-       - โปรแกรมที่เขียนขึ้นโดยใช้ภาษา Java จะมีความสามารถทำงานได้ในระบบปฏิบัติการที่แตกต่างกัน ไม่จำเป็นต้องดัดแปลงแก้ไขโปรแกรม เช่น หากเขียนโปรแกรมบนเครื่อง Sun โปรแกรมนั้นก็สามารถถูก compile และ run บนเครื่องพีซีธรรมดาได้

-      - ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย

-      - ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ เมื่อเปรียบเทียบ code ของโปรแกรมที่เขียนขึ้นโดยภาษา Java กับ C++ พบว่า โปรแกรมที่เขียนโดยภาษา Java จะมีจำนวน code น้อยกว่าโปรแกรมที่เขียนโดยภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น

-       - ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้น ด้วยภาษาอื่น เพราะ Java มี security ทั้ง low level และ high level ได้แก่ electronic signature, public and private key management, access control และ certificatesของ

-       - มี IDE, application server, และ library ต่าง ๆ มากมายสำหรับจาวาที่เราสามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย ทำให้เราสามารถลดค่าใช้จ่ายที่ต้องเสียไปกับการซื้อ tool และ s/w ต่าง ๆ

ข้อเสียของ ภาษา Java

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

 

- Tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าเราดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า (แต่เราต้องซื้อ tool ของ MS และก็ต้องรันบน platform ของ MS)

ผู้คิดต้นแบบ คือ James Gosling และคณะ จากบริษัท Sun Microsystems

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

ผล คือ ภาษาสำหรับเขียนโปรแกรม (Application Programming) ซึ่งเป็นลักษณะของโปรแกรมเชิงวัตถุ (Object Oriented Programming) ซึ่งสามารถใช้งานบนเว็บได้ด้วย

การพัฒนาการในช่วงเวลาต่าง ๆ

ปี 1991 ได้ทำการวิจัยเพื่อพัฒนาซอฟต์แวร์ที่ใช้ควบคุมอุปกรณ์เล็กทรอนิคขนาดเล็ก ซึ่งได้ผลลัพธ์ที่สำคัญคือ ภาษาโอ๊ค (Oak)

 

ปี 1993 ภาษาโอ๊คได้ถูกปรับปรุงใหม่เพื่อใช้ในการสร้างเว็บแอพพลิเคชั่น (web application) พร้อมกับสร้างเว็บเบราว์เซอร์ (web browser) ที่รองรับ ชื่อว่าเว็บรันเนอร์ (WebRunner)

ปี 1995

- บริษัทซันได้เปิดตัวภาษาจาวา (Java) (ภาษาโอ๊คเดิม) พร้อมกับเว็บเบราว์เซอร์ ที่รองรับภาษานี้ ชื่อว่า ฮอตจาวา (HotJava) (WebRunner เดิม)

- ได้รับการสนับสนุนจากบริษัทใหญ่ทั้งเน็ตสเคบ (Netscape), ไมโครซอฟต์ (Microsoft), และ ไอบีเอ็ม (IBM)

- บริษัทซันได้เริ่มแจกจ่าย Java development Kit (JDK) ซึ่งเป็นชุดพัฒนาโปรแกรมภาษาจาวาในอินเตอร์เน็ต

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
หลักการ วิธีการทำเว็บไซต์แสดงได้หลายภาษา ด้วย PHP เขียนเว็บสองภาษา
โดย jamepiyawat ส 17 ส.ค. 2019 10:17 pm บอร์ด PHP Knowledge
0
16
ส 17 ส.ค. 2019 10:17 pm โดย jamepiyawat
ขอคำแนะนำ เว็บไซด์ค่ะ
โดย Luckluck ส 17 ส.ค. 2019 8:35 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
1
14
ส 17 ส.ค. 2019 8:40 pm โดย mindphp
Joomla website
โดย Luckluck ส 17 ส.ค. 2019 8:17 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
1
8
ส 17 ส.ค. 2019 8:37 pm โดย mindphp
Socratic แอปช่วยทำการบ้านและค้นหาบทเรียน
โดย jamepiyawat ส 17 ส.ค. 2019 5:56 pm บอร์ด Share Knowledge
0
6
ส 17 ส.ค. 2019 5:56 pm โดย jamepiyawat
สอบถามการใช้อัตราแลกเปลี่ยนในการบันทึกเจ้าหนี้ต่างประเทศ
โดย EyePornnipa ส 17 ส.ค. 2019 4:06 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
2
21
ส 17 ส.ค. 2019 4:09 pm โดย EyePornnipa
คำสั่งนี้คืออะไรครับ เหมือน short if หรือเปล่าครับ
โดย jamepiyawat ส 17 ส.ค. 2019 2:22 pm บอร์ด Programming - PHP
4
35
ส 17 ส.ค. 2019 3:40 pm โดย jamepiyawat
การลงทะเบียนผู้ค้ากับภาครัฐในระบบ e-GP
โดย EyePornnipa ส 17 ส.ค. 2019 1:53 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
15
ส 17 ส.ค. 2019 1:53 pm โดย EyePornnipa
หากจ่ายชำระค่าโทรศัพท์เกิน ควรบันทึกบัญชียังไง
โดย EyePornnipa ศ 16 ส.ค. 2019 12:10 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
1
29
ส 17 ส.ค. 2019 11:06 am โดย Amp_Audit
ยาหม่องสมุนไพรอินเดีย Himalaya Pain Balm 45 g กระปุกใหญ่ ใช้ดม ทาแก้วิงเวียนศีรษะ หอมสดชื่น ส่ง Kerry ถึงภายใน 1-3 วัน
โดย Tanadet ส 17 ส.ค. 2019 10:58 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
12
ส 17 ส.ค. 2019 10:58 am โดย Tanadet
สอบถาม การทำ web 2 ภาษา หน่อยครับ
โดย jirawoot ส 17 ส.ค. 2019 10:58 am บอร์ด Programming - C/C++ & java & Python
1
29
ส 17 ส.ค. 2019 10:19 pm โดย jamepiyawat
งานประจำวันที่ 17 กรกฎาคม 2562
โดย jamepiyawat ส 17 ส.ค. 2019 10:16 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
2
11
ส 17 ส.ค. 2019 7:19 pm โดย jamepiyawat
งานประจำวันที่ 17 สิงหาคม 2562
โดย jirawoot ส 17 ส.ค. 2019 10:02 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
3
9
ส 17 ส.ค. 2019 10:54 pm โดย jirawoot
งานประจำวันที่ 17 สิงหาคม 2562
โดย EyePornnipa ส 17 ส.ค. 2019 10:02 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
5
35
ส 17 ส.ค. 2019 7:06 pm โดย EyePornnipa
Google Assistant เพิ่มฟีเจอร์ใหม่ สามารถเตือนความจำเราได้
โดย jamepiyawat ศ 16 ส.ค. 2019 6:41 pm บอร์ด Share Knowledge
0
18
ศ 16 ส.ค. 2019 6:41 pm โดย jamepiyawat
วิธีการดึกข้อมูลโพสต์โดยไม่ให้ มีการ Query Sql ที่มาเกิน ใน phpbb
โดย Ittichai_chupol ศ 16 ส.ค. 2019 6:08 pm บอร์ด PHP Knowledge
0
12
ศ 16 ส.ค. 2019 6:08 pm โดย Ittichai_chupol
พิสูจน์รักแท้ 3,790 ขั้น ที่… เขาวงพระจันทร์ จ.ลพบุรี (รอย้ายไปในบอร์ด Thailand Hotel)
โดย Patipat ศ 16 ส.ค. 2019 5:47 pm บอร์ด M088 - ปฏิภัทร สารธรรม
0
4
ศ 16 ส.ค. 2019 5:47 pm โดย Patipat
B - กด Save สร้างรายการ Product บนเมนู HR ไม่ได้
โดย EyePornnipa ศ 16 ส.ค. 2019 3:25 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
1
6
ศ 16 ส.ค. 2019 3:47 pm โดย thatsawan
Q - ต้องการทำรายการจ่ายค่าใช้จ่ายจ่ายล่วงหน้า บนเมนู HR
โดย EyePornnipa ศ 16 ส.ค. 2019 3:00 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
2
10
ศ 16 ส.ค. 2019 3:43 pm โดย EyePornnipa
G - เตรียมอัพเดทโปรแกรม เฟส 4
โดย thatsawan ศ 16 ส.ค. 2019 2:06 pm บอร์ด AZKing (Main)
2
5
ส 17 ส.ค. 2019 11:00 pm โดย thatsawan
B - Import - Users ไม่ได้ [2019-08][003]
โดย tsukasaz ศ 16 ส.ค. 2019 11:28 am บอร์ด IIEC - Feedback Service System - Tester
0
2
ศ 16 ส.ค. 2019 11:28 am โดย tsukasaz