บทนํา
บทที่ 1 ความรูเกี่ยวกับ การเขียนโปรแกรมเชิงวัตถุ
ในบทนี้นักศึกษาจะไดเรียนรูเกี่ยวกับการพัฒนาโปรแกรมในรูปแบบที่อาศัยการทํางานของ วัตถุเปนหลัก ซึ่งในการเขียนโปรแกรมในสมัยกอนจะกําหนดรูปแบบของการเขียนโปรแกรมในรูปแบบโครงสราง ที่จะเนนจากลําดับการทํางานในขั้นตอนตางๆอยางชัดเจน โดยเฉพาะอยางยิ่งขั้นตอนของการคํานวนและประมวลผลขั้นตอนของการรับคา จนถึงการแสดงผล Object Oriented Programming แตการเขียนโปรแกรมเชิงวัตถุ หรือ จะมีลักษณะแตกตางจาการเขียนโปรแกรมโครงสรางตรงที ่ ผูเขียนจะตองมีความรูความเขาใจทางดานคุณลักษณะตางๆของวัตถุที่ถูกพัฒนาขึ้น เนื่องจากวาการทํางานทั้งหมดของโปรแกรมจะอาศัยการทํางานผานทางวัตถุที่ถูกสรางขึ้นนั่นเอง คุณลักษณะตางๆของวัตถุที่ถูกสรางขึ้นจะแบงออกเปนสองสวนดวยกันคือ สวนของขอมูล(Properties หรือ Data) และสวนของการทํางาน(Method หรือ Operation) จะทําใหโปรแกรมที่สรางขึ้นสามารถจัดเก็บขอมูลตามที่เราออกแบบไวในเบื้องตน นอกจากนี้การกระทําตางๆของวัตถุไมจําเปนจะตองกําหนดรูปแบบการทํางานใหครบอยางสมบูร ณ สามารถจะเขียนตอมาและเพิ่มเติมไดในภายหลัง สรุปไมวาในบทนี้จะไดทราบถึงความแตกตางระหวางการเก็บโปรแกรมในรูปแบบของโครง สรางและการเขียนโปรแกรมเชิงวัตถุซึ่งเปนรูปแบบที่มีการใชงานและมีการพัฒนาอยางแพรหลาย ภาษาที่ใชในการเขียนโปรแกรมทั้งหมดนี้เราจะใชภาษา Java เพื่อทําใหนักศึกษาไดเขาใจวา ทํางานของเขาทุกวันนี้มีความสะดวกสบายรองรับปญหาที่ใชคอมพิวเตอรในการแกไขไดอยางสะด วกและรวดเร็วเนื่องจากวาปญหาที่ใชมีความซับซอนและมีความหลากหลายดังนั้น โปรแกรมในปจจุบันจําเปนจะตองอาศัยภาษาที่รองรับความซับซอนและมีวิธีการเขียนโปรแกรมที่ รองรับความซับซอนดังกลาวไดอยางสมบูรณ 1.1 ความรูเกี่ยวกับวัตถุ คําวา”วัตถุ(Object)” มีผูไดใหคํานิยาม หลากหลายดวยกัน อาทิเชน วัตถุคือการทํางานของโปรแกรม สําหรับรูปแบบของการเขียนโปรแกรมเชิงวัตถุ(Object Oriented Progrmming: OOP) หรือ วัตถุ(Object)คือตัวอยางของคลาส(Class)ที่ถูกพัฒนาขึ้น
1.1.1 ตัวอยางของการเขียนโปรแกรมเชิงวัตถุ ตัวอยางของการเขียนโปรแกรมเชิงวัตถุ ที่ตองอาศัยการทําความเขาใจระหวางคุณลักษณะตางๆ ในสวนตอไปนี้เลิกแซวจะไดทราบถึงตัวอยางของวัตถุที่สรางขึ้น โดยมีรูปแบบที่เหมือนกับ การเขียนโปรแกรมในรูปแบบอื่น แตกตางกันที ่ ● การกําหนดคุณลักษณะเบื้องตน ตองทําการออกแบบไวกอน ● การประสานการทํางานระหวางวัตถุที่สรางขึ้น ● การทํางานที่เกิดขึ้นระหวางขอมูลและการกระทําของวัตถุ วัตถุสามารถเปนอะไรไดบาง ● ประเทศหรือจังหวัด ● คนหรือสัตว ● สิ่งของตางๆ ● อื่นๆที่เปนนามธรรม 1.1.2 โครงสรางของโปรแกรมเชิงวัตถุ
รูปที่ 1 โปรแกรม Ex1.java Ex1.java จากตัวอยางขางตน โปรแกรมชื่อ จากโปรแกรมเริ่มจากการใชเครื่องหมายปกกาเปด เพื่อระบุจุดเริ่มตนของโปรแกรม { และเมื่อทําการเขียนโปรแกรมเรียบรอยจะทําการปดดวยเครื่องหมาย } การสรางความเขาใจเกี่ยวกับวัตถุ ตองอาศัยความรูความสามารถในสวนที่จะกําหนดรายละเอียดของวัตถุที่ถูกสรางขึ้นเนื่องจากวากา รเขียนโปรแกรมเชิงวัตถุจะแตกตางจากครับเขียนโปรแกรมโครงสรางตรงที ่ ● อยูที่ขางขึ้นจะตองสามารถที่จะยกตัวอยางหรือมีตนแบบในการที่จะสรางตัวอยางได ● ลําดับตอมาก็คือวัตถุที่ถูกสรางสามารถที่จะกําหนดการกระทําหรือขอมูล
ตัวอยางเชน ตัวเลขที่ถูกสรางขึ้นอาทิเชนจํานวนเต็มจํานวนทศนิยมเราสามารถจะสรางตัวอยางหรือวัตถุจากคน ลักษณะขอมูลดังกลาวได
รูปที่ 2 ชั้นของการทํางานของภาษาจาวา 1.2 การติดตั้งโปรแกรมภาษาจาวา ภาษา Java เปนภาษาที่จําเปนจะตองติดตั้งลงบนเครื่องคอมพิวเตอรของเราที่เราใชงานอยูในสวนนี้จะแนะนํา Java ถึงวิธีการติดตั้งโปรแกรมภาษา ที่ทําการดาวนโหลดจากระบบเครือขายจะเน็ตมาติดตั้งอยางเครื่องของเราเพื่อที่จะใชในการเขียนโ ปรแกรม จากที่กลาวในขางตนบริษัทที่ทําหนาที่ในการพัฒนาโปรแกรมภาษา Java ขึ้นมาในสวนแรกก็คือบริษัทซันไมโครซอฟซิสเต็มส ขั้นตอนที่ 1 การดาวนโหลดโปรแกรม ● เว็บไซต http://java.sun.com
รูปที่ 3 เว็บไซตของผูผลิตโปรแกรมภาษาจาวา ● เลือก option ดาวนโหลด
รูปที่ 4 เมนู Downloads เพื่อการติดตั้งโปรแกรมภาษา Java ● โปรแกรมที่เราจะทําการดาวหโหลดคือ JAVA SE
รูปที่ 5 รายการของโปรแกรมภาษา Java
● โปรแกรมที่ตองการ เลือก คือ JAVA SE (Java Standard Edition) และ JRE(Java Runtime) ในที่น ี้ คือตัว JDK (Java Development Kid) NetBeans สวนโปรแกรมใชเขียนภาษาที่ชื่อ หากตองการสามารถทําการดาหโหลดไดเชนเดียวกัน
รูปที่ 6 แหลงโปรแกรม Java JDK(Java Development Kid) ● ปจจุบันมีการพัฒนามาถึง JDK 8 การพัฒนาภาษา ไดมีการพัฒนาอยางตอเนื่องปจจุบันนี้เวอรชั่น
Java
ลาสุดไดมีการพัฒนาจนถึงปจจุบันดวยการเพิ่มความสามารถในการรองรับคําสั่งที่มากขึ้นต ลอดจนมีการตกลงแกไขเพิ่มเติมเพื่อใหมีประสิทธิภาพที่สูงขึ้น
รูปที่ 7 รายละเอียดกอนที่จะทําการติดตั้ง หลังจากที่มีการติดตั้งโปรแกรมลงไประบบจะทําการแสดงความเคลื่อนไหวความกาวหนาใ นการติดตั้งทายที่สุดเมื่อติดตั้งไดสําเร็จระบบจะขึ้นหนาจอดังรูปที่กําหนด
รูปที่ 8 รายงานความกาวหนาของการติดตั้ง
ในการพัฒนาระบบที่เกิดขึ้นของภาษา Java Java ในระหวางที่มีการติดตั้งระบบจะทําการตรวจสอบวามีภาษา ที่เคยติดตั้งกอนหนานี้หรือไมหากมีระบบจะทําการใหผูชายเลือกซอฟตแวรที่ตองการจะปรับปรุง
รูปที่ 9 โปรแกรม Java ที่มีการติดตั้งไวกอนหนา
Java จากภาพจะเห็นไดวามีภาษา ไดทําการติดตั้งไวกอนหนานั้นจํานวนสองตัวดวยกันทําใหการติดตั้งใหมจําเปนจะตองถอนการติด ตั้งในเวอรชั่นกอนหนานี้เพื่อทําการติดตั้งตัวใหมลงไป
รูปที่ 10 การถอนโปรแกรมภาษา Java เดิม ระบบจะทําทําการยกเลิกตั้งแตละสวนโดยจะปรากฏภาพความเคลื่อนไหวเพื่อแสดงใหเห็นวาการ ถอนการติดตั้งกําลังทํางาน
รูปที่ 11 โปรแกรมภาษาจาวาเดิมที่มีการติดตั้งไวกอน เมื่อมีการติดตั้งหรือถอนการติดตั้งเรียบรอยแลวระบบจะรายงานใหทราบถึงความสําเร็จในการถอ นการติดตั้งเซนตผูชายจําเปนจะตองสังเกตขั้นตอนดังกลาวนี้หลังจากนั้นตัวติดตั้งจะทําการติดตั้งตั วใหมลงไป
รูปที่ 12 การติดตั้งเสร็จสมบูรณ
ขั้นตอนที่ 2 การกําหนดแหลงขอมูลของโปรแกรมภาษา Java ทายที่สุดกระบวนการของการติดตั้งจะแสดงใหเห็นถึงความสําเร็จในการติดตั้งโปรแกรมภ าษา Java ลงไปในเครื่องของเราและรายงานวาขณะนี้สภาพของการทํางานของโปรแกรมภาษา Java จะมีความสมบูรณเรียบรอยตามที่ตองการ
รูปที่ 13 การเขาสูการเปลี่ยนแปลงคาใน Properties ของเครื่อง
Java หากไมสามารถที่จะเรียกใชงานภาษา ที่ลงไปในเครื่อง ขั้นตอนที่สําคัญอีกขั้นตอนหนึ่งก็คือการกําหนดลักษณะสภาพแวดลอมในการเขาถึงโปรแกรมที่ทํา
หนาที่ในการสั่งหรือแปลชุดคําสั่งของโปรแกรมที่เราทําการพัฒนาขึ้น จึงจําเปนจะตองกําหนดคุณลัษณะดังกลาวลงไปในเครื่องคอมพิวเตอร ดวยการเลือกที่คุณสมบัติ(Properties)ของเครื่องคอมพิวเตอร
รูปที่ 14 ขอมูลพื้นฐานของเครื่องคอมพิวเตอรในหนาจอ Control Panel Java 7 ในรูปที่14นี้จะเปนการติดตั้งภาษา ลงในรูปการวินโดว ซึ่งทําใหเราจะตองกําหนดคุณลักษณะของเครื่องคอมพิวเตอรใหเห็นภาษา Java ที่เราจะติดตั้งลงไปวาอยูในโฟลเดอรไหน ในที่นี้เราทําการติดตั้งดวยการเลือก Advance System Settings
รูปที่ 15 ตัวเลือกในการเปลี่ยนแปลงคา Properties ของระบบในเครื่อง
ลําดับตอไปก็คือการติดตั้งในสวนของ Advanced เพื่อจากกําหนดตัวแปรที่เราเรียกวาสภาพแวดลอมของเครื่องคอมพิวเตอรในการอางอิงถึงขอมูล Environment Variables
รูปที่ 16 การเลือกเปลี่ยน PATH ในเครื่องคอมพิวเตอร
รูปที่ 17 เพิ่มคา PATH ใน Environment Variables
รูปที่ 18 ตําแหนงของภาษา Java ที่ไดติดตั้งลงที่ C:\Program Files\Java\jdk1.8.0_73\bin
รูปที่ 19 เพิ่มคาอางอิงถึงแหลงขอมูลของภาษา Java
รูปที่ 20 การเรียกใชคําสั่ง cmd เพื่อทดสอบการติดตั้ง
รูปที่ 21 ตัวเลือกของ ภาษา Java ที่จะใชติดตั้ง ● ตรวจสอบรุนของระบบปฏิบัติการที่ใช ดวยการใชคําสั่ง winver
รูปที่ 22 คําสั่ง winver เพื่อตรวจสอบเวอรชั่นของระบบปฏิบัติการ
รูปที่ 23 ผลของการตรวจสอบเวอรชั่นของระบบปฏิบัติการ
1.3 โปรแกรมที่ใชเขียน (Code Editor) Java โปรแกรมที่ทําหนาที่ในการเขียนซอสหรือตัวภาษา เองมีความสําคัญเปนลําดับตอมาเนื่องจากวาลักษณะของโปรแกรมประเภทนี้มีการเปดใหฉายหลา ยโปรแกรมดวยกันโดยเฉพาะอยางยิ่งโปรแกรมที่เราควรจะเลือกจําเปนจะตองเลือกตามความสะด วกและรวดเร็วหรือตามความถนัดของผูเขียนโปรแกรมนั่นเองนอกจากนี้ลักษณะดังตางของตัวโปร แกรมประเภทนี้เราจําเปนจะตองอาศัยความสามารถของโปรแกรมในการแสดงถึงชุดคําสั่ง Java ตัวอยางเชนในการเลือกโปรแกรมที่จะมาชวยในการเขียนโปรแกรมภาษา จําเปนจะตองแสดงเห็นถึงลักษณะของคําสั่งและขอมูลบอกถึงความแตกตางของภาษาที่เกิดขึ้นตล อดจนคําสั่งตางๆที่ของภาษา จะถูกแสดงในอาทิ รูปแบบของสีตัวคําสั่ง Java ประเภทตางๆจะทําใหโปรแกรมเมอรหรือผูเขียนโปรแกรมมีความสะดวกมากยิ่งขึ้น นอกจากนี้กระบวนการในการเขียนโปรแกรมจําเปนตองอาศัยตัวชวย คําสั่งตางๆทําใหผูเขียนโปรแกรมสามารถที่จะเลือกใชคําสั่งที่เหมาะสมไดในรายละเอียดของการเขี Visual Studio ยนโปรแกรมของบทนี้จะแนะนําโดยการใชโปรแกรมที่เรียกวา เปนโปรแกรมฟรีที่สามารถจะดาวนโหลดไดจากเครือขายอินเตอรเน็ตที่ชื่อวาโปรแกรมที่พัฒนาขึ้น มารองรับไดหลายภาษาดวยกันรวมทั้งภาษา Java
ขั้นตอนที่ 1 เขาไปยังเว็บไซตชื่อ google แลวทําการคนหาคําวา visual studio code
รูปที่ 24 คนหาโปรแกรม Visual Studio Code ดวย Google
ขั้นตอนที ่ 2 ไปยัง เว็บ https://code.visualstudio.com/ แลวทําการเลือก Download for Windows
รูปที่ 25 เว็บไซต Visual Studio Code
ขั้นตอนที่ 2 ทําการสราง Folder เพื่อจัดเก็บโปรแกรม
รูปที่ 26 สราง Folder ชื่อ Examples
ขั้นตอนที่ 3 เริ่มติดตั้งตัวชวย (Plugin) การเขียนโปรแกรมภาษา Java โปรแกรมเปดโอกาสใหผูพัฒนาโปรแกรมสามารถจะเลือกตัวติดตั้งเพิ่มเติม หรือ PlugIn ทําใหการเขียนโปรแกรมมีความสะดวกมากยิ่งขึ้น จากตัวอยางจะเปนการทดลองการติดตั้งโดยชวยในการเขียนโปรแกรมภาษา Java ที่มีชื่อวา Language Support for Java(TM) by Red Hat
รูปที่ 27 ติดตั้ง PlugIn เพิ่มเติม
1.4 บทสรุป ในการเขียนโปรแกรมในปจจุบันมีรูปแบบของการเขียนโปรแกรมที่หลากหลายภาษา Java เปนภาษาหนึ่งที่เปดโอกาสใหนักพัฒนาโปรแกรมสามารถที่จะเรียนรูวิธีการเขียนโปรแกรมในรูปแ บบของหลักการเขียนโปรแกรมเชิงวัตถุไดอยางสะดวกสบาย Java นอกจากนี้ในแตละบทภาษา ยังตองจําเปนที่จะตองมีการติดตั้งลงในเครื่องคอมพิวเตอรของตัวเองและสามารถที่จะสั่งใหโปรแก รมนี้ทํางานยังระบบปฏิบัติการไดหลายชนิดดวยกัน ลักษณะของโปรแกรมลักษณะเชนนี ้ มีความแตกตางจากการเขียนโปรแกรมโดยทั่วไปตรงที ่ รองรับการออกแบบความตองการ ของผูพัฒนาระบบที่หลากหลาย และซับซอนมากยิ่งขึ้นเนื่องจากวาการเขียนโปรแกรมเชิงวัตถุสามารถที่จะ จําลองสภาพหรือแนวความคิดตามหลักของสิ่งที่เกิดขึ้นในปจจุบันทําใหมีการเขียนโปรแกรมประเ ภทนี้กันอยางแพรหลาย โดยเฉพาะอยางยิ่งความสามารถในการรองรับกับอุปกรณหลากหลายชนิด
1.5 คําถามทายบท คําถามที ่ 1 ลักษณะของการเขียนโปรแกรมเชิงวัตถุมีความเหมือนหรือแตกตางจากการเขียนโปรแกรม ทั่วไปอยางไร คําถามที่ 2 คําวา วัตถุ (Object) ของการเขียนโปรแกรมเชิงวัตถุมีลักษณะอยางไร 3 คําถามที ่ อ งคประกอบของการเขียนโปรแกรมเชิงวัตถุดวยภาษา Java จะประกอบดวยรูปแบบการทํางานอยางไร คําถามที ่ 4 ในการเขียนโปรแกรมภาษา Java มีลักษณะการเขียนที่แตกตางจากภาษาขอมจะอื่นอยางไร คําถามที่ 5 เราสามารถใช edit ตอรเขียนโปรแกรมภาษา Java ดวยโปรแกรมอะไรบาง