Build your ultimate AI agent
รายละเอียดคอร์ส
ทำความเข้าใจพื้นฐานประสิทธิภาพของโค้ด
การปรับแต่งประสิทธิภาพเป็นทักษะสำคัญสำหรับนักพัฒนา Java ที่สร้างแอปพลิเคชันระดับองค์กรขนาดใหญ่ หลักสูตรนี้มอบพื้นฐานที่ครอบคลุมเกี่ยวกับเทคนิคการปรับแต่งโค้ด ตั้งแต่การวิเคราะห์ความซับซ้อนของอัลกอริทึมไปจนถึงรูปแบบการเพิ่มประสิทธิภาพขั้นสูง คุณจะได้เรียนรู้แนวทางอย่างเป็นระบบในการระบุ วัดผล และปรับแต่งคอขวดด้านประสิทธิภาพในแอปพลิเคชัน Java
การวิเคราะห์ประสิทธิภาพขั้นสูง
เริ่มต้นด้วยการเจาะลึกความซับซ้อนของอัลกอริทึมโดยใช้สัญกรณ์ Big-O. ผ่านการลงมือปฏิบัติจริงด้วยคอลเลกชันของ Java คุณจะได้เรียนรู้วิธีประเมินข้อแลกเปลี่ยนระหว่างความซับซ้อนด้านเวลาและพื้นที่อย่างมีประสิทธิภาพ คุณจะเชี่ยวชาญในการเลือกใช้โครงสร้างข้อมูลที่เหมาะสมตามข้อกำหนดด้านประสิทธิภาพ พร้อมเข้าใจผลกระทบของการเลือกใช้ระหว่าง Lists, Sets และ Maps ในสถานการณ์ที่แตกต่างกัน
การปรับแต่งประสิทธิภาพ JVM
พัฒนาความเชี่ยวชาญด้านการทำงานภายในของ Java Virtual Machine และการวัดประสิทธิภาพ เรียนรู้การใช้เครื่องมือระดับมืออาชีพเพื่อติดตามตัวชี้วัดสำคัญ รวมถึงการใช้งาน CPU การใช้หน่วยความจำ และความหน่วงเวลา คุณจะได้รับประสบการณ์เชิงปฏิบัติกับกลไกการเก็บขยะและการคอมไพล์แบบ Just-In-Time ซึ่งจะช่วยให้คุณออกแบบแอปพลิเคชันที่ใช้ประโยชน์จากความสามารถในการปรับแต่งประสิทธิภาพของ JVM ได้อย่างมีประสิทธิผล
รูปแบบประสิทธิภาพระดับองค์กร
สำรวจเทคนิคการปรับแต่งขั้นสูงที่จำเป็นสำหรับแอปพลิเคชันประสิทธิภาพสูง เชี่ยวชาญการเขียนโปรแกรมแบบพร้อมกันด้วยมัลติเธรดและการทำงานแบบอะซิงโครนัส ใช้กลยุทธ์การแคชที่มีประสิทธิภาพ และนำรูปแบบการเริ่มต้นใช้งานมาใช้เพื่อยกระดับประสิทธิภาพของแอปพลิเคชัน ผ่านตัวอย่างเชิงปฏิบัติ คุณจะได้เรียนรู้วิธีนำรูปแบบเหล่านี้ไปใช้ในสถานการณ์จริง
เมื่อสำเร็จหลักสูตรนี้ คุณจะมีความเชี่ยวชาญทางเทคนิคในการวิเคราะห์ประสิทธิภาพของแอปพลิเคชัน นำกลยุทธ์การเพิ่มประสิทธิภาพไปใช้ และออกแบบแอปพลิเคชัน Java ประสิทธิภาพสูง คอร์สนี้จะมอบทักษะที่คุณต้องใช้เพื่อรับมือกับความท้าทายด้านประสิทธิภาพในสภาพแวดล้อมระดับองค์กร และสร้างระบบที่ปรับขยายได้และมีประสิทธิภาพ
ข้อกำหนดเบื้องต้น
หลักสูตร
โครงสร้างคอร์ส
1
พื้นฐานประสิทธิภาพของซอฟต์แวร์
ในบทนี้ คุณจะพัฒนาทักษะพื้นฐานในการวิเคราะห์ประสิทธิภาพของซอฟต์แวร์ ครอบคลุมการประเมิน time complexity และ space complexity รวมถึงการเปรียบเทียบประสิทธิภาพของ set, map และ list เมื่อจบบทนี้ คุณจะมีรากฐานในการวิเคราะห์ประสิทธิภาพและเลือกโครงสร้างข้อมูลที่เหมาะสมสำหรับแอปพลิเคชัน Java ของคุณ
- Big-O notation: ความซับซ้อนด้านเวลา50 XP
- สร้างแอปพลิเคชันจัดการรายชื่อผู้ติดต่อ100 XP
- Time complexity ในการจัดการรายชื่อติดต่อ50 XP
- การสร้างแอปพลิเคชันตรวจสอบการเรียงลำดับ100 XP
- Big-O notation: ความซับซ้อนของพื้นที่หน่วยความจำ50 XP
- การหาค่าสูงสุดในอาร์เรย์100 XP
- Space complexity ของการหาค่าสูงสุด50 XP
- การสร้างโซเชียลเน็ตเวิร์ก100 XP
- โครงสร้างข้อมูลที่มีประสิทธิภาพ: Sets & Maps50 XP
- การสร้างฟังก์ชันตรวจสอบ transaction ซ้ำ100 XP
- สร้างแอปพลิเคชันวิเคราะห์ข้อความ100 XP
2
การวัดประสิทธิภาพของโค้ด
บทนี้จะเสริมทักษะที่จำเป็นสำหรับการวัดประสิทธิภาพของแอปพลิเคชัน Java คุณจะได้เรียนรู้การระบุจุดคอขวดด้วย `System.nanoTime()` ทำความเข้าใจสถาปัตยกรรมหน่วยความจำของ JVM ติดตามการใช้งานหน่วยความจำและ CPU รวมถึงสำรวจผลกระทบของ garbage collection และการคอมไพล์แบบ JIT ที่มีต่อประสิทธิภาพของโค้ด
3
การปรับปรุงประสิทธิภาพของโค้ด
ในบทนี้ คุณจะได้เรียนรู้การใช้งาน multi-threading ทั้งผ่าน Thread object และ parallel stream เพื่อประมวลผลแบบขนาน นอกจากนี้ยังครอบคลุม thread pool ด้วย ExecutorService และการเขียนโปรแกรมแบบ asynchronous ด้วย CompletableFuture
J
การปรับแต่งโค้ดใน Java
เรียนจบแล้ว

