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

และที่สำคัญที่สุด อันดับของ Java ไม่ได้เพิ่มขึ้นทุกปี — มันยังคงสูงอย่างต่อเนื่อง ลองมาทำความเข้าใจว่าอะไรทำให้ Java เป็นที่นิยม

1. ข้ามแพลตฟอร์ม — โค้ดที่เขียนจะถูกแปลงเป็น bytecode ซึ่ง JVM จะดำเนินการ มีการใช้งาน JVM สำหรับแพลตฟอร์มที่หลากหลาย นั่นหมายความว่า เมื่อเขียนโค้ดแล้ว จะทำงานบน Windows, Linux และ macOS และแม้แต่แพลตฟอร์มแปลกใหม่ต่างๆ เช่น Arduino ตู้เย็นอัจฉริยะ และเครื่องดูดฝุ่น กล่าวอีกนัยหนึ่ง โค้ดจะทำงานบนแพลตฟอร์มและระบบปฏิบัติการที่แตกต่างกัน โดยไม่จำเป็นต้องปรับให้เหมาะกับแต่ละแพลตฟอร์ม

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

3. ความเร็ว (คอมไพเลอร์ JIT) — นอกเหนือจากการคอมไพล์แบบสแตติกซึ่งเกิดขึ้น "ล่วงหน้า" แล้ว Java ยังรองรับการคอมไพล์แบบทันเวลาพอดี (JIT) สิ่งนี้มีความเกี่ยวข้องอย่างมากกับโค้ดเซิร์ฟเวอร์ ซึ่งสามารถทำงานได้ครั้งละเป็นเดือนหรือเป็นปี โค้ดที่เรียกใช้บ่อยถูกคอมไพล์ด้วยวิธีต่างๆ และวัดเวลาดำเนินการ ผลลัพธ์คือยิ่งแอปพลิเคชันทำงานนานเท่าไหร่ แอปพลิเคชันก็ยิ่งเร็วขึ้นเท่านั้น และนั่นก็จริงสำหรับเซิร์ฟเวอร์ที่ใช้งานอยู่ เย็นใช่มั้ย?

4. ความเข้ากันได้แบบย้อนกลับ — โค้ดที่เขียนด้วย Java เวอร์ชันเก่าจะทำงานบนเวอร์ชันที่ใหม่กว่าเช่นกัน สิ่งนี้สะดวก: หลังจากอัปเดตข้อมูลจำเพาะของ Java แล้ว คุณไม่ต้องเขียนใหม่ครึ่งหนึ่งของโปรเจ็กต์ของคุณ "เนื่องจากการอัปเดต" แต่คุณยังสามารถรับแพตช์ความปลอดภัยล่าสุดได้

5. การวางแนววัตถุ — มนุษย์คิดในแง่ของวัตถุ: โต๊ะ รถเข็น สมาร์ทโฟน นักพัฒนาไม่ได้ถูกบังคับให้คิดในกระบวนทัศน์ที่ผิดปกติในขณะที่ทำงาน และนั่นช่วยป้องกันไม่ให้เกิดข้อผิดพลาดที่ไม่จำเป็นในโค้ดของเรา เราสามารถมุ่งความสนใจไปที่รายละเอียดที่สำคัญในงานเท่านั้น ตัวอย่างเช่น จากมุมมองของนักออกแบบตกแต่งภายใน ขนาดโต๊ะและตำแหน่งในห้องมีความสำคัญ วันที่ผลิต ชื่อของคนงานที่ตัดไม้สำหรับโต๊ะ และหมายเลขโทรศัพท์ของคนขับ FedEx ที่จัดส่งไม้นั้นไม่สำคัญ นอกจากนี้ ข้อมูลและวิธีการทำงานกับข้อมูลนั้นจะถูกเก็บไว้ด้วยกันในโค้ด

6. การพิมพ์แบบคงที่ (ล้มเหลวอย่างรวดเร็ว) — มีการตรวจสอบความเข้ากันได้ของประเภทตัวแปรในระหว่างขั้นตอนการคอมไพล์ นักพัฒนาทุกคนคอมไพล์โค้ด ดังนั้นข้อผิดพลาดในการคอมไพล์จึงถูกจับได้แทบจะในทันที ยิ่งพบข้อผิดพลาดในระยะต่อมา การแก้ไขก็จะยิ่งแพงขึ้น

