แอพเพล็ตเป็นซอฟต์แวร์ประเภทหนึ่งที่ออกแบบมาเพื่อดำเนินการภายในบริบทของโปรแกรมขนาดใหญ่ ซึ่งมักจะเป็นเว็บเบราว์เซอร์ ซึ่งให้คุณลักษณะเชิงโต้ตอบที่หลากหลายซึ่งตัวโปรแกรมหลักไม่มีให้ เขียนด้วยภาษาโปรแกรม Java แอปเพล็ตถูกใช้เป็นหลักในการประมวลผลเครือข่าย พวกเขาสามารถตอบสนองต่ออินพุตของผู้ใช้ เช่น การคลิกเมาส์หรือการกดแป้นพิมพ์ และยังสามารถโต้ตอบกับแอปเพล็ตอื่น ๆ บนเว็บเพจเดียวกันได้อีกด้วย
ความเป็นมาทางประวัติศาสตร์ของแอปเพล็ต
ประวัติความเป็นมาของแอปเพล็ตย้อนกลับไปในช่วงกลางทศวรรษ 1990 เมื่อภาษาโปรแกรม Java ได้รับการพัฒนาครั้งแรกโดย Sun Microsystems คำว่า "applet" ถูกใช้ครั้งแรกในปี 1995 เมื่อ Java เปิดตัวสู่โลกในฐานะภาษาการเขียนโปรแกรมใหม่ที่ออกแบบมาสำหรับอินเทอร์เน็ต แนวคิดคือการจัดเตรียมแอปพลิเคชันขนาดเล็ก (ซึ่งก็คือคำว่า "แอปเพล็ต") ที่สามารถฝังไว้ในหน้า HTML และทำงานภายในเว็บเบราว์เซอร์ได้
ขยายบน Applets
Applets ดังที่ได้กล่าวไปแล้วเป็นโปรแกรม Java ขนาดเล็กที่สามารถรวมเข้ากับเพจ HTML ทำงานบนฝั่งไคลเอ็นต์ และดำเนินการโดย Java Virtual Machine (JVM) แอปเพล็ตสามารถทำงานในเว็บเบราว์เซอร์ใดก็ได้ที่รองรับ JVM ใช้เพื่อทำให้หน้าเว็บมีชีวิตชีวาและสนุกสนานยิ่งขึ้น ตัวอย่างเช่น สามารถแสดงกราฟิกเชิงโต้ตอบ หรือคำนวณตามอินพุตของผู้ใช้
แอปเพล็ตมีวงจรชีวิตที่ควบคุมโดยเบราว์เซอร์และ JVM วงจรชีวิตประกอบด้วยสี่ขั้นตอน: การเริ่มต้น การเริ่มต้น การหยุด และการทำลาย แอปเพล็ตจะเริ่มต้นชีวิตเมื่อมีการโหลดและสร้างอินสแตนซ์โดย JVM จากนั้นจะเริ่มต้น เริ่มต้น และแสดงบนหน้าเว็บ เมื่อผู้ใช้ออกจากเพจ แอปเพล็ตจะหยุดแล้วถูกทำลายโดย JVM
การทำงานภายในของแอพเพล็ต
แอปเพล็ตประกอบด้วย Java bytecode ซึ่งเป็นการแสดงโปรแกรมโดยไม่ขึ้นกับแพลตฟอร์ม และทำงานภายใน JVM ที่ติดตั้งในเบราว์เซอร์ เมื่อโหลดหน้าเว็บที่มีแอปเพล็ต ปลั๊กอิน Java ของเบราว์เซอร์จะดาวน์โหลดโค้ดไบต์ของแอปเพล็ต เริ่ม JVM จากนั้นโหลดและดำเนินการแอปเพล็ตภายใน JVM
แอปเพล็ตโต้ตอบกับหน้าเว็บผ่าน Document Object Model (DOM) และยังสามารถสื่อสารกับเซิร์ฟเวอร์ที่โหลดหน้าเว็บนั้น ผ่านทาง HTTP หรือโปรโตคอลอินเทอร์เน็ตอื่นๆ อย่างไรก็ตาม เพื่อเหตุผลด้านความปลอดภัย โดยทั่วไประบบจะแซนด์บ็อกซ์และจำกัดไม่ให้เข้าถึงไฟล์ในเครื่องหรือทรัพยากรระบบบางอย่าง
คุณสมบัติที่สำคัญของแอพเพล็ต
- ความเป็นอิสระของแพลตฟอร์ม: Applets เขียนด้วยภาษา Java ซึ่งไม่ขึ้นกับแพลตฟอร์ม สามารถทำงานบนอุปกรณ์ใดๆ ที่มีเบราว์เซอร์ที่รองรับ JVM
- การเชื่อมต่อเครือข่าย: แอพเพล็ตสามารถสื่อสารผ่านเครือข่าย ทำให้สามารถเป็นส่วนหนึ่งของแอปพลิเคชันเครือข่ายได้
- การรักษาความปลอดภัยแบบแซนด์บ็อกซ์: พวกเขาทำงานภายในแซนด์บ็อกซ์ความปลอดภัยเพื่อป้องกันการเข้าถึงทรัพยากรระบบโดยไม่ได้รับอนุญาต จึงมั่นใจในความปลอดภัยของผู้ใช้
- ส่วนต่อประสานผู้ใช้ที่หลากหลาย: แอพเพล็ตสามารถสร้างส่วนต่อประสานกราฟิกกับผู้ใช้ (GUI) ที่ซับซ้อนและสร้างภาพเคลื่อนไหวที่ราบรื่น ทำให้เหมาะสำหรับการสร้างแอปพลิเคชันเชิงโต้ตอบ
ประเภทของแอปเพล็ต
แอปเพล็ตมีสองประเภทหลักๆ:
-
แอพเพล็ตท้องถิ่น: แอปเพล็ตเหล่านี้ไม่จำเป็นต้องเชื่อมต่ออินเทอร์เน็ตหลังจากดาวน์โหลดแล้ว พวกมันทำงานภายในเบราว์เซอร์ของผู้ใช้และทำหน้าที่ต่างๆ โดยไม่จำเป็นต้องเชื่อมต่อกับเซิร์ฟเวอร์
-
แอพเพล็ตระยะไกล: แอปเพล็ตเหล่านี้ต้องการการเชื่อมต่ออินเทอร์เน็ตอย่างต่อเนื่อง พวกเขาสื่อสารกับเซิร์ฟเวอร์เพื่อทำหน้าที่ของตน
การใช้แอปเพล็ตและปัญหาที่เกี่ยวข้อง
แอพเพล็ตมักใช้เพื่อให้มีคุณลักษณะแบบโต้ตอบบนหน้าเว็บ เช่น เกม เครื่องคิดเลข แอนิเมชั่น และแผนที่แบบโต้ตอบ นอกจากนี้ยังสามารถใช้สำหรับงานที่ซับซ้อนมากขึ้น เช่น การลงคะแนนออนไลน์ อีคอมเมิร์ซ และแอปพลิเคชันเดสก์ท็อประยะไกล
อย่างไรก็ตาม การใช้แอปเพล็ตได้ลดลงในช่วงหลายปีที่ผ่านมาเนื่องจากปัญหาหลายประการ:
- ปัญหาด้านความปลอดภัย: แม้จะทำงานในแซนด์บ็อกซ์ แต่แอปเพล็ตก็เคยถูกใช้เพื่อวัตถุประสงค์ที่เป็นอันตราย ซึ่งทำให้ผู้ใช้และองค์กรจำนวนมากระมัดระวังแอปเพล็ตเหล่านี้
- ผลงาน: เนื่องจากแอปเพล็ตทำงานบนฝั่งไคลเอ็นต์ แอปเล็ตเหล่านี้จึงอาจโหลดได้ช้าและสามารถใช้ทรัพยากรระบบจำนวนมากได้
- การพึ่งพา Java: ผู้ใช้ต้องติดตั้ง Java Runtime Environment (JRE) และกำหนดค่าอย่างถูกต้องในเบราว์เซอร์ ซึ่งอาจเป็นงานที่ซับซ้อนสำหรับผู้ใช้ที่ไม่ใช่ด้านเทคนิค
การเปรียบเทียบแอปเพล็ตกับข้อกำหนดที่คล้ายกัน
นี่คือการเปรียบเทียบแอปเพล็ตที่มีแนวคิดคล้ายกัน:
ภาคเรียน | คำนิยาม | การดำเนินการ |
---|---|---|
แอพเพล็ต | แอปพลิเคชันขนาดเล็กที่ฝังอยู่ในหน้า HTML ดำเนินการโดย JVM ในเว็บเบราว์เซอร์ | ด้านลูกค้า |
เซิร์ฟเล็ต | โปรแกรม Java ที่ทำงานบนเซิร์ฟเวอร์ โดยทั่วไปจะใช้เพื่อสร้างเนื้อหาเว็บแบบไดนามิก | ฝั่งเซิร์ฟเวอร์ |
จาวาสคริปต์ | ภาษาสคริปต์สำหรับหน้าเว็บ ดำเนินการโดยเอ็นจิ้น JavaScript ของเบราว์เซอร์ | ด้านลูกค้า |
มุมมองในอนาคตและเทคโนโลยีที่เกี่ยวข้องกับแอปเพล็ต
อนาคตของแอปเพล็ตนั้นไม่แน่นอนเนื่องจากเทคโนโลยีเว็บสมัยใหม่ที่เพิ่มขึ้น เช่น HTML5, CSS3 และ JavaScript ซึ่งมีฟังก์ชันการทำงานที่คล้ายคลึงกันโดยที่ผู้ใช้ไม่จำเป็นต้องติดตั้ง JVM หรือจัดการกับปัญหาด้านความปลอดภัยของ Java
อย่างไรก็ตาม ยังมีส่วนที่แอปเพล็ตมีความได้เปรียบ เช่น แอปพลิเคชันที่ซับซ้อนซึ่งต้องใช้ Java อย่างเต็มประสิทธิภาพ นอกจากนี้ เทคโนโลยี Java Web Start ยังช่วยให้สามารถเรียกใช้แอปพลิเคชัน Java ที่มีคุณลักษณะครบถ้วนได้โดยตรงจากเว็บเบราว์เซอร์ ซึ่งอาจนำมาซึ่งการฟื้นตัวของฟังก์ชันการทำงานคล้ายแอปเพล็ต
แอพเพล็ตและพร็อกซีเซิร์ฟเวอร์
แม้ว่าแอปเพล็ตและพร็อกซีเซิร์ฟเวอร์จะเป็นเทคโนโลยีที่แตกต่างกัน แต่ก็สามารถโต้ตอบได้ในบางสถานการณ์ พร็อกซีเซิร์ฟเวอร์สามารถเป็นสื่อกลางในการเชื่อมต่อระหว่างแอปเพล็ตและเซิร์ฟเวอร์ที่แอปเพล็ตสื่อสารด้วย โดยให้ประโยชน์ต่างๆ เช่น การแคช การกรอง และการรักษาความปลอดภัยที่ได้รับการปรับปรุง อย่างไรก็ตาม โปรดทราบว่าแอปเพล็ตต้องได้รับการออกแบบให้รองรับพร็อกซีเซิร์ฟเวอร์ และเบราว์เซอร์ของผู้ใช้ต้องได้รับการกำหนดค่าให้ใช้พร็อกซีเซิร์ฟเวอร์
ลิงก์ที่เกี่ยวข้อง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Applets โปรดพิจารณาแหล่งข้อมูลเหล่านี้: