21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented...

12
บทที2 การทบทวนวรรณกรรมที่เกี่ยวข้อง 2.1 NetBeans คือ เครื่องมือสำหรับโปรแกรมเมอร์ที่จะใช้พัฒนำ Application ด้วยภำษำ Java NetBeans นั ้นเป็นโปรแกรมประเภท OpenSource software โดยผู้ใช้งำนไม่จำเป็นที่จะต้องเสียเงิน เพื่อซื ้อมำ ใช้งำน และยังเปิดเผย Source code ให้ผู้สนใจและนักพัฒนำนำไปดัดแปลง แก้ไข ตำมกฏของ Opensource โดยมี Sun Micro System เป็นผู้สนับสนุนโครงกำร รูปที2.1ภำพตัวอย่ำงโปรแกรมNetBeans ปัจจุบัน NetBeans ได้รับควำมนิยมมำกยิ่งขึ ้น และได้รับกำรพัฒนำให้มีควำมสำมำรถสูง ยิ่งขึ ้นเรื่อยๆ จนถึงเวอร์ชั่นล่ำสุด คือ นอกจำกจะใช้ในกำรพัฒนำ Application ด้วยภำษำจำวำแล้ว ยังสำมำรถพัฒนำอื่นๆได้อีกหลำกหลำยโดยติดตั ้งโปรแกรมเสริม(Add-on)ได้จำก เว็บไซต์ หรือ ผ่ำนตัวอัปเดตเซนเตอร์ (Update Center) ของ NetBeans เช่น ภำษำซี/ซีพลัสพลัส (C/C++ ), Ruby, UML, SOA, Web Application, Java EE, Mobility( Java ME) , Java FX, Java Script, PHP เป็ นต้น ในเวอร์ชัน 6.0 เป็นต้นไปมีกำรรวมโปรแกรมเสริมต่ำงๆที่สำคัญเข้ำในตัวติดตั ้งของ NetBeans โดย สำมำรถเลือกติดตั ้งได้ภำยหลัง

Transcript of 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented...

Page 1: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

บทท2 การทบทวนวรรณกรรมทเกยวของ

2.1 NetBeans

คอ เครองมอส ำหรบโปรแกรมเมอรทจะใชพฒนำ Application ดวยภำษำ Java NetBeans นนเปนโปรแกรมประเภท OpenSource software โดยผใชงำนไมจ ำเปนทจะตองเสยเงน เพอซอมำใชงำน และยงเปดเผย Source code ใหผสนใจและนกพฒนำน ำไปดดแปลง แกไข ตำมกฏของ Opensource โดยม Sun Micro System เปนผสนบสนนโครงกำร

รปท 2.1ภำพตวอยำงโปรแกรมNetBeans

ปจจบน NetBeans ไดรบควำมนยมมำกยงขน และไดรบกำรพฒนำใหมควำมสำมำรถสง

ยงขนเรอยๆ จนถงเวอรชนลำสด คอ นอกจำกจะใชในกำรพฒนำ Application ดวยภำษำจำวำแลว ยงสำมำรถพฒนำอนๆไดอกหลำกหลำยโดยตดตงโปรแกรมเสรม(Add-on)ไดจำก เวบไซต หรอผำนตวอปเดตเซนเตอร (Update Center) ของ NetBeans เชน ภำษำซ/ซพลสพลส (C/C++ ), Ruby, UML, SOA, Web Application, Java EE, Mobility(Java ME), Java FX, Java Script, PHP เปนตน ในเวอรชน 6.0 เปนตนไปมกำรรวมโปรแกรมเสรมตำงๆทส ำคญเขำในตวตดตงของ NetBeans โดยสำมำรถเลอกตดตงไดภำยหลง

Page 2: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

5

ขอดของโปรแกรมนกคอ โปรแกรม NetBeans นนท ำงำนแยกสวนตำงๆ ออกจำกกนเปน Module จงท ำใหสำมำรถน ำ Module ตำงๆทมผทไดพฒนำตอเตมมำตดตงเพมเตมในภำยหลงได ใชงำนไดกบระบบปฏบตกำร Windows , Linux, Mac OS X and Solaris

กำรตดต ง Netbeans ส ำห รบ เขยน Java โปรแกรม Netbeans สำมำรถดำวนโหลดไดฟ ร ทhttp://netbeans.org/downloads/

รปท 2.2 Download NetBeans

เมอท ำกำร download มำแลวจะไดเปน .exe file ซงเรำสำมำรถท ำกำรตดต งโปรแกรมไปยง directory ทตองกำรจะท ำกำรตดตงไดเลย หลงจำกตดตงโปรแกรมเสรจสมบรณแลว เรำสำมำมำรถเขำโปรแกรม NetBeans ไดจำกหนำ desktop

รปท 2.3ไอคอนโปรแกรม

ในทนเราจะท าการพฒนาโปรแกรมดวยภาษา JAVA เพราะฉะนนจะตองท าการ download ตว JDK หรอ http://www.oracle.com/technetwork/java/javase/downloads/index.html

Page 3: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

6

หนำจอหลกของ NetBeans จะแบงออกเปน 4 สวนใหญๆดงน

รปท 2.4 ตวอยำงหนำจอหลก NetBeans 1.เปนสวนของแถบเมน และ Tool ตำงๆ

2.เปนสวนทแสดงและจดกำร Project ตำงๆ เหมอนเปนกำร Browse ด Projectหรอ File ตำงๆ

3.เปนสวนทใชในกำรเขยน Code

4.เปนสวนทใชในกำรแสดงผลกำรท ำงำนตำง เมอท ำกำร Run โปรแกรม และยงมสวนของ

กำร debug โปรแกรมดวย

Page 4: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

7

เมอรจกหนำตำหรอ GUI แบบครำวๆของ NetBeans กนแลวตอไปกมำลองเขยนโปรแกรมงำยกนครบ โดยเรมจำกกำร New Project ใหมขนมำ โดยกำรเลอกท File >> New Project

รปท 2.5 ตวอยำง New Project

จะมหนำตำงขนมำใหเรำเลอก โดยใหเรำท ำกำรเลอก Java และ Java Application แลวกด Nextตงชอ Project Name และเลอก Path ส ำหรบโปรเจค

Page 5: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

8

รปท 2.6 ตวอยำงตงชอ Project Name

หลงจำกทสรำง Project บน Netbeans จะมกำรสรำงไฟล .java ขนมำใหอตโนมต ซงจะไดชอไฟลและ Class เหมอนกบชอ Project

รปท 2.7 ตวอยำงสรำงProject

Page 6: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

9

ทดสอบเพมค ำสงงำย ๆ ดงน

รปท 2.8 ตวอยำงทดสอบค ำสง

จำกนนเลอก Run

รปท 2.9 ตวอยำงปมRun

จะเหนวำกำรเขยน Java บน Netbeans เรำกไมตองมำนง Compile ไฟลของ java เอง เพยงแคเลอก Run แลวปลอยใหเปนหนำทของ Netbeans ทจะท ำหนำท Compile และแสดงผลลพธออกทำงหนำจอ

Page 7: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

10

รปท 2.10 ตวอยำงRun NetBeans

Page 8: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

11

2.2 ภาษา JAVA

รปท 2.11 ตวอยำงJava

