240 likes | 361 Views
บทที่ 1. แนะนำเทคโนโลยีจาวา Introduction to Java Technology. วัตถุประสงค์การเรียนรู้. เมื่อจบบทนี้แล้วผู้เรียนสามารถ อธิบายคุณสมบัติสำคัญของเทคโนโลยีจาวาได้ เขียน คอมไพล์ และ รัน โปรแกรมจาวาได้ อธิบายการทำงานของ Javatm Virtual Machine (JVM) ได้ อธิบายหลักการของ Garbage Collection ได้
E N D
บทที่ 1 แนะนำเทคโนโลยีจาวา Introduction to Java Technology โดย วชิราวุธ ธรรมวิเศษ
วัตถุประสงค์การเรียนรู้วัตถุประสงค์การเรียนรู้ • เมื่อจบบทนี้แล้วผู้เรียนสามารถ • อธิบายคุณสมบัติสำคัญของเทคโนโลยีจาวาได้ • เขียน คอมไพล์ และ รัน โปรแกรมจาวาได้ • อธิบายการทำงานของ Javatm Virtual Machine (JVM) ได้ • อธิบายหลักการของ Garbage Collection ได้ • อธิบายกระบวนการรักษาความปลอดภัย 3 ขั้นตอนของการรันคลาสจาวาได้ โดย วชิราวุธ ธรรมวิเศษ
จาวาเทคโนโลยี • ภาษาสำหรับการเขียนโปรแกรม • Java Language • สภาวะแวดล้อมสำหรับการพัฒนา • Java Development Kit • สภาวะแวดล้อมสำหรับโปรแกรมประยุกต์ • Java Runtime Environment • สภาวะแวดล้อมสำหรับการติดตั้ง • J2SE, J2ME, J2EE โดย วชิราวุธ ธรรมวิเศษ
จาวาเทคโนโลยี โดย วชิราวุธ ธรรมวิเศษ
ภาษาจาวา • พัฒนาโดยทีมวิจัยของ บริษัท Sun Micro System • เป็นภาษาเชิงวัตถุ (Object Oriented Programming) • เริ่มนิยมแพร่หลายในปี 1995 • ชุดพัฒนารุ่นแรก JDK 1.0 โดย วชิราวุธ ธรรมวิเศษ
เป้าหมายของ เทคโนโลยีจาวา • เพื่อ สร้างภาษาที่ง่ายในการพัฒนาโปรแกรม • สร้างตัวรันโปรแกรมจาวา (Java Interpreter) เพื่อให้จาวาสามารถนำไปใช้ทำงานบนหลายๆ ระบบ โดย วชิราวุธ ธรรมวิเศษ
จาวาเป็นภาษาที่ง่ายในการเขียนโปรแกรมจาวาเป็นภาษาที่ง่ายในการเขียนโปรแกรม • จาวาได้ยกเลิกสิ่งที่จะทำให้เกิดข้อผิดพลาดในโปรแกรมได้ง่าย • การใช้ Pointer , การจัดการและเข้าถึงหน่วยความจำโดยตรง • จาวาจะดำเนินการจัดการหน่วยความจำโดยอัตโนมัติ • ภาษาจาวาเป็นภาษาเชิงวัตถุ ทำให้เราสามารถออกแบบและพัฒนาโปรแกรมที่ซับซ้อนได้ง่าย • ภาษาจาวาทำให้การเขียนโปรแกรมได้สั้น และ เป็นระเบียบ โดย วชิราวุธ ธรรมวิเศษ
จาวาสามารถทำงานบนหลาย Platform โดย วชิราวุธ ธรรมวิเศษ
จาวามีทั้งCompiler และ Interpreter โดย วชิราวุธ ธรรมวิเศษ
จาวามีลักษณะเป็น Interpreter เพื่อ • สามารถพัฒนาโปรแกรมได้เร็วขึ้น • โปรแกรมที่ได้สามารถรันบนระบบปฏิบัติการที่ต่างกัน • ทำให้สามารถควบคุมความปลอดภัยของโค้ดได้ • โค้ดของจาวาสามารถกระจายส่วนได้ ไฟล์ของคลาสแต่ละคลาสสามารถแยกอยู่บนระบบเครือข่าย สามารถถูกดาว์นโหลดและรันในเวลาที่ถูกเรียกใช้ได้ โดย วชิราวุธ ธรรมวิเศษ
การทำงานของจาวา • Java Virtual Machine • Garbage Collection • Code Security โดย วชิราวุธ ธรรมวิเศษ
1.The Java Virtual Machine • เราทำการคอมไพล์โปรแกรมคำสั่งภาษาจาวาแล้ว จะได้ไฟล์รหัสคำสั่งที่เรียกว่า Java Byte-Code ซึ่งจะยังไม่สามารถรันบนคอมพิวเตอร์จริงได้โดยตรง • Java Virtual Machine (JVM) เป็นเหมือนกับเครื่องคอมพิวเตอร์เสมือนที่ถูกจำลองขึ้น เพื่อใช้รันโปรแกรมจาวา โดย วชิราวุธ ธรรมวิเศษ
1. The Java Virtual Machine • คุณสมบัติมาตรฐานของ JVM • - Instruction Set (จำลองชุดคำสั่งของ CPU) • - Register set • - Class file format • - Stack • - Garbage-Collected heap • - Memory area โดย วชิราวุธ ธรรมวิเศษ
2. Garbage Collection • พนักงานเก็บขยะที่คอยเก็บกวาดหน่วยความจำที่ไม่ใช้แล้ว โดย Garbage Collection จะทำงานเป็น Thread ที่คอยตรวจดูว่าในระหว่างที่โปรแกรมจาวากำลังทำงานอยู่ มีหน่วยความจำส่วนใดที่ควรจะถูกคืนสู่ระบบ • เราไม่สามารถสั่งให้ GC ทำการคืนหน่วยความจำได้ GC จะทำงานแบบอัตโนมัติ โดย วชิราวุธ ธรรมวิเศษ
2.Garbage Collection • ข้อดี • เขียนโปรแกรมง่าย ไม่ต้องพะวง • ป้องกันการเกิด Memory Leak,ลด Bug • ข้อเสีย • ควบคุมไม่ได้ • การทำงานของโปรแกรมช้าลง • ประสิทธิภาพของการใช้หน่วยความจำลดลง โดย วชิราวุธ ธรรมวิเศษ
3. Code Security • จาวาเทคโนโลยีจะมีการดูแลความปลอดภัยของระบบ • ป้องกันไม่ให้โปรแกรมทำอันตรายกับระบบ เช่น • ทำให้เครื่องค้าง หยุดทำงาน • ไวรัสคอมพิวเตอร์ • ฯลฯ โดย วชิราวุธ ธรรมวิเศษ
3. Code Security • JRE จะมีกระบวนการทำงาน 3 ขั้นตอน ได้แก่ • Load Code ทำงานโดย Class Loader • Verifies Code ทำงานโดย Bytecode verifier • Executes Code ทำงานโดย Runtime interpreter โดย วชิราวุธ ธรรมวิเศษ
ขั้นตอนการรันโปรแกรมจาวาขั้นตอนการรันโปรแกรมจาวา โดย วชิราวุธ ธรรมวิเศษ
การกำหนดวงกรอบ A Basic Java Application การเขียนหมายเหตุ การนิยามคลาส การนิยาม method การเรียกใช้คำสั่ง การเรียกชื่อสิ่งต่างๆ ด้วยจุด . โดย วชิราวุธ ธรรมวิเศษ
A Basic Java Application • การ compile ใช้คำสั่ง javac เช่น javac HelloWorld.java • การรันใช้คำสั่ง javaเช่น java HelloWorld • Java Compiler : javac • Java Interpreter : java , javaw, jview, appletviewer โดย วชิราวุธ ธรรมวิเศษ
เครื่องมือพัฒนาโปรแกรมเครื่องมือพัฒนาโปรแกรม • J2SE ใช้สำหรับพัฒนา ไม่มี Editor • Java IDE • NetBeans • Eclipse • JBuilder • สำหรับการศึกษา • Dr. Java โดย วชิราวุธ ธรรมวิเศษ
J2SE+NetBean (Free) ต้องการพื้นที่ประมาณ 250MB โดย วชิราวุธ ธรรมวิเศษ
J2SE+NetBean (Free) โดย วชิราวุธ ธรรมวิเศษ
J2SE+NetBean (Free) โดย วชิราวุธ ธรรมวิเศษ