1
แผนการจัดการเรียนรู้ หน่วยที่ 1 หลักสูตรประกาศนียบัตรวิชาชีพ สอนครั้งที่ 1 รหัสวิชา 20204-2108 ชื่อวิชาการเขียนโปรแกรมเชิงวัตถุเบื้องต้น ท-ป-น :2-2-3 ชื่อหน่วยการเรียนรู้ ความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ ทฤษฎี 2 ชม. ปฏิบัติ 2 ชม. 1. สาระสำคัญ OOP (Object Oriented Programming) เป็นวิธีการเขียนโปรแกรม โดยอาศัยแนวคิดของวัตถุชิ้นหนึ่ง มีความสามารถในการปกป้องข้อมูล และการสืบทอดคุณสมบัติ ซึ่งทำให้แนวโน้มของ OOP ได้รับการยอมรับ และพัฒนามาใช้ในระบบต่าง ๆ มากมาย เช่น ระบบปฏิบัติการ วินโดวส์ เป็นต้น ในที่นี้จะกล่าวถึงความเป็นมา และความหมายของแนวคิดการเขียนโปรแกรมเชิงวัตถุ ข้อควรรู้เกี่ยวกับ หลักการเขียนโปรแกรมเชิงวัตถุ ตลอดจนความสำคัญของการเขียนและออกแบบระบบงานก่อนเขียนโปรแกรม รวมถึงประโยชน์ของการเขียนโปรแกรมเชิงวัตถุซึ่งจะทำให้ผู้เขียนได้เข้าใจถึงหลักการเบื้องต้นของแนวความคิด เชิงวัตถุนี้ได้ 2. สมรรถนะประจำหน่วย แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ 3. จุดประสงค์การเรียนรู้ 1. อธิบายความเป็นมาของแนวคิดแบบ OOP ได้ 2. อธิบายแนวคิดแบบ OOP ได้ 3. อธิบายความรู้เกี่ยวกับ OOP ได้ 4. อธิบายการเขียนโปรแกรมและการออกแบบระบบงานได้ 5. บอกประโยชน์ของการโปรแกรมแบบ OOP ได้ 6. คุณลักษณะอันพึงประสงค์ 1. มีวินัย 2. ใฝ่เรียนรู้ 3. มุ่งมั่นในการทำงาน
6 4. สาระการเรียนรู้ 1. ความเป็นมาของแนวคิดแบบ OOP 2. แนวคิดแบบ OOP 3. ความรู้เกี่ยวกับ OOP 4. การเขียนโปรแกรมและการออกแบบระบบงาน 5. ประโยชน์ของการโปรแกรมแบบ OOP 5. กิจกรรมการเรียนรู้ (สัปดาห์ที่1-2) 5.1 ขั้นนำเข้าสู่บทเรียน 5.1.1 ครูผู้สอนทำการสำรวจรายชื่อนักเรียนก่อนเรียนในชั่วโมง 5.1.2 ครูผู้สอนถามคำถามที่เกี่ยวกับเรื่องต่อไปนี้ 1. ครูผู้สอนถามเกี่ยวกับประสบการณ์การเขียนโปรแกรมของนักเรียน เช่น นักเรียน คน ใด เคยเขียนโปรแกรมภาษาซีมาก่อนบ้าง หรือนักเรียนมีประสบการณ์การเขียนโปรแกรม ภาษาใดมาบ้าง เป็น ต้น 2. ครูสอบถามความคิดเห็นและความรู้สึกของนักเรียนเกี่ยวกับการเขียนโปรแกรม ภาษา นั้นๆ 5.1.3 ครูอธิบายและยกตัวอย่างความสำคัญของการเรียนรู้การเขียนโปรแกรม คอมพิวเตอร์ 5.2 ขั้นสอน 5.2.1 กำหนดปัญหา 1. ครูให้นักเรียนแบ่งกลุ่มๆ ละ 4 – 5 คน และแจกใบงานที่ 1 2. ครูมอบหมายภารกิจให้แต่ละกลุ่มปฏิบัติกิจกรรมที่ 1 5.2.2 ทำความเข้าใจปัญหา 1. นักเรียนแต่ละกลุ่มทำความเข้าใจปัญหา โดยวิเคราะห์ปัญหาที่ต้องค้นหาหรือ แก้ไขจากใบงานที่กำหนดให้ 2. นักเรียนร่วมกันอภิปรายปัญหาที่นักเรียนจะต้องค้นหา แก้ไข หรือหาวิธีการที่ ถูกต้อง โดยครูคอยให้คำแนะนำ เสริมแรง และเสนอแนะเพิ่มเติมหากนักเรียนยังวิเคราะห์ปัญหาไม่ถูกต้อง 5.2.3 ดำเนินการศึกษาค้นคว้า 1. นักเรียนดำเนินการศึกษาค้นคว้า พร้อม กับตอบคำถามในใบงานที่1 โดยให้เวลา นักเรียนแต่ละกลุ่มศึกษาเรียนรู้จากเว็บไซต์เป็นเวลา 20 นาที 2. ครูคอยให้คำแนะนำ เสนอแนะ และตอบข้อซักถามเมื่อนักเรียนเกิดปัญหาหรือไม่ ข้อสงสัย 5.2.4 สังเคราะห์ความรู้
7 1. นักเรียนสังเคราะห์ความรู้เป็นของกลุ่มตนเอง ในประเด็นต่อไปนี้ 1. ความเป็นมาของแนวคิดแบบ OOP 2. แนวคิดแบบ OOP 3. ความรู้เกี่ยวกับ OOP 4. การเขียนโปรแกรมและการออกแบบระบบงาน 5. ประโยชน์ของการโปรแกรมแบบ OOP 2. นักเรียนในกลุ่มแลกเปลี่ยนความคิดเห็นและตรวจสอบองค์ความรู้ของกลุ่มตนเอง 5.2.5 สรุปและประเมินคำตอบ 1. นักเรียนแต่ละกลุ่มสรุปคำตอบและเขียนคำตอบลงในใบกิจกรรมให้ชัดเจน 2. สมาชิกกลุ่มร่วมกันประเมินคำตอบและตรวจสอบคำตอบที่ค้นพบอีกครั้ง 5.2.6 สรุปและประเมินคำตอบ 1. ครูสุ่มนักเรียน 2 – 3 กลุ่มให้ออกมานำเสนองาน 2. นักเรียนนำเสนอและ แลกเปลี่ยนความรู้กับเพื่อนกลุ่มอื่นๆ ที่หน้าชั้นเรียนอีกครั้ง 5.3 ขั้นสรุป 5.3.1 ครูสรุปองค์ความรู้ 5.3.2 ครูเปิดโอกาสให้นักเรียนสอบถามปัญหาข้อสงสัย และตอบปัญหาให้นักเรียน เข้าใจอีกครั้ง 5.3.2 ครูให้นักเรียนทำแบบทดสอบเรื่องที่ 1 เป็นเวลา 10 นาที 5.3.2 ครูเฉลยและแนะนำเพิ่มเติมในประเด็นคำถามของแบบทดสอบแต่ละข้อ 6. สื่อและแหล่งการเรียนรู้ 6.1 สื่อการเรียน - ใบงานที่ 1 - ไฟล์นำเสนองานประกอบการสอน 6.2 อุปกรณ์ คอมพิวเตอร์โปรเจคเตอร์ 6.3 แหล่งการเรียนรู้ อินเทอร์เน็ต ห้องสมุด เว็บบอร์ด ร้านคอมพิวเตอร์ 7. หลักฐานการเรียนรู้ 7.1 หลักฐานความรู้ - ใบงาน 7.2 หลักฐานการปฏิบัติงาน - เว็บไซต์วิชาเทคโนโลยีสารสนเทศฯ 8. การวัดและประเมินผล ด้าน วิธีการ เครื่องมือ เกณฑ์
8 ด้านความรู้ - ทำแบบทดสอบเรื่องที่ 1 - นำเสนอวิธีการเขียน โปรแกรมภาษาไพทอน - แบบทดสอบออนไลน์เรื่องที่ 1 แบบทดสอบเรื่องที่ 1 - ใบงานที่ 1 - ร้อยละ 80 ขึ้นไป - ร้อยละ 80 ขึ้นไป ด้านคุณธรรม/ จริยธรรม - สังเกตจากพฤติกรรมที่ รับผิดชอบต่องานที่ได้รับ มอบหมาย - สังเกตความอดทน การ รับ ฟังความคิดเห็นของ ผู้อื่น การ วิเคราะห์การ วิจารณ์ผลงาน ของกลุ่ม ตนเองและกลุ่มอื่น - แบบสังเกตพฤติกรรมการ ทำงานกลุ่ม - แบบสังเกตพฤติกรรมการ ทำงานกลุ่ม - ระดับดีขึ้นไป - ระดับดีขึ้นไป ด้านทักษะ/ กระบวนการ - สังเกตจากพฤติกรรมที่ เกิด จากการทำงานกลุ่ม ในการ แก้ปัญหาร่วมกัน - แบบประเมินทักษะ/ กระบวนการในการแก้ปัญหา - ระดับดีขึ้นไป
9 แนวทางการนําปรัชญาเศรษฐกิจพอเพียงมาใช้ในการจัดกิจกรรมการเรียนรู้ ผู้สอนนําหลักปรัชญาของเศรษฐกิจพอเพียงมาใช้ในการจัดกิจกรรมการเรียนรู้ ความรู้ คุณธรรม - แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ - หลักปรัชญาของเศรษกิจพอเพียง - มีวินัย - ใฝ่เรียนรู้ - มุ่งมั่นในการทำงาน หลักพอเพียง ประเด็น พอประมาณ มีเหตุผล มีภูมิคุ้มกันในตัวที่ดี เนื้อหา - เนื้อหา เรื่อง ความรู้ เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุ สอดคล้องกับ จุดประสงค์การ เรียนรู้ - เพื่อให้ผู้เรียนบรรลุ ตามจุดประสงค์การ เรียนรู้ เรื่อง ความรู้ เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุ - สรุปเนื้อหาให้เข้าใจ ง่าย มีคลิปวิดีโอและ ใบความรู้เรื่อง ความรู้เบื้องต้น เกี่ยวกับโปรแกรมเชิง วัตถุ เวลา - กำหนดเวลา เหมาะสมกับกิจกรรม การเรียนรู้ และงานที่ มอบหมายให้กับ ผู้เรียน - เพื่อให้สามารถจัด กิจกรรมการเรียนรู้ ตามเวลาที่กำหนด - วางแผนการใช้เวลา ในการจัดกิจกรรม - มอบหมายงาน ศึกษาเพิ่มเติม วิธีการจัดกิจกรรม - แบ่งกลุ่มผู้เรียนให้ พอดีกับจำนวน ผู้เรียน - มอบหมายภาระงาน ให้เหมาะสมกับ ความสามารถของ ผู้เรียนและสอดคล้อง กับจุดประสงค์การ เรียนรู้ - เพื่อให้ผู้เรียนมี ความรู้ความเข้าใจ มี ทักษะและเจตคติที่ ถูกต้อง ในเรื่อง ความรู้เบื้องต้น เกี่ยวกับโปรแกรมเชิง วัตถุ - ระหว่างจัดกิจกรรม ครูดูแลอย่างใกล้ชิด เพื่อช่วยแก้ปัญหาที่ อาจเกิดขึ้น - วางแผนการจัด กิจกรรมการเรียนรู้ที่ หลากหลาย -วางแผนการจัด กระบวนการจัด กิจกรรมอย่างเป็น ขั้นตอน แหล่งเรียนรู้ - ใช้แหล่งเรียนรู้ที่ สอดคล้องกับเนื้อหา - การจัดหาแหล่ง เรียนรู้ให้เหมาะสม กับเนื้อหา เรื่อง ความรู้เบื้องต้น เกี่ยวกับโปรแกรมเชิง วัตถุ - เพื่อให้ผู้เรียนได้ เรียนรู้จาก ประสบการณ์ตรง และสถาณการณ์ สมมุติที่จำลองขึ้น - ศึกษารายละเอียด ของสถานที่ และ ความปลอดภัยของ แหล่งเรียนรู้ล่วงหน้า
10 หลักพอเพียง ประเด็น พอประมาณ มีเหตุผล มีภูมิคุ้มกันในตัวที่ดี สื่อ/อุปกรณ์ - กำหนดสื่ออุปกรณ์ เหมาะสมกับเนื้อหา/ กิจกรรม/วัยของ ผู้เรียน - ใช้สื่อ วัสดุอุปกรณ์ที่ หาได้ง่ายในท้องถิ่น - เพื่อให้ผู้เรียนได้ เรียนรู้ได้ง่ายและเร็ว ขึ้นจากสื่อที่ หลากหลาย - เพื่อให้ผู้เรียนได้ ประสบการณ์ตรง จากการใช้สื่อ อุปกรณ์ - วางแผนการใช้สื่อ ตามลำดับขั้นตอนที่ กำหนดไว้ในกิจกรรม - สื่อมีความถูกต้อง ตามเนื้อหา - เตรียมสื่อ วัสดุ อุปกรณ์ให้เพียงพอ และพร้อมใช้งาน การประเมินผล - จัดแบบทดสอบและ ใบงานให้เหมาะสม กับจุดประสงค์การ เรียนรู้ - เพื่อนำผลการ ประเมินมา พัฒนาการจัดเรียนรู้ - เตรียมแบบประเมิน ที่หลากหลาย -ชี้แจงให้นักศึกษา ทราบแนวทางการวัด และประเมินผล
๒. ผลที่เกิดกับผู้เรียนที่สอดคล้องกับหลักปรัชญาของเศรษฐกิจพอเพียงจากการจัดกิจกรรมการเรียนรู้ ความรู้ คุณธรรม - แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ - หลักปรัชญาของเศรษกิจพอเพียง - มีวินัย - ใฝ่เรียนรู้ - มุ่งมั่นในการทำงาน พอประมาณ มีเหตุผล มีภูมิคุ้มกันในตัวที่ดี - กำหนดหน้าที่สมาชิกในกลุ่มได้ อย่างเหมาะสม - ใช้วัสดุ อุปกรณ์ สื่อได้เหมาะสม กับกิจกรรมการเรียนรู้ - พอประมาณในการแบ่งเวลาทำ กิจกรรมให้เสร็จทันเวลา - นำความรู้จากห้องเรียนไปใช้ใน ชีวิตประจำวันได้อย่างมีเหตุผล - เพื่อแสดงความรู้เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุได้ถูกต้องตาม บริบท - มีการวางแผนการทำงานอย่างเป็น ขั้นตอน - วางแผนการเตรียมวัสดุ อุปกรณ์ สื่อในการเรียนรู้ - ศึกษาข้อมูลเพิ่มเติมจากแหล่ง เรียนรู้ที่หลากหลาย สมดุลและพร้อมรับการเปลี่ยนแปลง ๔ มิติ/ด้าน ด้าน/องค์ประกอบ วัตถุ/เศรษฐกิจ สังคม สิ่งแวดล้อม วัฒนธรรม ความรู้(K) ใช้ความรู้เบื้องต้น ในการเขียน โปรแกรม มีความรู้ในการแบ่ง หน้าที่ในการทำงาน กลุ่ม มีความรู้ในการดูแล รักษาความสะอาด ในห้องเรียน/ฐาน เรียนรู้ นักศึกษามีความรู้ เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุ ทักษะ/ กระบวนการ(P) มีทักษะในการ ทำงานเป็นทีม มีทักษะในการ ทำงานกลุ่ม จน สำเร็จตามที่ได้รับ มอบหมาย รักษาความสะอาด ในห้องเรียน/ฐาน การเรียนรู้ นักศึกษามีทักษะ การแสดงความรู้ เกี่ยวกับโปรแกรม เชิงวัตถุ เจคติ/ค่านิยม(A) เห็นความสำคัญของ การเขียนโปรแกรม เห็นคุณค่าในการ ทำงานร่วมกับผู้อื่น มีจิตสำนึกในการ รักษาความสะอาด สถานที่ร่วมกัน ตระหนักและเห็น คุณค่าของความรู้ เบื้องต้นในการ เขียนโปรแกรม
๓. ศาสตร์การพัฒนา/ หลัก ๓ ศาสตร์ 3.๑ ศาสตร์พระราชา 3.๑.๑ หลักการทรงงาน ข้อที่ 4. ทำตามลำดับขั้น ในการทรงงานพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตรทรง เริ่มต้นจากสิ่งที่จำเป็นของประชาชนที่สุดก่อน ได้แก่ งานด้านสาธารณสุข เพราะเมื่อมีร่างกายสมบูรณ์แข็งแรง แล้วก็จะสามารถทำประโยชน์ด้านอื่น ๆ ต่อไปได้ จากนั้นจะเป็นเรื่องสาธารณูปโภคขั้นพื้นฐาน และสิ่งจำเป็นในการประกอบอาชีพ อาทิ ถนน แหล่งน้ำเพื่อการเกษตรและการอุปโภคบริโภค รวมถึง การให้ความรู้ทางวิชาการและเทคโนโลยีที่เรียบง่าย เน้นการปรับใช้ภูมิปัญญาท้องถิ่นที่ราษฎรสามารถนำไป ปฏิบัติได้และเกิดประโยชน์สูงสุด 3.๑.๒ โครงการในพระราชดำริ โครงการศูนย์ศึกษาการพัฒนาเขาหินซ้อน อันเนื่องมาจากพระราชดำริ อำเภอพนมสารคาม จังหวัดฉะเชิงเทรา ในปี พ.ศ. 2523 พระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร ทรงพระกรุณาโปรดเกล้า ฯ ให้ใช้พื้นที่จำนวน 15 ไร่ จัดสร้างสวนป่าสมุนไพรชนิดต่าง ๆ ไว้ศึกษาวิจัยทางวิชาการเผยแพร่การใช้ประโยชน์ และเป็นแหล่งศึกษาหาความรู้แก่นักเรียน นักศึกษา และประชาชนที่สนใจ การนำสมุนไพรมาใช้ประโยชน์ แสดงให้เห็นถึงความสอดคล้องกับปรัชญาในการพัฒนา สังคมของพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร 5 ประการ คือ 1. การส่งเสริมศักยภาพในการพึ่งตนเองของประชาชน 2. การอนุรักษ์และการใช้ทรัพยากร ท้องถิ่นให้เกิดประโยชน์ 3. การอนุรักษ์ภูมิปัญญาไทย 4. เศรษฐกิจพอเพียง 5. การพัฒนาไปสู่เทคโนโลยี สมัยใหม่ซึ่งแนวพระราชดำริเรื่องการนำสมุนไพรมาศึกษาและวิจัยได้นำไปสู่การศึกษา พัฒนา และการนำพืช ส ม ุ น ไ พ ร ท ี ่ ม ี อ ย ู ่ ใ น ท ้ อ ง ถ ิ ่ น ร ว ม ท ั ้ ง ส ม ุ น ไ พ ร จ า ก ต ่ า ง ป ร ะ เ ท ศ เ ข ้ า ม า ท ด ล อ ง ป ลู ก และทดลองทำผลิตภัณฑ์ต่าง ๆ ออกมาใช้สมุนไพรกับโครงการหลวงพืชสมุนไพรเป็นพืชอีกกลุ่มหนึ่ง ที่มูลนิธิโครงการหลวงได้พยายามพัฒนาให้เป็นพืชทางเลือก โดยมีวัตถุประสงค์เพื่อ 1. เสริมรายได้ให้แก่ เกษตรกรตามพระราโชบายในการแก้ปัญหาการปลูกฝิ่นบนพื้นที่สูงของเกษตรกรชาวเขา 2. ลดปัญหา การตัดไม้ทำลายป่า 3. เพื่อธำรงไว้ซึ่งความกินดีอยู่ดีของพสกนิกรบนพื้นที่สูง ที่มา http://km.rdpb.go.th/Project/View/8588 3.๑.๓ พระบรมราโชวาท/พระราชดำรัส เมื่อวันที่ ๑๘ กรกฎาคม ๒๕๑๗ ความตอนหนึ่งว่า “...การพัฒนาประเทศจำเป็นต้องทำตามลำดับขั้น ต้องสร้างพื้นฐาน คือ ความพอมีพอกิน พอใช้ของประชาชนส่วนใหญ่เป็นเบื้องต้นก่อน โดยใช้วิธีการและใช้ อุปกรณ์ที่ประหยัด แต่ถูกต้องตามหลักวิชา เมื่อได้พื้นฐานที่มั่นคงพร้อมพอควรและปฏิบัติได้แล้ว จึงค่อยสร้างค่อยเสริมความเจริญและฐานะเศรษฐกิจขั้นที่สูงขึ้นโดยลำดับต่อไป หากมุ่งแต่จะทุ่มเทสร้างความ เจริญ ยกเศรษฐกิจขึ้นให้รวดเร็วแต่ประการเดียว โดยไม่ให้แผนปฏิบัติการสัมพันธ์กับสภาวะ ของประเทศและของประชาชนโดยสอดคล้องด้วย ก็จะเกิดความไม่สมดุลในเรื่องต่าง ๆ ขึ้น ซึ่งอาจกลายเป็น ความยุ่งยากล้มเหลวได้ในที่สุด ดังเห็นได้ที่อารยประเทศกำลังประสบปัญหาทางเศรษฐกิจอย่างรุนแรงในเวลา นี้…” 3.๒ ศาสตร์ชาวบ้าน/ศาสตร์ภูมิปัญญาชาวบ้าน ชื่อ- สกุล นางเบญจมาศ โพธิกำพล อายุ ๕๕ ปี อยู่ปัจจุบัน วิทยาลัยเทคนิคสมุทรสาคร ความเป็นมาของบุคคลคลังปัญญา เป็นข้าราชการครู,ปราชญ์ชาวบ้านที่มีความรู้เชี่ยวชาญเกี่ยวกับ คอมพิวเตอร์ จบการศึกษาระดับปริญญาโท สาขาวิชาเทคโนโลยีคอมพิวเตอร์ จากมหาวิทยาลัยนเรศวร
ข ประสบการณ์การทำงาน ปฏิบัติหน้าที่การสอนคอมพิวเตอร์และรับเชิญไปบรรยาย เป็นวิทยากรให้ความรู้กับ หน่วยงานต่างๆ เช่น วิทยาลัยเทคนิคสมุทรสงคราม การทำงานปัจจุบัน ข้าราชการครู ประเภทภูมิปัญญา ด้านการศึกษา จุดเด่นภูมิปัญญา เป็นวิทยากรด้านคอมพิวเตอร์ให้กับหน่วยงานรัฐบาลและเอกชน การพัฒนาต่อยอด แนะนำ ช่วยเหลือ หน่วยงานรัฐบาลและเอกชนที่เกี่ยวข้องกับงานด้านคอมพิวเตอร์ องค์ความรู้ด้านอื่น ๆ รับปรึกษาแนะนำการให้ความรู้เรื่องเกี่ยวกับคอมพิวเตอร์ 3.๓ ศาสตร์สากล การเขียนโปรแกรมเชิงวัตถุ เป็นรูปแบบการเขียนโปรแกรมที่ใช้แนวคิดของออบเจ็ค ซึ่งในออบเจ็คนั้น จะประกอบไปด้วยสมาชิก 2 แบบ คือ ตัวแปรซึ่งเป็นข้อมูลหรือกำหนดคุณลักษณะของออบเจ็ค และเมธอด เป็นฟังก์ชันการทำงานที่อ็อบเจ็คสามารถทำได้ ในการสร้างออบเจ็คนั้นจะอยู่ภายใต้การกำหนดของคลาส โดย คลาสคือการกำหนดว่าออบเจ็คจะมีสมาชิกอะไรบ้าง และกำหนดการทำงานของเมธอด ดังนั้นออบเจ็คจะสร้าง จากคลาส เราเรียกออบเจ็คว่า instances ของคลาส ภาษาต่างๆ เป็นจำนวนมากสนับสนุนการเขียนโปรแกรมเชิงวัตถุ เช่น Java C++C# Python PHP Ruby และภาษาอื่นๆ ซึ่ง Java ถือว่าเป็นภาษาของออบเจ็คอย่างเต็มรูปแบบ การเขียนโปรแกรมเชิงวัตถุนั้น เป็นการพัฒนารูปแบบของการเขียนโปรแกรมไปอีกขั้นจากการเขียนโปรแกรมแบบเดิมที่เราเคยเขียนคือ Procedural programming คุณสมบัติของ OOP การเขียนโปรแกรมเชิงวัตถุ มีข้อดีและข้อได้เปรียบจากการเขียนโปรแกรมแบบเดิมมากมาย ซึ่งสิ่งที่ สำคัญที่สุดของมันคือการนำโค้ดของโปรแกรมกลับมาใช้ใหม่ และคุณสมบัติอื่นๆ ดังนี้ • Code reuse: การนำโค้ดกลับมาใช้ใหม่ ได้อย่างมีประสิทธิภาพ • Maintenance: ง่ายต่อการบำรุงรักษาและปรับปรุง แต่ละคลาสจะมีขอบเขตการทำงานและ เมธอดของมันเอง • Classes: คลาสที่สร้างขึ้นนั้น สามารถนำไปสร้างเป็นออบเจ็คได้ไม่จำกัด และแต่ละออบเจ็ค มีสมาชิกเป็นของมันเอง • Inheritance: คุณสมบัติการสืบทอด คลาสสามารถสืบทอดจากคลาสอื่นได้ ซึ่งเป็นการ reuse code และพัฒนาต่อเดิมความสามารถจากคลาสเดิมที่มีอยู่ • Polymorphism: คุณสมบัติของออบเจ็คที่หลากหลายรูปแบบ ซึ่งสามารถจัดการได้จาก Base คลาสของมัน • Encapsulation: เป็นคุณสมบัติการห่อหุ้ม เป็นแนวคิดแบบนามธรรมที่ว่าคุณไม่จำเป็นต้องรู้ ว่าเมธอดหรือในคลาสนั้นทำงานยังไง แต่มันสามารถทำงานได้สำเร็จและให้ผลลัพธ์แก่คุณได้ • Abstraction: คือการอธิบายการทำงานของคลาสและเมธอดในแบบนามธรรม เพื่อนำไปใช้ สำหรับออบเจ็คที่มีการทำงานแตกต่างกัน เช่น เราบอกว่าสัตว์สามารถเคลื่อนที่ การเคลื่อนที่คือการบอกอย่าง
ค เป็นนามธรรม เพราะวา่สัตว์แต่ละตัวมีวิธีการเคลื่อนที่ที่แตกต่างกัน เช่น สุนัขจะเดิน นกจะบิน ส่วนเต่าจะ คลาน เป็นต้น ข้างบนนั้นเป็นคุณสมบัติของการเขียนโปรแกรมแบบออบเจ็ค ที่มีความสำคัญและมันใช้กับการเขียน โปรแกรมในขั้นสูง อย่างไรก็ตามในบทนี้ คุณจะได้เรียนรู้เกี่ยวกับมันทั้งหมด คลาสและออบเจ็ค ส่วนประกอบของการเขียนโปรแกรมเชิงวัตถุที่สำคัญคือ คลาสและออบเจ็ค ในตอนแรกเราต้องสร้าง หรือประกาศคลาสขึ้นมา ซึ่งประกอบไปด้วยตัวแปร และเมธอดในการทำงาน หลังจากนั้นเราจะนำไปสร้าง ออบเจ็ค การสร้างคลาสก็เหมือนการออกแบบรูปแบบของวัตุอย่างหนึ่งที่เราจะสร้างขึ้นมา เช่น คุณจะสร้างรถ ขึ้นมาเราก็ต้องเขียนแบบ เราเรียกสิ่งนี้ว่าคลาส และเรานำไปสร้างรถ ซึ่งก็คือออบเจ็ค ในตัวอย่างเป็นรูปที่แสดงให้เห็นถึงรายละเอียดของรถที่นำมาสร้างเป็นคลาส จะเห็นได้ว่าจะมี attribute เมธอดเพื่ออธิบายเกี่ยวกับรถ ซึ่งรถก็จะมีคุณสมบัติของมัน เช่น จำนวนเชื้อเพลิง ความเร็วสูงสุด และอื่น และส่วนของการทำงาน จะเป็นการเติมน้ำมัน การเพิ่มและลดความเร็ว การขับเคลื่อนรถออกไป และ สตาร์ทหรือหยุดเครื่องยนต์ เป็นต้น ซึ่งสิ่งเหล่านี้จะถูกกำหนดไว้ในคลาส ที่มา : http://marcuscode.com/lang/java/object-oriented-programming 4. ความสอดคล้องกับพระบรมราโชบายด้านการศึกษาของในหลวงรัชกาลที่ ๑๐ 4.๑ มีทัศนคติที่ถูกต้องต่อบ้านเมือง 4.๒ มีพื้นฐานชีวิตที่มั่นคงเข้มแข็ง – มีคุณธรรม ๑. รู้จักแยกแยะสิ่งที่ผิด - ชอบ /ชั่ว – ดี ๒. ปฏิบัติแต่สิ่งที่ชอบ สิ่งที่ดีงาม ๓. ปฏิเสธสิ่งที่ผิด สิ่งที่ชั่ว ๔. ช่วยกันสร้างคนดีให้แก่บ้านเมือง 4.๓ มีงานทำ – มีอาชีพ 4.๔ เป็นพลเมืองที่ดี
๒ เงื่อนไข ๓ หลักการ ๔ มิติ หลัก ๓ ศาสตร์ ๔ พระบมราโชบายด้านการศึกษาของในหลวงรัชกาลที่ ๑๐ ๑. มีทัศนคติที่ถูกต้องต่อบ้านเมือง ๓. มีงานทำ มีอาชีพ ๒. มีพื้นฐานชีวิตที่มั่นคงเข้มแข็ง มีคุณธรรม ๔. เป็นพลเมืองที่ดี การบูรณาการหลักปรัชญาของเศรษฐกิจพอเพียงในการจัดการเรียนรู้ แผนการจัดการเรียนรู้ หน่วยที่ 1 เรื่อง ความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ การถอดบทเรียน เรื่อง ความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุวิทยาลัยอาชีวศึกษเพชรบุรี พอประมาณ - กำหนดหน้าที่สมาชิกในกลุ่มได้ อย่างเหมาะสม - ใช้วัสดุ อุปกรณ์ สื่อได้เหมาะสม กับกิจกรรมการเรียนรู้ - พอประมาณในการแบ่งเวลาทำ กิจกรรมให้เสร็จทันเวลา ความรู้ - แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ - หลักปรัชญาของเศรษกิจพอเพียง คุณธรรม - มีวินัย - ใฝ่เรียนรู้ - มุ่งมั่นในการทำงาน มีเหตุผล - นำความรู้จากห้องเรียนไปใช้ใน ชีวิตประจำวันได้อย่างมีเหตุผล - เพื่อแสดงความรู้เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุได้ถูกต้องตาม บริบท มีภูมิคุ้มกันที่ดี - มีการวางแผนการทำงานอย่าง เป็นขั้นตอน - วางแผนการเตรียมวัสดุ อุปกรณ์ สื่อในการเรียนรู้ - ศึกษาข้อมูลเพิ่มเติมจากแหล่ง เรียนรู้ที่หลากหลาย วัตถุ/เศรษฐกิจ - ใช้ความรู้เบื้องต้นใน การเขียนโปรแกรม - มีทักษะในการทำงาน เป็นทีม - เห็นความสำคัญของ การเขียนโปรแกรม สังคม - มีความรู้ในการแบ่ง หน้าที่ในการทำงานกลุ่ม - มีทักษะในการทำงาน กลุ่มจนสำเร็จ - เห็นคุณค่าในการทำงาน ร่วมกับผู้อื่น สิ่งแวดล้อม - มีความรู้ในการดูแล รักษาความสะอาดใน ห้องเรียน - มีจิตสำนึกในการรักษา ความสะอาดใน ห้องเรียน วัฒนธรรม - ตระหนักและเห็นคุณค่า ของความรู้เบื้องต้นใน การเขียนโปรแกรม ศาสตร์พระราชา หลักการทรงงาน ข้อที่ 4 ทำตามลำดับขั้น ข้อที่ 19 เศรษฐกิจพอเพียง ศาสตร์สากล าณ เนื้อหาสาระ องค์ความรู้เรื่อง ความรู้เบื้องต้นเกี่ยวกับ โปรแกรมเชิงวัตถุ ศาสตร์ชาวบ้าน นางเบญจมาศ โพธิกำพล ปราชญ์ชาวบ้าน เรื่อง การเขียนโปรแกรม คอมพิวเตอร์
2 9. บันทึกผลหลังการจัดการเรียนรู้ 9.1 ข้อสรุปหลังการจัดการเรียนรู้ ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... 9.2 ปัญหาที่พบ ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... 9.3 แนวทางแก้ปัญหา ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... .......................................................................................................................................................
3 ใบความรู้ที่1 หน่วยที่ 1 หลักสูตรประกาศนียบัตรวิชาชีพ สอนครั้งที่ 1 รหัสวิชา 20204-2108 ชื่อวิชาการเขียนโปรแกรมเชิงวัตถุเบื้องต้น ท-ป-น :2-2-3 ชื่อหน่วยการเรียนรู้ ความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ ทฤษฎี 2 ชม. ปฏิบัติ 2 ชม. 1. จุดประสงค์การเรียนรู้ 1. อธิบายความเป็นมาของแนวคิดแบบ OOP ได้ 2. อธิบายแนวคิดแบบ OOP ได้ 3. อธิบายความรู้เกี่ยวกับ OOP ได้ 4. อธิบายการเขียนโปรแกรมและการออกแบบระบบงานได้ 5. บอกประโยชน์ของการโปรแกรมแบบ OOP ได้ 6. คุณลักษณะอันพึงประสงค์ 1. มีวินัย 2. ใฝ่เรียนรู้ 3. มุ่งมั่นในการทำงาน 2. สมรรถนะ แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ 3. เนื้อหาสาระ 1. แนะนำการเขียนโปรแกรมเชิงวัตถุ OOP (Object Oriented Programming) เป็นวิธีการเขียนโปรแกรม โดยอาศัยแนวคิดของวัตถุชิ้นหนึ่ง มีความสามารถในการปกป้องข้อมูล และการสืบทอดคุณสมบัติ ซึ่งทำให้แนวโน้มของ OOP ได้รับการยอมรับ และพัฒนามาใช้ในระบบต่าง ๆ มากมาย เช่น ระบบปฏิบัติการ วินโดวส์ เป็นต้น ในที่นี้จะกล่าวถึงความเป็นมา และความหมายของแนวคิดการเขียนโปรแกรมเชิงวัตถุ ข้อควรรู้เกี่ยวกับ หลักการเขียนโปรแกรมเชิงวัตถุ ตลอดจนความสำคัญของการเขียนและออกแบบระบบงานก่อนเขียนโปรแกรม รวมถึงประโยชน์ของการเขียนโปรแกรมเชิงวัตถุซึ่งจะทำให้ผู้เขียนได้เข้าใจถึงหลักการเบื้องต้นของแนวความคิด เชิงวัตถุนี้ได้
4 2. ความเป็นมาของแนวคิดแบบ OOP แนวความคิดดั้งเดิมของการเขียนโปรแกรม ก็คือ การแก้ปัญหาโดยใช้คอมพิวเตอร์เป็นเครื่องมือ คล้าย กับการใช้เครื่องคิดเลขในการแก้ปัญหาทางคณิตศาสตร์ แนวความคิดแบบใหม่ที่ใช้ในการเขียนโปรแกรม ก็คือ การเน้นถึงปัญหาและองค์ประกอบของปัญหา (เพื่อแก้ปัญหา) การเน้นที่ปัญหาและองค์ประกอบของปัญหา (Problem Space) จะคล้ายกับแก้ไขปัญหาและ ชีวิตความเป็นอยู่ของมนุษย์ที่จะต้องมี คน สัตว์ สิ่งของ เพื่อแก้ปัญหา (มีหน้าที่แก้ปัญหา) มากกว่าจะมองที่ วิธีการแก้ปัญหานั้น ๆ หรือขั้นตอนในการแก้ปัญหา (Solution Space) ซึ่งเป็นวิธีการเขียนโปรแกรมแบบเก่า นั่นเอง อาลัน เคย์ (Alan Kay) ได้เสนอกฎ 5 ข้อ ที่เป็นแนวทางของภาษาคอมพิวเตอร์เชิงวัตถุ หรือที่เรียกว่า Object-Oriented Programming (OOP) ไว้ดังนี้ • ทุก ๆ สิ่งเป็นวัตถุ (Everything is an Object) • โปรแกรม ก็คือ กลุ่มของวัตถุที่ส่งข่าวสารบอกกันและกันให้ทำงาน (A Program is a Bunch of Object Telling Each Other What to do by Sending Messages) • ในวัตถุแต่ละวัตถุจะต้องมีหน่วยความจำและประกอบไปด้วยวัตถุอื่น ๆ (Each Object has Its Own Memory Made Up of Other Objects) • วัตถุทุกชนิดจะต้องจัดอยู่ในประเภทใดประเภทหนึ่ง (Every Object has a Type) • วัตถุที่จัดอยู่ในประเภทเดียวกันย่อมได้รับข่าวสารเสมือนกัน (All Object of a Particular Type Can Receive the Same Messages) 3. แนวคิดแบบ OOP OOP ก็คือ “ธรรมชาติของวัตถุ” หมายความว่า OOP จะมองสิ่งแต่ละสิ่งถือเป็น “วัตถุชิ้นหนึ่ง” (Object) มันจะมีสีแดงหรือสีเขียว ยาวหรือสั้น มันก็คือวัตถุชิ้นหนึ่งเหมือนกัน และเราสามารถกำหนดประเภท หรือคลาสให้กับวัตถุเหล่านั้นได้ นอกจากนี้ เมื่อ OOP มองทุกสิ่งถือเป็นวัตถุชิ้นหนึ่งแล้ว ยังสามารถคิดต่อไปอีกว่า “วัตถุแต่ละอย่างนั้น ต่างก็มีลักษณะและวิธีการใช้งานเป็นของตัวเอง” หมายความว่า วัตถุแต่ละชนิดหรือแต่ละชิ้นต่างก็มีรูปร่าง ลักษณะ และการใช้งาน (การกระทำ) ที่แตกต่างกันออกไป เราจะเรียกคุณลักษณะของวัตถุว่า แอตทริบิวต์ (Attribute) และจะเรียกวิธีการใช้งานวัตถุว่า เมธทอด (Method) ตัวอย่างเช่น “ดินสอเป็นวัตถุที่มีลักษณะ เรียวยาว ภายในเป็นไส้ถ่านใช้สำหรับเขียน การใช้ดินสอทำได้โดยใช้มือจับและเขียนลงบนวัสดุรองรับ” จากข้อความข้างต้น สามารถจับใจความได้ว่า คุณลักษณะของวัตถุ (Attribute) ก็คือ “ยาวเรียว ภายใน เป็นไส้ถ่าน” ส่วนการใช้งาน (Method) ก็คือ “ใช้มือจับและเขียนลงบนวัสดุรองรับ”
5 ที่มา: http://www.bspc.ac.th/files/2106091313041749_23040419195140.pdf จะเห็นได้ว่าแนวคิดของ OOP นั้นจะมีลักษณะที่คล้ายกับธรรมชาติของสิ่งหนึ่งซึ่งสามารถแบ่งแยกสิ่ง ต่างๆ ออกเป็นแต่ละประเภทได้ ถ้านำเอาแนวคิดของ OOP มาใช้ในการเขียนโปรแกรมและการจัดการข้อมูล จะพบว่าโปรแกรมหรือฟังก์ชันจะมีความเป็นอิสระแก่กันอย่างเห็นได้ชัด ก็คือ โปรแกรมหรือฟังก์ชันแต่ละตัว ถึงแม้จะมาจากที่เดียวกันแต่สามารถทำงานในคนละหน้าที่ เก็บข้อมูลคนละค่าได้ โดยจะไม่มายุ่งเกี่ยวกันแต่ อย่างใด 4. ความรู้เกี่ยวกับ OOP เนื่องจากหลักการเขียนโปรแกรมเชิงวัตถุเป็นแนวคิดแบบใหม่ ดังนั้น การทำงานหลาย ๆ ส่วนของการ เขียนโปรแกรมแบบนี้อาจจะยังไม่เป็นที่คุ้นเคยมากนัก จึงจำเป็นที่ผู้ศึกษาต้องทำความเข้าใจการทำงานของ แนวคิดนี้ได้ดียิ่งขึ้น ข้อควรรู้เบื้องต้นเกี่ยวกับ OOP มีดังนี้ 4.1 การเชื่อมต่อ (Interface) อินเตอร์เฟส (Interface) หมายถึง การเชื่อมต่อ ถ้าเป็นการเชื่อมต่อระหว่างผู้ใช้กับคอมพิวเตอร์ จะเรียกการเชื่อมต่อนั้นว่า ยูสเซอร์อินเตอร์เฟส (User Interface) แต่ในการเขียนโปรแกรมเชิงวัตถุ การ เชื่อมต่อยังรวมไปถึงวัตถุ (Object) เพราะในวัตถุจะต้องมีอินเตอร์เฟส อันเป็นส่วนที่วัตถุนั้น ๆ จะให้บริการ หรือเป็นส่วนที่บอกว่าวัตถุนั้น ๆ สามารถทำอะไรได้บ้าง ซึ่งบางครั้งเรียกว่า เมธทอด (Method) ข้อดีของการมีอินเตอร์เฟส ก็คือ การเปลี่ยนแปลงที่เกิดขึ้นภายในวัตถุจะไม่กระทบต่ออินเตอร์เฟส ดังนั้น ภายในวัตถุผู้เขียนคำสั่งสามารถดัดแปลง แก้ไข หรือเพิ่มเติมได้ตลอดเวลา นอกจากนี้ ภายในวัตถุยัง สามารถเก็บค่าต่าง ๆได้อีกด้วย
6 4.2 การซ่อนรายละเอียด (Encapsulation) ส่วนประกอบของวัตถุตามแนวความคิดการเขียนโปรแกรมเชิงวัตถุ จะต้องประกอบไปด้วยสองส่วน เป็นอย่างน้อย คือ ส่วนของคุณสมบัติใช้เก็บข้อมูลรายละเอียด สถานะ โอยใช้ตัวแปรเก็บค่าต่าง ๆ ไว้ และส่วน ของเมธทอดทีเป็นตัวเชื่อมการทำงานของวัตถุนั้น ๆ โดยผู้ใช้จะไม่สามารถติดต่อใช้งานกับตัวแปรที่อยู่ข้างในได้ ในภาษา C++ จะใช้คำ Public, Private และ Protected เข้ามาช่วยกำหนดขอบเขตการใช้ 4.3 การนำวัตถุมาใช้ใหม่ (Reuse the Object) จุดประสงค์ใหญ่ของการเขียนโปรแกรมเชิงวัตถุ ก็คือ การนำส่วนต่าง ๆ ของวัตถุที่สร้างขึ้นกลับมา ใช้ใหม่หรือที่เรียกในภาษาอังกฤษว่า “Reuse” เมื่อผู้เขียนโปรแกรมสร้างวัตถุมีจำนวนมากพอก็สามารถนำ วัตถุที่สร้างขึ้นมาประกอบเป็นวัตถุใหม่ หรือที่เรียกว่าคอมโพสิตชั่น “Composition” นอกจากวิธีการคอมโพสิตแล้ว ผู้ใช้ยังสามารถ Reuse ส่วนของวัตถุโดยการใช้การสืบทอด คุณสมบัติ (Inheritance) จากคลาส ลักษณะเช่นนี้ คือ เป็นการนำส่วนของวัตถุทั้งหมดมาใช้ ซึ่งปกติแล้ววัตถุที่ นำมาใช้ในลักษณะนี้จะมีขนาดใหญ่ ถ้าเป็นการคอมโพสิตจะประกอบขึ้นจากส่วนของวัตถุที่มีขนาดเล็กกว่า อย่างไรก็ตาม ขนาดของวัตถุมิได้เป็นตัวกำหนดที่แน่นอนตายตัวเสมอไป 4.4 การพ้องรูป (Polymorphism) รากฐานของการพ้องรูป (Polymorphism) ก็คือ การถ่ายทอดคุณสมบัติ เพราะถ้าไม่มีการ ถ่ายทอดคุณสมบัติก็จะไม่เกิดสภาวะการพ้องรูป การถ่ายทอดคุณสมบัติเป็นเครื่องมือยืนยันได้ว่าคลาสลูกที่เกิด จากคลาสแม่เดียวกันย่อมมีคุณสมบัติเหมือนกัน 5. การเขียนโปรแกรมและการออกแบบระบบงาน ก่อนที่ผู้เขียนโปรแกรมจะสามารถเขียนคำสั่งได้ จะต้องมีการออกแบบระบบงานก่อนแล้วจึงเขียน โปรแกรมเป็นภาษาต่าง ๆ ตามชนิดของงานและความเหมาะสม การเขียนโปรแกรมเชิงวัตถุก็เช่นกัน จะต้องมี การออกแบบระบบงานก่อน หลักสำคัญสำหรับการออกแบบเชิงวัตถุ ก็คือ การหาวัตถุให้พบ เมื่อพบแล้ว จะต้องจำแนกวัตถุออกเป็นส่วนที่เปลี่ยนแปลงและส่วนที่อยู่คงที่ วัตถุที่ไม่เปลี่ยนแปลงสามารถนำไปใช้ได้เมื่อมี การปรับปรุงระบบงานใหม่ นั่นคือเหตุผลที่ทำให้ต้องมีการออกแบบระบบงาน วัตถุที่มีการเปลี่ยนแปลงบ่อยก็ ได้แก่ วัตถุที่ทำหน้าที่เป็นอินเตอร์เฟส เป็นต้น 6. ประโยชน์ของการโปรแกรมแบบ OOP เทคโนโลยีของออบเจ็กต์โอเรียนเท็ดได้นำประโยชนาของการพัฒนาซอฟต์แวร์มาให้ ดังนี้ • ความสามารถในการเรียกใช้ได้หลายครั้ง ออบเจ็กต์ได้ถูกออกแบบตามหลักการที่ว่าสามารถ เรียกใช้งานได้หลาย ๆ ครั้ง ในหลักการนี้ทำให้ Application ของ OOP ตัวแรกอาจจะทำได้ยาก แต่ว่า โปรแกรมแอปพลิเคชันที่เขียนภายหลังจะสร้างง่ายเพราะสามารถเรียกใช้ออบเจ็กต์ที่ถูกสร้างไว้ตั้งแต่โครงงาน แรกได้
7 • ความเชื่อถือได้ โปรแกรมแอปพลิเคชันของ OOP จะมีความเชื่อถือได้สูงเพราะจะรวมเอา ส่วนย่อยที่ทดสอบจนได้มาตรฐานแล้วมารวมเข้าไว้ด้วยกัน รหัส (Code) ที่เขียนขึ้นมาใหม่ในแต่ละแอพลิเคชั่น จะมีไม่มากนัก เนื่องจากรหัสส่วนใหญ่จะถูกดึงมาจากไลบรารีที่มีความเชื่อถือได้สูงอยู่แล้ว และในการโปรแกรม ภาษา C++ ยังมีคุณประโยชน์อื่นอีก • ความต่อเนื่องกัน การพัฒนาซอฟต์แวร์แบบ OOP ใน C++ จะเปลี่ยนไปตามฝีมือและจำนวน นักเขียนโปรแกรมภาษา C นักโปรแกรมภาษา C ที่ชำนาญสามารถเรียนรู้หลักการของ OOP ได้ภายในเวลาไม่ นาน และสามารถเข้าใจเนื้อหาได้ไม่ยาก อีกทั้งสามารถ แปลงโปรแกรมแอพพลิเคชั่นของ C เป็น C++ ได้
8 4.แบบฝึกหัด/แบบทดสอบ จงเลือกคำตอบที่ถูกต้อง 1. ข้อใดคือความหมายของโปรแกรมเชิงวัตถุ ก. การแก้ปัญหาโดยใช้คอมพิวเตอร์เป็นเครื่องมือ ข. วิธีการเขียนโปรแกรมของนักเขียนโปรแกรมรุ่นใหม่ ที่จัดแบ่งการเขียนคําสั่งกันออกเป็นชุดๆ ค. การเน้นถึงปัญหาและองค์ประกอบของปัญหาเพื่อแก้ปัญหา ง. การเขียนโปรแกรมที่แบ่งโครงสร้างออกเป็นโปรแกรมย่อย และฟังก์ชัน 2. ใครเป็นผู้ "บุกเบิกแนวความคิดในการเขียนโปรแกรมเชิงวัตถุ" ก. อาลัน เคย์ ข. บิล เกตส์ ค. เจฟฟ์ เบโซส์ ง. คริส เฮมสวอร์ธ 3. ข้อใดไม่ได้อยู่ในกฎการเขียนโปรแกรมเชิงวัตถุ ก. วัตถุทุกชนิดจะต้องจัดอยู่ในประเภทใดประเภทหนึ่ง ข. วัตถุที่จัดอยู่ในประเภทเดียวกันย่อมได้รับข่าวสารเหมือนกัน ค. วัตถุ เมื่อใช้แล้วจะหมดไป ง. ทุกๆ สิ่งเป็นวัตถุ 4. OOP ย่อมาจากอะไร ก. Objective oriented Programming ข. Observe oriented Programming ค. Object oriental Princess ง. Object oriented Programming 5. ข้อใดคือ "แอตทริบิวต์ (Attribute)" ก. ยาวเรียว ภายในเป็นไส้ถ่าน ข. ใช้มือจับและเขียนลงบนวัตถุที่รองรับ ค. ใช้ในการขับขี่ ง. ถูกทุกข้อ 6. การพ้องรูป (Polymorphism) คืออะไร ก. การถ่ายทอดคุณสมบัติ ข. การเชื่อมต่อระหว่างผู้ใช้กับคอมพิวเตอร์ ค. ใช้เก็บข้อมูลรายละเอียด ง. การนําส่วนต่างๆ ของวัตถุที่สร้างขึ้นมาใช้ใหม่ 7. ขั้นตอนด้านล่างเป็นแนวคิดการเขียนโปรแกรมแบบใด 1. มีการแสดงผลชนิดของน้ําในตู้ที่สามารถเลือกซื้อได้ 2. ตรวจสอบจํานวนน้ํากระป๋องที่มีอยู่ในตู้
9 3. รับผลการเลือกชนิดน้ํา 4. ส่งน้ําที่เลือกออกมาจากช่อง 5. จัดเก็บเงินเข้าระบบ 6. หากมีเงินทอน ให้ทอนเงินที่เหลือ ที่ช่องรับเงินทอน" ก. เชิงวัตถุ ข. เชิงลำดับ ค. เชิงกระบวนการ ง. เชิงวิเคราะห์ 8. ข้อใดไม่จัดอยู่ใน "คุณสมบัติของโปรแกรมเชิงวัตถุ" ก. ความสามารถในการเก็บซ่อน (Encapsulation) ข. ความสามารถในการสืบทอด (Inheritance) ค. ความสามารถในการจัดการโครงสร้างข้อมูลแบบเชิงนามธรรม (Abstract) ง. ไม่มีข้อใดถูก 9. ข้อใดคือ คุณสมบัติของ เมธอด (Method) ก. ยาวเรียว ภายในเป็นไส้ถ่าน ข. ใช้มือจับและเขียนลงบนวัตถุที่รองรับ ค. คันใหญ่ , มี 4ล้อ , มี 4 ประตู ง. เป็นแผ่นสีเหลี่ยมผืนผ้าขนาดใหญ่ 5. เอกสารอ้างอิง (ขึ้นหน้าใหม่) • https://www.projecttoa.net/สารบญ/บทท-1 • https://www.ict.up.ac.th/sudarata/web/221202/ Chapter/01-บทที่%201.pdf • https://arit.rmutsv.ac.th/th/blogs/ 80-การเขียนโปรแกรมเชิงวัตถุ-oop-objectoriented-programming-537 6. ภาคผนวก (เฉลยแบบฝึกหัด เฉลยแบบทดสอบ ฯ) 1 2 3 4 5 6 7 8 9 ข ก ค ง ก ก ค ง ข
10 ใบงานที่1 หน่วยที่ 1 หลักสูตรประกาศนียบัตรวิชาชีพ สอนครั้งที่ 1 รหัสวิชา 20204-2108 ชื่อวิชาการเขียนโปรแกรมเชิงวัตถุเบื้องต้น เวลา 2 ชม. ชื่องาน ความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ 1. จุดประสงค์เชิงพฤติกรรม 1. อธิบายความเป็นมาของแนวคิดแบบ OOP ได้ 2. อธิบายแนวคิดแบบ OOP ได้ 3. อธิบายความรู้เกี่ยวกับ OOP ได้ 4. อธิบายการเขียนโปรแกรมและการออกแบบระบบงานได้ 5. บอกประโยชน์ของการโปรแกรมแบบ OOP ได้ 6. คุณลักษณะอันพึงประสงค์ 1. มีวินัย 2. ใฝ่เรียนรู้ 3. มุ่งมั่นในการทำงาน 2. สมรรถนะ แสดงความรู้เบื้องต้นเกี่ยวกับโปรแกรมเชิงวัตถุ 3. เครื่องมือ วัสดุและอุปกรณ์ 3.1 โปรเจคเตอร์ จำนวน 1 เครื่อง 3.2 คอมพิวเตอร์ จำนวน 1 เครื่อง/กลุ่ม 4. คำแนะนำ ควรอ้างอิงแหล่งสืบค้นข้อมูล 5. ข้อควรระวัง การผิด พ.ร.บ.คอมพิวเตอร์ 6. ลำดับขั้น(การทดลอง/การปฏิบัติงาน) 6.1 แบ่งผู้เรียนเป็น 5 กลุ่ม เลือกหัวหน้ากลุ่ม 6.2 ให้นักเรียนแต่ละกลุ่มศึกษาเนื้อหา ต่อไปนี้ 1. ความเป็นมาของแนวคิดแบบ OOP 2. แนวคิดแบบ OOP 3. ความรู้เกี่ยวกับ OOP 4. การเขียนโปรแกรมและการออกแบบระบบงาน 5. ประโยชน์ของการโปรแกรมแบบ OOP
11 6.3 แต่ละกลุ่มให้ร่วมกันจัดทำการนำเสนอด้วย Canva.com 6.5 แต่ละกลุ่มให้ร่วมกันเขียนคำถาม เพื่อวัดความรู้กลุ่มละ 2 คำถาม 6.6 แต่ละกลุ่มนำเสนอเนื้อหา หน้าชั้นเรียน และนำคำถามของกลุ่มไปให้กลุ่มอื่นหาคำตอบ โดยกำหนด ระยะเวลาที่จำกัด 7. คำถาม อธิบายความรู้ต่อไปนี้ 1. ความเป็นมาของแนวคิดแบบ OOP 2. แนวคิดแบบ OOP 3. ความรู้เกี่ยวกับ OOP 4. การเขียนโปรแกรมและการออกแบบระบบงาน 5. ประโยชน์ของการโปรแกรมแบบ OOP 8. สรุปและวิจารณ์ผล สรุปความรู้ตามหัวข้อต่อไปนี้ 1. ความเป็นมาของแนวคิดแบบ OOP 2. แนวคิดแบบ OOP 3. ความรู้เกี่ยวกับ OOP 4. การเขียนโปรแกรมและการออกแบบระบบงาน 5. ประโยชน์ของการโปรแกรมแบบ OOP 9. การประเมินผล การวัดและประเมินผล จุดประสงค์ วิธีการวัดผล เครื่องมือวัด เกณฑ์การ ประเมินผล ความรู้ความเข้าใจ (K) 1. สังเกตจากซักถาม 2. นักเรียนสามารถอธิบายความรู้ตาม เนื้อหาได้ (K) 3. ตรวจผลงานจากการทำกิจกรรม 1. แบบทดสอบ 60% ขึ้นไป ถือว่าผ่าน เกณฑ์การประเมิน ทักษะปฏิบัติ(P) 1. นักเรียนสามรถจัดทำโปรแกรม นำเสนอความรู้ (P) 1. แบบประเมินผลการ นำเสนอข้อมูล 60% ขึ้นไป ถือว่าผ่าน เกณฑ์การประเมิน คุณลักษณะนิสัย (A) 1. สังเกตจากการเรียนมีความ รับผิดชอบต่องานที่สั่งและส่งงานได้ ทันตามที่กำหนด 2. สังเกตจากการเรียนใฝ่เรียนรู้ 3. สังเกตจากการมุ่งมั่นในการทำงาน 1. แบบสังเกตพฤติกรรม 60% ขึ้นไป ถือว่าผ่าน เกณฑ์การประเมิน
12 10. เอกสารอ้างอิง /เอกสารค้นคว้าเพิ่มเติม • https://www.projecttoa.net/สารบญ/บทท-1 • https://www.ict.up.ac.th/sudarata/web/221202/ Chapter/01-บทที่%201.pdf • https://arit.rmutsv.ac.th/th/blogs/ 80-การเขียนโปรแกรมเชิงวัตถุ-oop-objectoriented-programming-537
13