top of page
JAVA

Java เป็นวัตถุประสงค์ทั่วไปคอมพิวเตอร์ภาษาโปรแกรมที่เป็นพร้อมกัน, ระดับ-based, วัตถุ, [13]และการออกแบบเฉพาะที่จะมีไม่กี่เป็นการอ้างอิงการดำเนินการที่เป็นไปได้ มันมีวัตถุประสงค์เพื่อให้นักพัฒนาแอพลิเคชัน "เขียนครั้งเดียวทำงานได้ทุกที่" (วร) [14] หมายความว่ารวบรวมโค้ดJava สามารถทำงานบนแพลตฟอร์มทั้งหมดที่รองรับ Java โดยไม่จำเป็นต้อง recompilation ได้. [15]การใช้งานจาวาเป็นข้อมูลที่รวบรวมโดยปกติจะbytecode ที่สามารถทำงานบนเครื่องเสมือน Java (JVM) โดยไม่คำนึงถึงสถาปัตยกรรมคอมพิวเตอร์ ขณะที่ในปี 2015 Java เป็นหนึ่งในที่สุดการเขียนโปรแกรมภาษาที่นิยมในการใช้งาน, [16] [17] [18] [19]โดยเฉพาะอย่างยิ่งสำหรับการใช้งานเว็บไคลเอนต์เซิร์ฟเวอร์ที่มีรายงาน 9000000 พัฒนา.[ต้องการอ้างอิง] Java เดิม พัฒนาโดยเจมส์กอสลิงที่ซันไมโครซิสเต็มส์(ซึ่งได้รับนับตั้งแต่ที่ได้มาโดย บริษัท ออราเคิลคอร์ปอเรชั่น) และเปิดตัวในปี 1995 เป็นองค์ประกอบหลักของ Sun Microsystems 'แพลตฟอร์มJava ภาษามามากของไวยากรณ์จากCและC ++ แต่ก็มีน้อยลงในระดับต่ำสิ่งอำนวยความสะดวกกว่าทั้งของพวกเขา

เดิมและดำเนินการอ้างอิง Java คอมไพเลอร์, เครื่องเสมือนและห้องสมุดชั้นที่ถูกปล่อยออกมาจากดวงอาทิตย์ภายใต้เงื่อนไขที่เป็นกรรมสิทธิ์ ณ เดือนพฤษภาคม 2007 ในการปฏิบัติตามข้อกำหนดของกระบวนการชุมชนJavaอาทิตย์ relicensed ที่สุดของเทคโนโลยี Java ภายใต้ใบอนุญาตสาธารณะทั่วไป อื่น ๆ นอกจากนี้ยังได้มีการพัฒนาทางเลือกในการใช้งานของเทคโนโลยีเหล่านี้ดวงอาทิตย์เช่นGNU คอมไพเลอร์สำหรับ Java (คอมไพเลอร์ bytecode) GNU Classpath (ห้องสมุดมาตรฐาน) และIcedTea -Web (ปลั๊กอินเบราว์เซอร์สำหรับแอปเพล็)

รุ่นล่าสุดคือ Java 8 ซึ่งเป็นรุ่นเดียวที่ไ​​ด้รับการสนับสนุนในขณะนี้สำหรับฟรีโดยออราเคิลแม้ว่ารุ่นก่อนหน้านี้ได้รับการสนับสนุนทั้งจาก Oracle และ บริษัท อื่น ๆ ในเชิงพาณิชย์

 

 การหลักมีห้าเป้าหมายหลักในการสร้าภาษา Java นี้: [15]

  1. มันจะต้องเป็น "ง่ายเชิงวัตถุและคุ้นเคย"

  2. มันจะต้องเป็น "ที่แข็งแกร่งและมีความปลอดภัย"

  3. มันจะต้องเป็น "สถาปัตยกรรมที่เป็นกลางและแบบพกพา"

  4. มันจะต้องดำเนินการด้วย "ที่มีประสิทธิภาพสูง"

  5. จะต้องมีการ "ตีความเกลียวและแบบไดนามิก"

  6.  

     รุ่น

บทความหลัก: ประวัติรุ่น Java

ขณะที่ปี 2015 เพียง Java 8 ได้รับการสนับสนุน ("สาธารณชน") รุ่นรุ่นใหญ่ชวาพร้อมกับการเปิดตัวของพวกเขาวันที่:

  • JDK 1.0 (21 มกราคม 1996)

  • JDK 1.1 (19 กุมภาพันธ์ 1997)

  • J2SE 1.2 (8 ธันวาคม 1998)

  • J2SE 1.3 (8 พฤษภาคม 2000)

  • J2SE 1.4 (6 กุมภาพันธ์ 2002)

  • J2SE 5.0 (30 กันยายน 2004)

  • Java SE 6 (11 ธันวาคม 2006)

  • Java SE 7 (28 กรกฎาคม 2011)

  • Java SE 8 (18 มีนาคม 2014)

     ปฏิบัติ

แพลตฟอร์ม Java

บทความหลัก: Java (แพลตฟอร์มซอฟต์แวร์)และJava เครื่องเสมือน

Java Control Panel, รุ่น 7

เป้าหมายการออกแบบหนึ่ง Java พกพาซึ่งหมายความว่าโปรแกรมที่เขียนขึ้นสำหรับแพลตฟอร์ม Java ต้องเรียกใช้ในทำนองเดียวกันกับการรวมกันของฮาร์ดแวร์และระบบปฏิบัติการที่มีการสนับสนุนที่เพียงพอรันไทม์ใด ๆ นี่คือความสำเร็จโดยการรวบรวมรหัสภาษา Java เพื่อเป็นตัวแทนระดับกลางที่เรียกว่าJava bytecode แทนโดยตรงกับสถาปัตยกรรมเฉพาะรหัสเครื่อง คำแนะนำ Java bytecode เป็นคล้ายกับรหัสเครื่อง แต่พวกเขามีความตั้งใจที่จะดำเนินการโดยเครื่องเสมือน (VM) เขียนเฉพาะสำหรับฮาร์ดแวร์โฮสต์. End ผู้ใช้ทั่วไปใช้Runtime Java สิ่งแวดล้อม (JRE) ติดตั้งบนเครื่องของตัวเองสำหรับการใช้งานจาวาแบบสแตนด์อโลน หรือในเว็บเบราเซอร์สำหรับ Java applets

ห้องสมุดมาตรฐานให้เป็นวิธีทั่วไปสามารถเข้าถึงคุณลักษณะโฮสต์ที่เฉพาะเจาะจงเช่นกราฟิกเกลียวและเครือข่าย

การใช้ bytecode สากลทำให้ porting ง่าย แต่ค่าใช้จ่ายของการตีความคำแนะนำ bytecode เข้าไปในเครื่องทำให้โปรแกรมตีความมักจะทำงานช้ากว่าพื้นเมืองexecutables แต่เพียงในเวลา (JIT) คอมไพเลอร์ที่รวบรวม bytecodes รหัสเครื่องในช่วงรันไทม์ถูกนำมาจากในช่วงเริ่มต้น Java ตัวเองเป็นแพลตฟอร์มที่เป็นอิสระและมีการปรับให้เข้ากับแพลตฟอร์มโดยเฉพาะอย่างยิ่งก็คือการทำงานบนโดยเครื่องเสมือนJavaมันซึ่งแปลbytecode Javaเป็นภาษาเครื่องแพลตฟอร์ม. [34]

 

    การดําเนินการ

ดูเพิ่มเติม: การใช้งานฟรี Java

ออราเคิลคอร์ปอเรชั่นเป็นเจ้าของปัจจุบันของการดำเนินงานอย่างเป็นทางการของแพลตฟอร์ม Java SE ดังต่อไปนี้การเข้าซื้อกิจการของพวกเขาจาก Sun Microsystemsเมื่อวันที่ 27 มกราคม 2010 การดำเนินการนี้จะขึ้นอยู่กับการดำเนินงานเดิมของ Java โดยดวงอาทิตย์ การดำเนินการของออราเคิลสามารถใช้ได้สำหรับMicrosoft Windows (ยังคงทำงานได้สำหรับ XP ในขณะที่รุ่นที่ใหม่กว่าเท่านั้นในขณะนี้ "สาธารณชน" สนับสนุน), Mac OS X, LinuxและSolaris เพราะ Java ขาดมาตรฐานอย่างเป็นทางการใด ๆ ที่ได้รับการยอมรับโดยEcma นานาชาติ, ISO / IEC, ANSI หรือมาตรฐานอื่น ๆ ของบุคคลที่สามองค์กรการดำเนินงานที่เป็นของออราเคิลพฤตินัยมาตรฐาน

