21 netbeans - research-system.siam.edu · uml, soa, web application, java ee, mobility(java me),...

Post on 17-Mar-2020

23 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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