การเขียนโปรแกรมเชิงวัตถุขั้นสูง

Advance Object Oriented Programming

เพื่อให้นักศึกษามีความรู้การพัฒนาโปรแกรม โดยใช้หลักการและแนวคิดเชิงวัตถุ พัฒนาโปรแกรมโดยอาศัยหลักพื้นฐานของการออกแบบเชิงวัตถุ ได้แก่ การกำหนดคลาสและชนิดข้อมูล การถ่ายทอดคุณลักษณะของคลาส การควบคุมการเข้าถึงข้อมูล กรรมวิธีโพลีมอร์ฟิซึ่ม โอเวอร์โหลดดิงส์ และโอเวอร์ไรดิงส์ การเขียนโปรแกรมเพื่อติดต่อกับฐานข้อมูล วิธีกำหนดข้อมูลในรูปแบบต่าง ๆ การใช้คำสั่งต่าง ๆ การสร้างส่วนปฏิสัมพันธ์กับผู้ใช้ และการใช้คำสั่งเกี่ยวกับการป้อนข้อมูลเข้า และการแสดงผลลัพธ์ข้อมูล รูปแบบการเขียนโปรแกรมเพื่อตอบสนองต่อเหตุการณ์โดยเน้นฝึกทักษะการเขียนโปรแกรมเชิงวัตถุ
เพื่อให้นักศึกษามีความรู้พื้นฐาน เป็นการเตรียมความพร้อมด้านปัญหาในการนำความรู้ ความเข้าใจ ในแนวคิดเกี่ยวกับเทคโนโลยีเชิงวัตถุ เพื่อเป็นพื้นฐานการเรียนในวิชาอื่น ๆ ที่เกี่ยวข้อง ทั้งนี้ ควรมีการเปลี่ยนแปลงตัวอย่างอ้างอิง ให้สอดคล้องกับแนวโน้มด้านเทคโนโลยีสารสนเทศที่ได้มีความก้าวหน้าไปตามยุคสมัย และสามารถนำความรู้เกี่ยวกับการเขียนโปรแกรมเชิงวัตถุไปใช้งานจริง
ศึกษาและฝึกปฏิบัติเกี่ยวกับเทคนิคการพัฒนาโปรแกรม โดยใช้หลักการและแนวคิดเชิงวัตถุ พัฒนาโปรแกรมโดยอาศัยหลักพื้นฐานของการออกแบบเชิงวัตถุ ได้แก่ การกำหนดคลาสและชนิดข้อมูล การถ่ายทอดคุณลักษณะของคลาส การควบคุมการเข้าถึงข้อมูล กรรมวิธีโพลีมอร์ฟิซึ่ม โอเวอร์โหลดดิงส์ และโอเวอร์ไรดิงส์ การเขียนโปรแกรมเพื่อติดต่อกับฐานข้อมูล วิธีกำหนดข้อมูลในรูปแบบต่างๆ การใช้คำสั่งต่าง ๆ การสร้างส่วนปฏิสัมพันธ์กับผู้ใช้ และการใช้คำสั่งเกี่ยวกับการป้อนข้อมูลเข้า และการแสดงผลลัพธ์ข้อมูล รูปแบบการเขียนโปรแกรมเพื่อตอบสนองต่อเหตุการณ์โดยเน้นฝึกทักษะการเขียนโปรแกรมเชิงวัตถุ
อาจารย์จัดเวลาให้คำปรึกษาเป็นรายบุคคล หรือรายกลุ่มตามความต้องการ 1 ชั่วโมง/สัปดาห์(เฉพาะรายที่ต้องการ)
    พัฒนาผู้เรียนให้มีความรับผิดชอบ มีวินัย มีจรรยาบรรณวิชาชีพ เคารพในสิทธิของข้อมูลสงวนบุคคล การไม่เปิดเผยข้อมูล การไม่ละเมิดลิขสิทธิ์ทางซอฟแวร์ และ ไม่ละเมิดลิขสิทธิ์ทางปัญญา มีคุณธรรม จริยธรรมตามคุณสมบัติหลักสูตร ดังนี้
