6
บทที1 รู้จักกับภาษาจาวา P#1 บทที1 ภาษาจาวาเบื องต้น (Introduction to Java) ภาษา Java เบื้องต ้น โดยทีมวิจัยของบริษัท Sun Microsystems โดยมี Jame Gosling เป็นหัวหน้าทีม เปิดให้ใช้ 1995 ถูก oracle ซื ้อกิจการในปี 2010 รองรับการเขียนโปรแกรมในแนวเชิงวัตถุ มีความปลอดภัย ขยายเพิ่มเติมง่าย ทางานบนเครื่องคอมพิวเตอร์ที่มีสภาพแวดล้อมต่างกันได้โดย ไม่ต้องคอมไพล์ใหม่ (Platform Independent) “write once run anywhere” จาวาคลาสไลบารี (Java Class Libraries) การสร้างโปรแกรมจะอาศัยไลบารีที่จาวาให้มาช่วยสนับสนุน คาสั่งที่เราเขียนเอง จาวาไลบารีที่ให้มาประกอบด้วย classes และ methods ครอบคลุมต่อการสร้างโปรแกรม จาวาไลบารีมักนิยมเรียกว่า Java APIs (Application Programming Interfaces). ขั ้นตอนการพัฒนาโปรแกรมด ้วยจาวา Step 1. ใช้ editor สร้างไฟล์ source program ให้ลงท้ายด้วย .java

Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#1

บทที ่1ภาษาจาวาเบือ้งตน้

(Introduction to Java)

ภาษา Java เบ้ืองต้น

โดยทีมวิจยัของบริษทั Sun Microsystems โดยมี Jame Gosling เป็นหวัหนา้ทีม เปิดใหใ้ช ้1995 ถูก oracle ซ้ือกิจการในปี 2010

รองรับการเขียนโปรแกรมในแนวเชิงวตัถุ มีความปลอดภยั ขยายเพ่ิมเติมง่าย ท างานบนเคร่ืองคอมพิวเตอร์ท่ีมีสภาพแวดลอ้มต่างกนัไดโ้ดย

ไม่ตอ้งคอมไพลใ์หม่ (Platform Independent) “write once run anywhere”

จาวาคลาสไลบารี (Java Class Libraries)

• การสร้างโปรแกรมจะอาศยัไลบารีท่ีจาวาใหม้าช่วยสนบัสนุนค าสั่งท่ีเราเขียนเอง

• จาวาไลบารีท่ีใหม้าประกอบดว้ย classes และ methods ครอบคลุมต่อการสร้างโปรแกรม

• จาวาไลบารีมกันิยมเรียกวา่ Java APIs (Application Programming Interfaces).

ขั้นตอนการพฒันาโปรแกรมด้วยจาวา

Step 1. ใช้ editor สร้างไฟล์ source program ให้ลงท้ายด้วย .java

Page 2: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#2

ขั้นตอนการพฒันาโปรแกรมด้วยจาวา

Step 2. คอมไพล์ (compiled) source file ด้วยค าส่ังjavac Welcome.java โปรแกรมจะถูกแปลงเป็นไบนารีไฟล์ทีเ่รียกว่า Bytecodes มนีามสกลุเป็น .class

ขั้นตอนการพฒันาโปรแกรมด้วยจาวา

Step 3. เรียกโปรแกรมท างานด้วยค าส่ังjava Welcome

เลือกใช้ Netbeans เป็น editor

• มีส่ิงอ านวยความสะดวกในการพฒันาโปรแกรมตั้งแต่ขั้นตอนท่ี 1-3 ท่ีกล่าวมา

• มี intellisence ช่วยในการเขียนค าสั่ง• Open Source • ปรับปรุงความสามารถตลอด

ขั้นตอนการ execute โปรแกรมจาวาStep 1. Loading a Program into Memory ด้วย class loader ใน JVM

Page 3: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#3

ขั้นตอนการ execute โปรแกรมจาวา

Step 2. code verify เพื่อตรวจความถูกต้องและเพื่อความปลอดภัย

ขั้นตอนการ execute โปรแกรมจาวาStep 3. execute โดย JVM โดยก่อน execute จะมีการแปลง bytecodes ให้เป็น native code ตาม machine language ของแต่ละระบบ โดย JIT (Just in Time) คอมไพล์เลอร์

Bytecodes Native codes

Java เป็น Platform independent ความแตกต่างของ JDK, JRE, JVM

• JDK (Java Development Kit) ประกอบดว้ย JRE

(Java Runtime Environment) , java class

libraries, tools, JVM (Java Virtual

Machine)

• JRE ประกอบดว้ย JVM และ core libraries

Page 4: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#4

ชุดเคร่ืองมือภาษา Java ส าหรับจาวาแพลตฟอร์ม