การดำเนินการของออราเคิลเป็นแพคเกจเป็นสองการกระจายที่แตกต่างกันรันไทม์ Java สิ่งแวดล้อม (JRE) ซึ่งมีส่วนของแพลตฟอร์ม Java SE ที่จำเป็นในการเรียกใช้โปรแกรม Java และมีไว้สำหรับผู้ใช้และการพัฒนาJava Kit (JDK) ซึ่งมีจุดมุ่งหมาย สำหรับนักพัฒนาซอฟต์แวร์และรวมถึงเครื่องมือในการพัฒนาเช่นcompiler Java, Javadoc, Jar และดีบัก

OpenJDKเป็นอีกหนึ่งการดำเนินงานที่โดดเด่น Java SE ที่ได้รับอนุญาตภายใต้ GNU GPL การดำเนินการเริ่มต้นเมื่อดวงอาทิตย์เริ่มปล่อยซอร์สโค้ด Java ภายใต้ GPL ในฐานะของ Java SE 7 OpenJDK อย่างเป็นทางการดำเนินการอ้างอิงชวา

เป้าหมายของ Java ที่จะทำให้การใช้งานทั้งหมดของ Java ที่เข้ากันได้ ในอดีตการใช้เครื่องหมายการค้าของดวงอาทิตย์สำหรับการใช้งานของแบรนด์ Java ยืนยันว่าการใช้งานทั้งหมดจะ "เข้ากันได้" นี้ส่งผลในข้อพิพาททางกฎหมายกับไมโครซอฟท์หลังจากที่ดวงอาทิตย์อ้างว่าการดำเนินงานที่ไมโครซอฟท์ไม่ได้สนับสนุนRMIหรือJNIและเพิ่มคุณสมบัติเฉพาะแพลตฟอร์มของพวกเขาเอง อาทิตย์ฟ้องในปี 1997 และในปี 2001 ได้รับรางวัลการตั้งถิ่นฐานของสหรัฐ $ 20,000,000 เช่นเดียวกับคำสั่งศาลบังคับใช้เงื่อนไขของใบอนุญาตจากดวงอาทิตย์[35]เป็นผลให้ไมโครซอฟท์เรือไม่ Java กับวินโดวส์

แพลตฟอร์ม Java เป็นสิ่งจำเป็นที่จะJava EEและการตรวจสอบที่เข้มงวดมากขึ้นแม้จะต้องรับรองการดำเนินงาน สภาพแวดล้อมการใช้งานซึ่งจะช่วยให้ฝั่งเซิร์ฟเวอร์แบบพกพา

 

    การปฏิบัติ

บทความหลัก: ผลการดำเนินงาน Java

โปรแกรมเขียนใน Java มีชื่อเสียงในการเป็นช้าลงและต้องใช้หน่วยความจำมากขึ้นกว่าที่เขียนใน C ++ ได้. [36] [37]แต่ความเร็วในการทำงานโปรแกรมจาวา 'ดีขึ้นอย่างมีนัยสำคัญด้วยการแนะนำของสะสมเพียงในเวลาใน 1997/1998 สำหรับJava 1.1, [38]นอกเหนือจากคุณสมบัติภาษาที่สนับสนุนการวิเคราะห์รหัสที่ดีขึ้น (เช่นการเรียนภายใน StringBuilder คลาสที่ยืนยันตัวเลือกอื่น ๆ ) และการเพิ่มประสิทธิภาพในเครื่องเสมือน Java เช่นHotSpotกลายเป็นเริ่มต้นสำหรับ JVM ของดวงอาทิตย์ใน 2000

บางแพลตฟอร์มให้การสนับสนุนฮาร์ดแวร์โดยตรงสำหรับ Java; มีไมโครคอนโทรลเลอร์ที่สามารถเรียกใช้ Java ในฮาร์ดแวร์แทนซอฟต์แวร์ Java เครื่องเสมือนและARMโปรเซสเซอร์ที่ใช้สามารถได้รับการสนับสนุนฮาร์ดแวร์สำหรับการดำเนินการผ่าน Java bytecode ของพวกเขาJazelleตัวเลือก (ในขณะที่การสนับสนุนของมันจะลดลงเป็นส่วนใหญ่ในการใช้งานในปัจจุบันของ ARM)

 

ข้อดีของ Java

  1. โปรแกรมจาวาที่เขียนขึ้นสามารถทำงานได้หลาย platform โดยไม่จำเป็นต้องแก้ไขหรือ compile ใหม่ ทำให้ช่วยลดค่าใช้จ่ายและเวลาที่ต้องเสียไปในการ port หรือทำให้โปรแกรมใช้งานได้หลาย platform

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

  3. ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น

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

  5. ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น

  6. มี 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)

     

     

     

     

     

     

     

     

     

bottom of page