JavaRush /จาวาบล็อก /Random-TH /IntelliJ IDEA 2019.1: มีอะไรใหม่ใน IDE ที่เราชื่นชอบ

IntelliJ IDEA 2019.1: มีอะไรใหม่ใน IDE ที่เราชื่นชอบ

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

รองรับฟังก์ชั่นแสดงตัวอย่าง Java 12 - สลับ Expressions ( JEP 325 ) และสลับการตรวจจับรายการซ้ำ

ภาษา Java เวอร์ชันที่ 12 เปิดตัวในเดือนมีนาคม และหนึ่งในการเปลี่ยนแปลงที่น่าสนใจคือรูปแบบใหม่ของนิพจน์ที่มีโอเปอเรswitchเตอร์ โอเปอเรเตอร์ในรูปแบบคลาสสิกนี้มีไวยากรณ์ที่ค่อนข้างยุ่งยาก ซึ่งทำให้เกิดข้อผิดพลาดอย่างต่อเนื่อง ความยากในการดีบั๊ก และสมควรได้รับความไม่ชอบจากนักพัฒนา ใน JDK 12 switchพวกเขาตัดสินใจที่จะฟื้นฟูมัน และไวยากรณ์ของมันก็ง่ายขึ้น อย่างไรก็ตาม ด้วยเหตุผลบางประการที่ผู้ที่ไม่ได้ฝึกหัดไม่รู้จัก คุณลักษณะใหม่นี้จึงรวมอยู่ใน Java 12 ในรูปแบบแสดงตัวอย่างเท่านั้น (ซึ่งหมายความว่าจะต้อง "เชื่อมต่อ" ด้วยตนเองแม้ว่าจะติดตั้ง JDK 12 แล้วก็ตาม) IDEA ที่อัปเดตได้เรียนรู้ที่จะทำงานร่วมกับผู้ปฏิบัติงานทุกประเภทอย่างswitchเต็มที่ IDE ยังได้เรียนรู้ที่จะตรวจจับสาขาที่ซ้ำกันswitchและรวมสาขาเข้าด้วยกันผ่านการแก้ไขด่วน

สำหรับรายละเอียดว่ามีอะไรใหม่ใน JDK12 ดูบทความJava 12 อยู่ที่นี่แล้ว: มีอะไรใหม่

การปรับโครงสร้างใหม่: ขยายฟังก์ชันการแยกตัวแปร

IntelliJ IDEA สามารถจัดระเบียบตัวอักษรสตริงและโค้ดที่ปฏิบัติการได้ใหม่ ดังนั้น หากคุณต้องการเปลี่ยนตัวแปร เพียงเลือกตัวแปรนั้นแล้วเลือก ตัวเลือก แยกตัวแปรจากนั้นตัวแปรนั้นจะถูกแทนที่ตลอดทั้งโค้ด ตอนนี้ฟังก์ชันจะรักษาความหมายของนิพจน์ที่ถูกแก้ไขให้ดียิ่งขึ้น เฟรมเวิร์กจะสามารถแยกตัวแปรได้แม้กระทั่งจากตัวเริ่มต้นฟิลด์ และยังเป็นไปได้ที่ตัวแปรที่แยกออกมาจะแปลงตัวดำเนินการแบบไตรภาคเป็น "if" โดยอัตโนมัติหากเงื่อนไขมีความสำคัญ (เงื่อนไขจะถือว่ามีความสำคัญหากมี ตรวจสอบเป็นโมฆะหรือตรวจสอบ "อินสแตนซ์ของ")

การเน้นเงื่อนไขที่แม่นยำยิ่งขึ้นในนิพจน์แบบไตรภาค

IntelliJ IDEA 2019.1 ให้การเน้นสถานที่ที่น่าสงสัยในสำนวนแบบไตรภาคที่แม่นยำยิ่งขึ้น ตอนนี้เฉพาะเงื่อนไขที่มีการละเมิดค่าเท่านั้นที่จะถูกเน้นnullในขณะที่ก่อนหน้านี้นิพจน์แบบไตรภาคทั้งหมดจะถูกเน้น แม้ว่าการละเมิดจะอยู่ในสาขาเดียวเท่านั้น ด้วยฟีเจอร์ใหม่นี้ การไฮไลต์จึงมีความแม่นยำมากขึ้นในกรณีของswitch-expressions