1.1.1 ตระหนักในคุณค่าและคุณธรรม จริยธรรม เสียสละ และซื่อสัตย์สุจริต
1.1.2 มีวินัย ตรงต่อเวลา และความรับผิดชอบต่อตนเองและสังคม
1.1.3 มีภาวะความเป็นผู้นำและผู้ตาม สามารถทำงานเป็นทีม
1.1.4 เคารพสิทธิและรับฟังความคิดเห็นผู้อื่น รวมทั้งเคารพในคุณค่าและศักดิ์ศรีของความเป็นมนุษย์
1.1.5 เคารพกฎระเบียบและข้อบังคับต่างๆ ขององค์กรและสังคม
1.1.6 สามารถวิเคราะห์ผลกระทบจากการใช้ระบบสนับสนุนการตัดสินใจต่อบุคคลองค์กรและสังคม
1.1.7 มีจรรยาบรรณทางวิชาการและวิชาชีพ
1.2.1 อาจารย์ผู้สอนสอดแทรกคุณธรรม จริยธรรม และจรรยาบรรณวิชาชีพในการสอน
1.2.2 กำหนดให้มีวัฒนธรรมองค์กร เพื่อปลูกฝังให้นักศึกษามีระเบียบวินัย
1.2.3 เน้นการเข้าชั้นเรียนตรงเวลาและการแต่งกายให้เป็นตามระเบียบของมหาวิทยาลัย
1.2.4 มอบหมายงานกลุ่มที่เสริมสร้างการวางแผนการทางาน การทำงานเป็นทีม การรับฟังความคิดเห็นของผู้อื่น
1.3.1 การเข้าเรียนให้ตรงต่อเวลา ตลอดจนการแต่งกาย ที่ถูกต้องตามระเบียบของมหาวิทยาลัย
1.3.2 การส่งงานตามกำหนดระยะเวลาที่มอบหมาย และการเข้าร่วมกิจกรรม
1.3.3 การสังเกตพฤติกรรมในการทำงานเป็นกลุ่ม และความมีส่วนร่วมในการนำเสนอผลงาน  
2.1.1 มีความรู้ความเข้าใจเกี่ยวกับเทคนิคการพัฒนาโปรแกรมโดยใช้หลักการและแนวคิดเชิงวัตถุ
2.1.2 มีความรู้ความเข้าใจในการพัฒนาโปรแกรมโดยอาศัยหลักพื้นฐานของการออกแบบเชิงวัตถุ
2.1.3 มีทักษะการเขียนโปรแกรมเชิงวัตถุ
2.2.1 เน้นการเรียนการสอนที่เป็น active learning
2.2.2 จัดให้มีการเรียนรู้จากการฝึกปฏิบัติตามใบงาน
2.2.3 ฝึกทักษะการเขียนโปรแกรมเชิงวัตถุ
2.3.1 สอบกลางภาค สอบปลายภาค ด้วยข้อสอบที่เน้นการวัดหลักการและทฤษฏี
2.3.2 ประเมินจากผลงานการทำแบบฝึกหัดและฝึกปฏิบัติในห้องเรียน
2.3.3 ประเมินจากการนำเสนอผลการค้นคว้า
2.3.4 ความรับผิดชอบในการส่งงานที่ได้รับมอบหมาย  
3.1.1 คิดและจำอย่างมีวิจารณญาณและอย่างเป็นระบบ
3.1.2 สามารถรวบรวม ศึกษา วิเคราะห์ และสรุปประเด็นปัญหาและความต้องการ
3.1.3 สามารถประยุกต์ความรู้และทักษะกับการแก้ไขปัญหาได้อย่างเหมาะสม
3.2.1 มอบหมายให้นักศึกษาค้นคว้าทำรายงานตามหัวข้อที่กำหนดให้และนำเสนอผลการศึกษาค้นคว้า
3.2.2 จัดกิจกรรมที่ส่งเสริมการคิดวิเคราะห์และทักษะการแก้ไขปัญหาอย่างเป็นระบบ จากกรณีศึกษา
3.2.3 สาธิตตัวอย่างและกรณีศึกษา
3.3.1 สอบกลางภาคและสอบปลายภาค
3.3.2 ประเมินจากงานที่มอบหมายทั้งงานกลุ่มและงานรายบุคคล
4.1.1 พัฒนาทักษะในการสร้างสัมพันธภาพระหว่างผู้เรียนด้วยกัน
4.1.2 พัฒนาความเป็นผู้นำและผู้ตามในการทำงานเป็นทีม
4.1.3 พัฒนาการเรียนรู้ด้วยตนเอง และมีความรับผิดชอบในงานที่มอบหมายให้ครบถ้วยตามกำหนดเวลา
4.2.1 จัดการเรียนการสอนที่เน้นการทำงานตามที่ได้รับมอบหมาย
4.2.2 สอดแทรกความรับผิดชอบที่ได้รับมอบหมาย
4.3.1 ประเมินความรับผิดชอบตามงานที่ได้รับมอบหมายทั้งงานกลุ่มและงานรายบุคคล
5.1.1 พัฒนาทักษะการคิดคำนวณเชิงตัวเลข
5.1.2 พัฒนาทักษะในการสื่อสารทั้งการพูด การฟัง การแปล การเขียน โดยการทำรายงานและนำเสนอในชั้นเรียน
5.1.3 พัฒนาทักษะในการวิเคราะห์ข้อมูลจากกรณีศึกษา
5.1.4 พัฒนาทักษะในการสืบค้นข้อมูลทางอินเตอร์เน็ต
5.1.5 พัฒนาทักษะในการนำเสนอรายงาน โดยใช้รูปแบบ เครื่องมือ และเทคโนโลยีที่เหมาะสม
5.2.1 มอบหมายงานให้ศึกษาค้นคว้าด้วยตนเอง จากแหล่งความรู้ต่างๆ
5.2.2 นำเสนอรายงานโดยใช้รูปแบบเทคโนโลยีที่เหมาะสม
5.3.1 ประเมินจากการมีส่วนร่วมในชั้นเรียน
5.3.2 ประเมินจากรายงาน และการนำเสนอรายงานด้วยสื่อเทคโนโลยี
กิจกรรมที่ ผลการเรียนรู้ * วิธีการประเมินผลนักศึกษา สัปดาห์ที่ประเมิน สัดส่วนของการประเมินผล
1 1-3 ทดสอบย่อยครั้งที่ 1 5 10%
2 1-6 สอบกลางภาค 8 25%
3 7-10 ทดสอบย่อยครั้งที่ 2 12 10%
4 7-12 สอบปลายภาค 16 25%
5 1-16 วิเคราะห์กรณีศึกษาค้นคว้า, การนำเสนอรายงาน, การทำงานกลุ่มและผลงาน, การส่งงานตามที่มอบหมาย ตลอดภาคการศึกษา 20%
6 1-16 การเข้าชั้นเรียน, การมีส่วนร่วม อภิปราย เสนอความคิดเห็นในชั้นเรียน, การแต่งกายและความประพฤติ ตลอดภาคการศึกษา 10%
ธีรวัฒน์ ประกอบผล. (2559). เขียนโปรแกรมเชิงวัตถุภาษา JAVA ฉบับสมบูรณ์. กรุงเทพฯ: สำนักพิมพ์ซิมพลิฟาย.
มหาวิทยาลัยสุโขทัยธรรมาธิราช. (2557). เอกสารการสอนชุดวิชาการเขียนโปรแกรมคอมพิวเตอร์ขั้นสูง หน่วยที่ 1-7. นนทบุรี: มหาวิทยาลัยสุโขทัยธรรมาธิราช.
อรพิน ประวัติบริสุทธิ์. (2560). คู่มือเขียนโปรแกรมด้วยภาษา JAVA ฉบับสมบูรณ์. กรุงเทพฯ: บริษัท โปรวิชั่น จากัด.
Scott W. Ambler. (2005). The Elements of UML 2.0 Style. New York: Cambridge University Press.
Allan Vermeulen, Scott W. Ambler, Greg Bumgardner, Eldon Metz, Trevor Misfeldt, Jim Shur, and Cao Tieou. (2000). The Elements of Java(TM) Style. New York: Cambridge University Press.
เว็บไซต์ ที่เกี่ยวกับหัวข้อในประมวลรายวิชา เช่น Thaicreate, W3Schools เป็นเว็บไซต์ที่รวมรวมความรู้ ตัวอย่างการเขียนโปรแกรม การเรียกใช้งานฟังก์ชั่นต่าง ๆ ของโปรแกรมมากมาย
1.1 การสังเกตจากพฤติกรรมของผู้เรียน
1.2 แบบประเมินผู้สอน และแบบประเมินรายวิชา
1.3 แลกเปลี่ยนความคิดเห็นในการจัดการเรียนการสอนระหว่างผู้สอนและผู้เรียน
2.1 การสังเกตการณ์สอน
2.2 ผลการเรียนของนักศึกษา
2.3 การทวนสอบผลประเมินการเรียนรู้
หลังจากผลการประเมินการสอนในข้อ 2 จึงมีการปรับปรุงการสอน โดยการจัดกิจกรรมในการระดมสมอง และหาข้อมูลเพิ่มเติมในการปรับปรุงการสอน ดังนี้
3.1 สัมมนาการจัดการเรียนการสอน
3.2 การวิจัยในและนอกชั้นเรียน
ในระหว่างกระบวนการสอนรายวิชา มีการทวนสอบผลสัมฤทธิ์ในรายหัวข้อ ตามที่คาดหวังจากการเรียนรู้ในวิชา ได้จากการสอบถามนักศึกษา หรือการสุ่มตรวจผลงานของนักศึกษา รวมถึงพิจารณาจากผลการทดสอบย่อย และการให้คะแนนพฤติกรรมของนักศึกษาในการทำงาน
จากผลการประเมิน และทวนสอบผลสัมฤทธิ์ประสิทธิผลรายวิชา ได้มีการวางแผนการปรับปรุงการสอนและรายละเอียดวิชา เพื่อให้เกิดคุณภาพมากขึ้น ดังนี้
5.1 ปรับปรุงรายวิชาทุก 3 ปี หรือตามข้อเสนอแนะและผลการทวนสอบมาตรฐานผลสัมฤทธิ์ตามข้อ 4
5.2 เปลี่ยนหรือสลับอาจารย์ผู้สอน เพื่อให้นักศึกษามีมุมมองในเรื่องการประยุกต์ความรู้นี้กับปัญหาที่มาจากงานวิจัยของอาจารย์หรืออุตสาหกรรมต่าง ๆ