ภำษำ Java เปนของบรษท Sun Microsystems ถกพฒนำและเรมใชงำนประมำณป พ.ศ. 2539 (ค.ศ. 1996) โดยถกพฒนำมำแทนทภำษำ C++ ดงนนจงมรปแบบ Syntax คลำย ๆ กบภำษำ C/C++ ในกำรเขยนภำษำ Java จะเปนภำษำโปรแกรมเชงวตถทคอนขำงจะสมบรณแบบ (Object Oriented Programming) เพรำะฉะน นกำรเขยนดวย Syntax ของภำษำ Java น น เรำจะเขยนในมมมองของ OOP เปนหลกส ำหรบกำรพฒนำภำษำ Java สำมำรถพฒนำ Application ไดหลำกหลำยรปแบบมำก เชน Application ทท ำงำนบน Windows , Mac , Linux หรอบน Web Application (JSP Java Servlet) และทก ำลงมำแรงสดในตอนนคอ กำรพฒนำ Application บน Mobile ซงในปจจบนสำมำรถพฒนำไดบน Android และBlackBerry และในอนำคตจะยงมตำมมำอกหลำยตวแนนอน ดงนนในภำษำ Java จะมรนทเปน SDK อยหลำยตว อำทเชนเรำอำจจะเคยไดยนพวก J2SE , J2EE , J2ME หรอ SE , EE , ME เรำอำจจะงงวำท ำไมมนถงมหลำยตว แตในควำมเปนจรงแลว เปนเพยงแครนส ำหรบกำรพฒนำบน Platform ตำง ๆ เชนJ2SE ปจจบนเปลยนชอเปน SE (Standard Edition) ไวส ำหรบพฒนำโปรแกรมบนคอมพวเตอรต งโตะทวไปJ2EE ปจจบนเปลยนชอเปน EE (Enterprise Edition) ไวส ำหรบพฒนำโปรแกรมในองคกรใหญๆ หรอมขอบเขตของโครงกำรกวำงมำกJ2ME ปจจบนเปลยนชอเปน ME ((Micro Edition) ไวส ำหรบพฒนำโปรแกรมบนอปกรณพกพำ เชน โทรศพทมอถอ หรอพดเอ

ส ำหรบกำรพฒนำภำษำ Java สำมำรถพฒนำ Application ไดหลำกหลำยรปแบบมำก เชน Application ทท ำงำนบน Windows , Mac , Linux หรอบน Web Application (JSP Java Servlet) และทก ำลงมำแรงสดในตอนนคอ กำรพฒนำ Application บน Mobile ซงในปจจบนสำมำรถพฒนำไดบน Android และ BlackBerry และในอนำคตจะยงมตำมมำอกหลำยตวแนนอน ดงนนในภำษำ Java จะมรนทเปน SDK อยหลำยตว อำทเชนเรำอำจจะเคยไดยนพวก J2SE , J2EE , J2ME หรอ SE

Page 9: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

12

, EE , ME เรำอำจจะงงวำท ำไมมนถงมหลำยตว แตในควำมเปนจรงแลว เปนเพยงแครนส ำหรบกำรพฒนำบน Platform

รปท 2.12 เปรยบเทยบกำรพฒนำ Java ในรนตำง ๆ

ในกำรพฒนำ Application ดวยภำษำ Java ทวๆไปเรำจะใชรน SE (Standard Edition) กจะม JDK (Java Development Kit) ทประกอบไปดวยCompilerและDebugger ของภำษำ Java ส ำหรบนกพฒนำ JRE (Java Runtime Environment) ซงเปนสงทรวม library ตำงๆส ำหรบกำรรนโปรแกรมทพฒนำดวย Java ตดตง JDK เพยงตวเดยวกจะม JRE รวมอยดวยเหตผลหลกทท ำใหสนใจทจะศกษำภำษำ Java กคอ มชวงหนงไดท ำงำนรบผดชอบเกยวกบกำรพฒนำ App บน Mobile ของ Android ซงตอนนโจทยคอนขำงจะยำก (ในตอนแรก) แตพอไดศกษำจรง ๆ แลว กำรพฒนำ Android ดวยภำษำ Java นนงำยมำก เพรำะในโครงสรำงของภำษำ Java เองกเปน Syntax ทงำย ๆ สำมำรถเขำใจไดอยำงรวดเรว และไดเขยนพวก .NET แบบ C# มำแลวใน 2 ภำษำนมโครงสรำงทเหมอนกนมำก และจะท ำใหสำมำรถศกษำไดอยำงรวดเรว

รปท 2.13 ตวอยำงภำษำJava

Page 10: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

13

2.3 MySQL

รปท 2.14 MySQL

MySQLคอ โปรแกรมระบบจดกำรฐำนขอมล ทพฒนำโดยบรษท MySQL AB มหนำทเกบขอมลอยำงเปนระบบ รองรบค ำสง SQL เปนเครองมอส ำหรบเกบขอมล ทตองใชรวมกบเครองมอหรอโปรแกรมอนอยำงบรณำกำร เพอใหไดระบบงำนทรองรบ ควำมตองกำรของผใช เชนท ำงำนรวมกบเครองบรกำรเวบ (Web Server) เพอใหบรกำรแกภำษำสครปตทท ำงำนฝงเครองบรกำร (Server-Side Script) เชน ภำษำ phpภำษำ APS.NET หรอภำษำเจเอสพ เปนตน หรอท ำงำนรวมกบโปรแกรมประยกต (Application Program) เชน ภำษำวชวลเบสกดอทเนต ภำษำจำวำ หรอภำษำซชำรป เปนตน โปรแกรมถกออกแบบใหสำมำรถท ำงำนไดบนระบบปฏบตกำรทหลำกหลำย และเปนระบบฐำนขอมลโอเพนทซอรท (Open Source)ทถกน ำไปใชงำนมำกทสด

จดเรมตนของ MySQL เรมตนขนในป ค.ศ.1979 Michael Widenius ชำวฟนแลนด หรอรจกกนทวไปในชอ Montyไดพฒนำเครองมอส ำหรบฐำนขอมลตวหนงชอ UNIREG เพอใชงำนภำยในบรษท TcX (บรษททำงดำนระบบคลงขอมล ประเทศสวเดน) ซงตอมำในป ค.ศ.1994 บรษทตองกำรเพมควำมสำมำรถของ UNIREG ใหสำมำรถใชงำนรวมกบระบบฐำนขอมลดวยภำษำ SQL (Structured Query Langauge) เพอกำรใชงำนในรปแบบเวบเบส ทงนทำงทมฯ จงไดเรมตนมองหำระบบฐำนขอมลเพอควำมตองกำรกำรใชงำนดงกลำว

ในตอน แรก ไดท ำกำรทดสอบระบบฐำนขอมลเชงพำณชยหลำยตว แตกพบวำไมเปนทนำพอใจ เนองจำกตำรำงขอมลของบรษทฯ มขนำดใหญ ผลลพธทไดจำกกำรประมวลผลชำเกนกวำจะรบได แตกไดพบกบระบบฐำนขอมลตวหนงชอ mSQL หรอ Mini SQL ซงพฒนำขนโดย David Hughes บรษทฯ มควำมสนใจในระบบฐำนขอมลตวนเปนอยำงมำก เพรำะวำมรำคำไมแพงนก ในครงแรกทำงบรษทฯ กไดท ำงำนรวมกบผพฒนำ เพอแกไขและเพมเตมควำมสำมำรถของ mSQL ไมวำจะ

Page 11: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

14

เปนควำมสำมำรถในกำรเชอมตอกบตำรำงขอมลแบบ ISAM (Indexed Sequential Access Method) รวมทงกำรสนบสนนกำรใชงำนดชน (Index) เปนตน

ขอก ำหนดในกำรเชอมตอ MySQL ระหวำง Server ทง 2 เครองสำมำรถตดตอสอสำรกนไดผำนระบบ Lan หรอ InternetMySQL Database เครองทเปน Server จะตอง Allow Port 3306 และ Network ของClient ก 3306 เชนเดยวกนก ำหนด Host ส ำหรบ User เปน IP ของเครอง Client หรอจะใช % ส ำหรบเครองใด ๆ กได (ปกตเปน localhost) สรปกคอ MySQL ท ำงำนใน Port Default เปน 3306 และ User ส ำหรบเชอมตอจะตองก ำหนดเปน IP หรอ %

รปท 2.15 ตวอยำง MySQL

ควำมสำมำรถและกำรท ำงำนของโปรแกรม MySQL มดงตอไปนMySQL ถอเปนระบบจดกำรฐำนขอมล (DataBase Management System (DBMS) ฐำนขอมลมลกษณะเปนโครงสรำงของกำรเกบรวบรวมขอมล กำรทจะเพมเตม เขำถงหรอประมวลผลขอมลทเกบในฐำนขอมลจ ำเปนจะตองอำศยระบบจดกำร ฐำนขอมล ซงจะท ำหนำทเปนตวกลำงในกำรจดกำรกบขอมลในฐำนขอมลทงส ำหรบกำร ใชงำนเฉพำะ และรองรบกำรท ำงำนของแอพลเคชนอนๆ ทตองกำรใชงำนขอมลในฐำนขอมล เพอใหไดรบควำมสะดวกในกำรจดกำรกบขอมลจ ำนวนมำก MySQL ท ำหนำทเปนทงตวฐำนขอมลและระบบจดกำรฐำนขอมล

MySQL เปนระบบจดกำรฐำนขอมลแบบ relational ฐำนขอมลแบบ relational จะท ำกำรเกบขอมลทงหมดในรปแบบของตำรำงแทนกำรเกบขอมลทงหมดลงในไฟล เพยงไฟลเดยว ท ำใหท ำงำนไดรวดเรวและมควำมยดหยน นอกจำกนน แตละตำรำงทเกบขอมลสำมำรถเชอมโยงเขำหำกนท ำใหสำมำรถรวมหรอจด กลมขอมลไดตำมตองกำร โดยอำศยภำษำ SQL ทเปนสวนหนงของโปรแกรม MySQL ซงเปนภำษำมำตรฐำนในกำรเขำถงฐำนขอมล

Page 12: 21 NetBeans - Siam Universityresearch-system.siam.edu/images/coop/computer... · Oriented Programming) เพรำะฉะน้ันกำรเขียนด้วย Syntax

15

MySQL แจกจำยใหใชงำนแบบ Open Source นนคอ ผใชงำน MySQL ทกคนสำมำรถใชงำนและปรบแตงกำรท ำงำนไดตำมตองกำร สำมำรถดำวนโหลดโปรแกรม MySQL ไดจำกอนเทอรเนตและน ำมำใชงำนโดยไมมคำใชจำยใดๆในระบบปฏบตกำร Red Hat Linux นน มโปรแกรมทสำมำรถใชงำนเปนฐำนขอมลใหผดแลระบบสำมำรถเลอกใชงำนได หลำยโปรแกรม เชน MySQL และ PostgreSQL ผดแลระบบสำมำรถเลอกตดตงไดทงในขณะทตดตงระบบปฏบตกำร Red Hat Linux หรอจะตดตงภำยหลงจำกทตดตงระบบปฏบตกำรกได อยำงไรกตำม สำเหตทผใชงำนจ ำนวนมำกนยมใชงำนโปรแกรม MySQL คอ MySQL สำมำรถท ำงำนไดอยำงรวดเรว นำเชอถอและใชงำนไดงำย เมอเปรยบเทยบประสทธภำพในกำรท ำงำนระหวำงโปรแกรม MySQL และ PostgreSQL โดยพจำรณำจำกกำรประมวลผลแตละค ำสงไดผลลพธดงรปท 1 นอกจำกนน MySQL ถกออกแบบและพฒนำขนมำเพอท ำหนำเปนเครองใหบรกำรรองรบกำรจดกำรกบ ฐำนขอมลขนำดใหญ ซงกำรพฒนำยงคงด ำเนนอยอยำงตอเนอง สงผลใหมฟงกชนกำรท ำงำนใหมๆ ทอ ำนวยควำมสะดวกแกผใชงำนเพมขนอยตลอดเวลำ รวมไปถงกำรปรบปรงดำนควำมตอเนอง ควำมเรวในกำรท ำงำน และควำมปลอดภย ท ำให MySQL เหมำะสมตอกำรน ำไปใชงำนเพอเขำถงฐำนขอมลบนเครอขำยอนเทอรเนต