Java 2 Platform, Standard Edition (J2SE) จาวาแอพพลิเคชนั (Java application) จาวาแอพเพลต (Java applet)

Java 2 Platform, Enterprise Edition (J2EE) โปรแกรมแบบมลัติเทียร์ (multi-tiered), web app เพื่อการท างาน

ระดบัองคก์ร Java 2 Platform, Micro Edition (J2ME) ช่วยพฒันา app บน Mobile, ระบบฝังตวั (embedded system) ไม่ค่อยไดรั้บนิยม

13

Oracle JDK VS. Open JDK

• Oracle วางแผนท่ีจะออก Java Virtual Machines หรือ JVM บนโครงการ OpenJDK แยกเป็น 2 แบบ คือ แบบฟรี และ แบบเสียเงิน

• รายงานน้ี เกิดจากการส่งข่าวผา่นทางทวสิเตอร์ จากการสมัมนาของ Oracle ในเมืองซานฟรานซิโก โดยนาย Adam Messinger รองประธานของบริษทั Oracle ไดก้ล่าววา่ Oracle วางแผนท่ีจะออก JDK เวอร์ชัน่ “premium” ซ่ึงจะตอ้งเสียเงินเพือ่ใชง้านเขาไดร้ะบุเพิม่เติมวา่ เวอร์ชัน่ premium น้ี จะปรับประสิทธิภาพการท างานใหส้อดคลอ้งกบัการท างานร่วมกบัฐานขอ้มูล Oracle ไดดี้ยิง่ข้ึน และเป็นเหมือน JVM ประสิทธิภาพสูง (high-performance JVM)

• OpenJDK หรือ Open Java Development Kit เปิดใหใ้ชฟ้รีและเป็น open source ของ Java Platform, Standard Edition (Java SE) เป็นผลงานจากทาง Sun Microsystems ถูกเผยแพร่ในปี ค.ศ. 2006 ซ่ึงเป็นการพฒันาร่วมกนัของ Oracle Corporation, OpenJDK & Java Community, Red Hat, Azul Systems, IBM, Apple Inc, SAP AG

โปรแกรมที่ต้องติดตั้งก่อนลงมือเขียนโปรแกรม

Java Development Kit Download http://java.sun.com Java Development Kit => jdk-8u201-

windows-i586.exe Netbeans --> netbeans-8.0.1-

windows.exe Java Development Kit + Netbeans

=> jdk-7u25-nb-7_3_1-windows-i586.exe 16

Page 5: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#5

การท างานของโปรแกรม Netbeans การตั้งช่ือไฟล์ใน Netbeans

• Project name ตวัแรกของค าแรกตวัเลก็ นอกนั้นตวัแรกตวัใหญ่• Class name ตวัแรกของแต่ละค าตวัใหญ่• Method name ตวัแรกของค าแรกตวัเลก็ นอกนั้นตวัแรกตวั

ใหญ่• Variable name ตวัเลก็หมดทุกตวั• ช่ือ source file ตอ้งเหมือนกบัช่ือคลาสขา้งในท่ีเป็น public

Lab1

• ใหทุ้กคนตรวจวา่เคร่ืองท่ีจะใชไ้ดล้งโปรแกรมท่ีจ าเป็นส าหรับการเขียนโปรแกรม ตามหวัขอ้ “โปรแกรมท่ีตอ้งติดตั้งก่อนลงมือเขียนโปรแกรม”

• เขียนโปรแกรม HelloWorld ดว้ย Netbeans• ท าการคอมไพลด์ว้ยค าสั่งเมนู debug build• ตรวจดูวา่ มีไฟล ์.class เกิดข้ึนท่ีใด• ผลของโปรแกรม

แบบฝึกหัด

1. บอกขอ้ดีของภาษาจาวา2. ท าไมภาษาจาวาจึง platform independent3. อธิบายกระบวนการเขียนโปรแกรมภาษาจาวา และ

นามสกลุไฟลต่์าง ๆ ท่ีตอ้งใช้4. จงอธิบายความแตกต่างระหวา่ง JDK, JRE, JVM5. เคร่ืองท่ีเราจะเอาโปรแกรมภาษาจาวาไปรัน จ าเป็นตอ้งลง

JDK หรือไม่ จงอธิบาย

Page 6: Introduction to Java - pirun.ku.ac.thpirun.ku.ac.th/~faastwc/JAVA/TEACH KPS-62/02739214-java-2559/chapter1.pdf · ภาษา Java เบื้องต้น โดยทีมวิจัยของบริษัท

บทที่ 1 รู้จักกับภาษาจาวา P#6

แบบฝึกหัด

6. ชุดเคร่ืองมือส าคญัของ java ท่ีสนบัสนุนการเขียนโปรแกรมมีอะไรบา้ง