ปรับปรุงการวิเคราะห์การดำเนินการทางคณิตศาสตร์

การวิเคราะห์กระแสข้อมูลสามารถตรวจสอบผลลัพธ์ของการดำเนินการทางคณิตศาสตร์ และใช้ข้อมูลนี้เพื่อแจ้งเตือนนักพัฒนาถึงเงื่อนไขที่เป็นจริงหรือเท็จเสมอ ผู้เขียนของ IDEA ได้ปรับปรุงการวิเคราะห์การดำเนินการทางคณิตศาสตร์หลายอย่าง รวมถึงการคูณ เศษที่เหลือ และการดำเนินการระดับบิต

การปรับปรุงคำอธิบายประกอบ @Contract

คำอธิบายประกอบ @Contract ใช้เพื่อกำหนดสัญญาที่วิธีการต้องปฏิบัติตาม ซึ่งช่วยให้ IDE สามารถค้นหาปัญหาในวิธีการที่เรียกวิธีการทำหมายเหตุประกอบได้ @Contract มีคุณสมบัติสองประการ - valueและpure. คุณลักษณะvalueมีส่วนคำสั่งที่อธิบายความสัมพันธ์ระหว่างเหตุและผลระหว่างอาร์กิวเมนต์และค่าที่ส่งคืน คุณลักษณะ (“pure”) pureมีไว้สำหรับเมธอดที่ไม่เปลี่ยนสถานะของอ็อบเจ็กต์ แต่เพียงส่งคืนค่าใหม่ หากไม่ได้ใช้ค่าที่ส่งคืน การลบการเรียกออกจะไม่ส่งผลกระทบต่อสถานะของโปรแกรมหรือเปลี่ยนซีแมนทิกส์ เว้นแต่การเรียกเมธอดจะส่งข้อยกเว้น (ข้อยกเว้นไม่ถือเป็นผลข้างเคียง) ดังนั้น ทีม IntelliJ IDEA 2019.1 ได้ปรับปรุงการรองรับคำอธิบายประกอบ @Contract ขณะนี้สภาพแวดล้อมการพัฒนาสามารถกำหนด "ความบริสุทธิ์" ของตัวสร้างจากแหล่งที่มาได้โดยอัตโนมัติ

กระโดดจากการติดตามสแต็ก Java ไปยังตำแหน่งที่สอดคล้องกันในสตริง

หากคุณไปถึงระดับ 9 ของภารกิจ Java Syntax บน JavaRush แล้ว คุณคงเคยได้ยินเกี่ยวกับสิ่งที่ติดตามสแต็กแล้ว สาระสำคัญโดยสรุปคือฟังก์ชันที่เรียกว่าสุดท้ายจะต้องทำให้เสร็จก่อน ตอนนี้ เมื่อคุณคลิกที่การติดตามสแต็ก Java IDE จะพยายามระบุตำแหน่งที่แน่นอนบนบรรทัดที่คุณต้องการย้ายเคอร์เซอร์ไป ก่อนหน้านี้จะนำคุณไปยังคอลัมน์แรกของแถวที่เกี่ยวข้องเท่านั้น

การเปลี่ยนแปลงดีบักเกอร์ JVM

  • มีการดำเนินการ Step Out of the Block ใหม่ที่อนุญาตให้คุณออกจากบล็อกปัจจุบันในขณะที่ทำการดีบั๊กโปรเจ็กต์โดยใช้ดีบักเกอร์ JVM
  • หากคุณต้องการใช้เมาส์เมื่อทำการดีบั๊ก งานของคุณจะสะดวกยิ่งขึ้น: ตอนนี้คุณสามารถกระตุ้นการเลื่อนไปที่เคอร์เซอร์ได้เพียงคลิกที่หมายเลขบรรทัดในโหมดดีบั๊ก
  • ขณะนี้มีการสนับสนุนสำหรับsynchronizedและ ตัว assertดำเนินswitchการประเมินนิพจน์ดีบักเกอร์
ในความเป็นจริง ยังมีนวัตกรรมอีกมากมายใน IntelliJ IDEA 2019.1 คุณสามารถอ่านเกี่ยวกับพวกเขาได้บน เว็บไซต์ JetBrainsผู้เขียน IDE นี้ (แต่เป็นภาษาอังกฤษเท่านั้น)
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION