ความรู้เบื้องต้นเกี่ยวกั

Download Report

Transcript ความรู้เบื้องต้นเกี่ยวกั

่
้
ความรู ้เบืองต้นเกียวกับ
JAVA
อาจารย ์ศิรพ
ิ ร ศักดิบุ์ ญญารตั น์
ครูวช
ิ าการ สาขาวิชาคอมพิวเตอร ์และเทคโนโลยี
โรงเรียนมหิดลวิทยานุ สรณ์
ระบบคอมพิวเตอร ์
่
่ เล็กทรอนิ กส ์ ทีใช
่ ้ใน
เครืองคอมพิ
วเตอร ์เป็ นเครืองอิ
การคานวณและจัดการกับระบบข ้อมูล องค ์ประกอบของ
ระบบคอมพิวเตอร ์แสดงได ้ดังนี ้
Application Program
Operating System
Hardware
องค ์ประกอบของระบบคอมพิวเตอร ์
ภาษาคอมพิวเตอร ์
่ นั
่ กพัฒนาโปรแกรม(Programmer)
ภาษาคอมพิวเตอร ์คือคาสังที
้ อสั
่ งให
่ ้เครืองคอมพิ
่
่ ้องการ
พัฒนาขึนเพื
วเตอร ์ทางานตามทีต
ภาษาคอมพิวเตอร ์แบ่งออกเป็ น 3 ประเภทคือ



่ (Machine Language)
ภาษาเครือง
10110011 00011001
01111010 11010001 10010100
ภาษาแอสแซมบลี (Assembly Language)
MOV 0,SUM
MOV NUM, AC
ADD
SUM, AC
STO
SUM, TOT
ภาษาระดับสูง (High-level Language)
- FORTRAN, COBOL, BASIC เป็ นต ้น
- PASCAL, C เป็ นต ้น (Structural Language : ภาษาเชิงกระบวนการ)
- C++, Smalltalk, JAVA เป็ นต ้น (Object Oriented
Programming : ภาษาเชิงวัตถุ)
ต ัวแปลภาษา
ภาษาคอมพิวเตอร ์ระดับสูงจะต ้องการตัวแปลภาษา
่
่ ยนขึน้
(Language Translator) เพือแปลโปรแกรมที
เขี
ของภาษาคอมพิวเตอร ์แต่ละภาษาให ้เป็ น
่ เครื
่ องคอมพิ
่
ภาษาแอสเซมบลีหรือภาษาเครืองที
วเตอร ์
สามารถเข ้าใจได ้ ตัวแปลภาษาแบ่งเป็ น 2 แบบคือ
 Compiler
 Interpreter
ต ัวแปลภาษา : Compiler
Source code
Compiler checks
for errors
y
n
Executable Code
CPU
้
างานของ Compiler
ขันตอนการท
ต ัวแปลภาษา : Interpreter
Source code
1 instruction
Interpreter
Executable Code
CPU
้
างานของ Interpreter
ขันตอนการท
หลักการของโปรแกรมเชิงวัตถุ
การห่อหุ ้ม (Encapsulation)
่ าให ้ object แต่ละตัวเป็ นอิสระ
เป็ นคุณลักษณะทีท
่ าให ้สามารถแบ่งการพัฒนาโปรแกรม
ต่อกัน ซึงท
ออกเป็ นส่วนๆ ได ้ง่าย
 การสืบทอด (Inheritance)
่ าให ้สามารถนาโปรแกรมที่
เป็ นคุณลักษณะทีท
พัฒนาแล ้วกลับมาใช ้ใหม่ได ้ง่ายกว่าการเขียนโปรแกรม
แบบเชิงกระบวนการ
 การมีได ้หลายรูปแบบ (Polymorphism)
่

เทคโนโลยีจาวา



Java Virtual Machine (JVM)
่ นส่วนประกอบ
คือ Software program ซึงเป็
่ หน้าทีจ่ าลองคอมพิวเตอร ์เสมือน
หนึ่ งอยู่ใน JRE ซึงมี
้
่
(virtual machine) ขึนบนเครื
องคอมพิ
วเตอร ์จริงๆ
้ าหน้าทีในการแปล
่
ของเรา คอมพิวเตอร ์เสมือนนี จะท
่ เหมาะสม
่
ไบต ์โค ้ด(bytecode) ไปเป็ นภาษาเครืองที
่
กับแพตฟอร ์มจริงๆ ของแต่ละเครือง
Java Runtime Environment (JRE)
่ ้ในการร ันโปรแกรมภาษา
เป็ นเทคโนโลยีจาวาทีใช
่
จาวา ทีจะรวบรวม
class และ interface ต่างๆ ที่
จาเป็ นต่อการใช ้งานของโปรแกรมภาษาจาวา
Java 2 Software Developer Kit (J2SDK)
เป็ นชุดพัฒนาโปรแกรมประกอบด ้วยคอมไพเลอร ์
J2SDK
JRE
JVM
้
ขันตอนการท
างานของโปรแกรมภาษา
จาวา
*.java
*.class
้
ขันตอนการท
างานของ JRE
"write once, run
anywhere"
ต ัวอย่างชุดพัฒนาโปรแกรม
Netbeans ของบริษท
ั Sun Microsystems
(http://www.netbeans.org)
 Eclipse ของบริษท
ั IBM (http://eclipse.org)
 JBuilder ของบริษท
ั Borland
(http://www.borland.com/jbuilder)
 JDeveloper ของบริษท
ั Oracle
(http://www.oracle.com)

แพลตฟอร ์มของเทคโนโลยีจาวา
Java 2 Platform,Standard Edition
่ ่บนแพลตฟอร ์ม J2SE สามารถ
โปรแกรมจาวาทีอยู
พัฒนาได ้สองรูปแบบคือ
 โปรแกรมจาวาประยุกต ์ (Java Application) คือ
่
้
โปรแกรมประยุกต ์ใช ้งานทัวไป
โดยโปรแกรมแบบนี จะ
ทางานภายใต ้โปรแกรม interpreter โดยตรง ซึง่
้ น stand-alone
โปรแกรมลักษณะนี เป็
 โปรแกรมจาวาแอปเพล็ต (Java Applet) คือโปรแกรม
่ างานภายใต ้โปรแกรม web browser
ภาษาจาวาทีจะท
่ JVM อยู่
ทีมี
Java 2 Platform,Standard Edition