21 netbeans - siam universityresearch-system.siam.edu/images/coop/computer... · oriented...
Post on 21-Jan-2020
5 Views
Preview:
TRANSCRIPT
บทท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 โดยสำมำรถเลอกตดตงไดภำยหลง
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
6
หนำจอหลกของ NetBeans จะแบงออกเปน 4 สวนใหญๆดงน
รปท 2.4 ตวอยำงหนำจอหลก NetBeans 1.เปนสวนของแถบเมน และ Tool ตำงๆ
2.เปนสวนทแสดงและจดกำร Project ตำงๆ เหมอนเปนกำร Browse ด Projectหรอ File ตำงๆ
3.เปนสวนทใชในกำรเขยน Code
4.เปนสวนทใชในกำรแสดงผลกำรท ำงำนตำง เมอท ำกำร Run โปรแกรม และยงมสวนของ
กำร debug โปรแกรมดวย
7
เมอรจกหนำตำหรอ GUI แบบครำวๆของ NetBeans กนแลวตอไปกมำลองเขยนโปรแกรมงำยกนครบ โดยเรมจำกกำร New Project ใหมขนมำ โดยกำรเลอกท File >> New Project
รปท 2.5 ตวอยำง New Project
จะมหนำตำงขนมำใหเรำเลอก โดยใหเรำท ำกำรเลอก Java และ Java Application แลวกด Nextตงชอ Project Name และเลอก Path ส ำหรบโปรเจค
8
รปท 2.6 ตวอยำงตงชอ Project Name
หลงจำกทสรำง Project บน Netbeans จะมกำรสรำงไฟล .java ขนมำใหอตโนมต ซงจะไดชอไฟลและ Class เหมอนกบชอ Project
รปท 2.7 ตวอยำงสรำงProject
9
ทดสอบเพมค ำสงงำย ๆ ดงน
รปท 2.8 ตวอยำงทดสอบค ำสง
จำกนนเลอก Run
รปท 2.9 ตวอยำงปมRun
จะเหนวำกำรเขยน Java บน Netbeans เรำกไมตองมำนง Compile ไฟลของ java เอง เพยงแคเลอก Run แลวปลอยใหเปนหนำทของ Netbeans ทจะท ำหนำท Compile และแสดงผลลพธออกทำงหนำจอ
10
รปท 2.10 ตวอยำงRun NetBeans
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
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
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 ไมวำจะ
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 ซงเปนภำษำมำตรฐำนในกำรเขำถงฐำนขอมล
15
MySQL แจกจำยใหใชงำนแบบ Open Source นนคอ ผใชงำน MySQL ทกคนสำมำรถใชงำนและปรบแตงกำรท ำงำนไดตำมตองกำร สำมำรถดำวนโหลดโปรแกรม MySQL ไดจำกอนเทอรเนตและน ำมำใชงำนโดยไมมคำใชจำยใดๆในระบบปฏบตกำร Red Hat Linux นน มโปรแกรมทสำมำรถใชงำนเปนฐำนขอมลใหผดแลระบบสำมำรถเลอกใชงำนได หลำยโปรแกรม เชน MySQL และ PostgreSQL ผดแลระบบสำมำรถเลอกตดตงไดทงในขณะทตดตงระบบปฏบตกำร Red Hat Linux หรอจะตดตงภำยหลงจำกทตดตงระบบปฏบตกำรกได อยำงไรกตำม สำเหตทผใชงำนจ ำนวนมำกนยมใชงำนโปรแกรม MySQL คอ MySQL สำมำรถท ำงำนไดอยำงรวดเรว นำเชอถอและใชงำนไดงำย เมอเปรยบเทยบประสทธภำพในกำรท ำงำนระหวำงโปรแกรม MySQL และ PostgreSQL โดยพจำรณำจำกกำรประมวลผลแตละค ำสงไดผลลพธดงรปท 1 นอกจำกนน MySQL ถกออกแบบและพฒนำขนมำเพอท ำหนำเปนเครองใหบรกำรรองรบกำรจดกำรกบ ฐำนขอมลขนำดใหญ ซงกำรพฒนำยงคงด ำเนนอยอยำงตอเนอง สงผลใหมฟงกชนกำรท ำงำนใหมๆ ทอ ำนวยควำมสะดวกแกผใชงำนเพมขนอยตลอดเวลำ รวมไปถงกำรปรบปรงดำนควำมตอเนอง ควำมเรวในกำรท ำงำน และควำมปลอดภย ท ำให MySQL เหมำะสมตอกำรน ำไปใชงำนเพอเขำถงฐำนขอมลบนเครอขำยอนเทอรเนต
top related