7. รหัสเป็นเอกสาร — Java อ่านเหมือนประโยคในภาษาอังกฤษ ดังนั้น ในกรณีส่วนใหญ่ ไม่จำเป็นต้องพยายามรักษาเอกสารประกอบ เนื่องจากนักพัฒนาใดๆ เมื่อดูที่โค้ดแล้ว จะเข้าใจว่าเมธอดทำอะไรหรือพฤติกรรมใดที่อินเทอร์เฟซรับผิดชอบ ยิ่งไปกว่านั้น ยังมีข้อตกลงอันชาญฉลาดเกี่ยวกับการตั้งชื่อที่ "เหมาะสม" ของเอนทิตีทั้งหมดในโค้ด ชื่อของเมธอดมักระบุชัดเจนว่าใช้ทำอะไร

ตัวอย่างเช่น เมธอด getContext() จะส่งคืนบริบท และฟิลด์อายุมีหน้าที่จัดเก็บอายุ ใน Java ความยาวของชื่อจะไม่ส่งผลต่อจำนวนของทรัพยากรระบบที่จำเป็นสำหรับการทำงานกับเอนทิตี C ไม่ได้จัดการเรื่องนี้เช่นกัน เมื่อนักพัฒนาเข้าร่วมโปรเจ็กต์ใหม่ แทนที่จะเข้าใจตรรกะของโค้ด เขาหรือเธอต้องถอดรหัส

8. ไลบรารีและเฟรมเวิร์กแบบโอเพ่นซอร์สจำนวนมาก — 99% ของงานที่นักพัฒนาซอฟต์แวร์ต้องเผชิญในการปฏิบัติประจำวันนั้นได้รับการแก้ไขแล้วโดยใครบางคน เมื่อเวลาผ่านไป โซลูชันที่ดีจะเติบโตเป็นไลบรารีและแม้แต่เฟรมเวิร์ก อะไรจะดีไปกว่ากัน — googling เป็นเวลา 5 นาทีหรือประดิษฐ์จักรยานของคุณเองใหม่ด้วยล้อสี่เหลี่ยม

9. ชุมชนขนาดใหญ่ — ภาษายอดนิยมนี้มีฐานนักพัฒนาขนาดใหญ่ที่ถามคำถามมากมายบนอินเทอร์เน็ต ให้คำตอบมากมาย เขียนโค้ดจำนวนมาก และเผชิญกับและแก้ไขปัญหามากมาย และยิ่งมีนักพัฒนามากขึ้น ภาษาก็ยิ่งได้รับความนิยมมากขึ้น และยิ่งเติบโตเร็วขึ้นเท่านั้น มันเป็นวัฏจักรที่ดี

มีการกล่าวถึง "คุณภาพ" ในเชิงบวกของ Java หลายรายการแล้ว แต่ฉันต้องการเพิ่มอีกสองสามข้อ:

  • JVM (Java Virtual Machine) จัดการหน่วยความจำให้คุณ ซึ่งทำให้ปลอดภัยและเป็นภาษาอันดับ 1 สำหรับเครื่องมือทางการเงิน

  • การเขียนเซิร์ฟเวอร์ส่วนหลัง (ตรรกะเซิร์ฟเวอร์) ใน Java นั้นสะดวกมาก

  • ก่อนหน้านี้ Java เป็นภาษายอดนิยมสำหรับแอปพลิเคชัน Android

    Kotlin ซึ่งเป็นภาษา JVM ที่แตกต่างจาก Java โดย "syntaxic sugar" และฟีเจอร์สองสามอย่าง ตอนนี้เข้ามาแทนที่แล้ว การเปลี่ยนจาก Java เป็น Kotlin และในทางกลับกันจะใช้เวลาหลายวัน และเนื่องจากตอนนี้รอบการอัปเดต Java เป็นเวลาหกเดือนแล้ว Java รุ่นถัดไปอาจมีเนื้อหาที่เกินจริงทั้งหมดที่ Kotlin เขียนขึ้น

  • บริษัทที่มีชื่อเสียงหลายแห่งใช้ Java: Google, Facebook, Twitter, Amazon, LinkedIn, eBay, CodeGym และอีกมากมาย