Oop lab
หน้านี้รวมเอกสารประกอบการเรียนการสอนวิชา การปฏิบัติการการเขียนโปรแกรมเชิงวัตถุ ภาคต้นปีการศึกษา 2560
เนื้อหา
Part 0: Intro (Java+Greenfoot)
Week1 (11 Aug)
- Greenfoot
- Download Mirror: ku mirror
- Tutorials
- Tutorial 1 - การเรียกเมท็อดการสร้างวัตถุ, สถานการณ์ wombat
- คลิปประกอบ https://www.youtube.com/watch?v=cCjoQe5E3bY
- Tutorial 2 - สถานการณ์ crab, เมท็อด act, การควบคุมด้วย keyboard
- คลิปประกอบ https://www.youtube.com/watch?v=xAMZKA0_5rg
- Tutorial 3 - สร้างคลาส, การหาวัตถุที่อยู่ในโลก, refactoring
- คลิปประกอบ https://www.youtube.com/watch?v=pWj5BGzykL0
- Tutorial 4 - เก็บ world, เล่นเสียง
- คลิปประกอบ https://www.youtube.com/watch?v=WsJVPiYPz4A
- Tutorial 5 - สร้างศัตรู, เลขสุ่ม
- คลิปประกอบ https://www.youtube.com/watch?v=NYQekLPycpc
- Tutorial 1 - การเรียกเมท็อดการสร้างวัตถุ, สถานการณ์ wombat
- เอกสารอื่น ๆ
Week2 (18 Aug)
- greenfoot project + presentation
Part 1: Python
Week 3
- Python: งูเหลือมตะลุยจักรวาล เอกสาร pdf
- เอกสารเขียนโดยใช้ Python 2 อย่างไรก็ตามเราจะใช้ Python 3 อ่านการปรับแก้ที่นี่
- การเลือก editor:
- บน Ubuntu: สามารถใช้ gedit ซึ่งเป็น editor ที่ติดมากับ ubuntu อย่างไรก็ตามเพื่อความสะดวกในการเขียนโปรแกรม Python ควรเปลี่ยน syntax highlight mode เป็น Python, ปรับ tab ให้มีขนาด 4 ช่อง และให้ gedit ใส่ spaces แทน tab ให้ด้วย
- โหลดไฟล์สำหรับทำแลบที่นี่
- สไลด์เนื้อหาไพธอน
Week 4
- การเขียนโปรแกรมเชิงวัตถุบน Python
- คลิปอื่น ๆ เพิ่มเติม:
- Task breakdown
Week 5
- Development techniques: version control -- git: คลิปแนะนำ Git
- Arcade Tutorial 1: เกมยานอวกาศ
Week 6
Part 2: Java
Week X
- ส่วนแรก แนะนำ Java + Unit testing
- ส่วนสอง เริ่มต้น OOP
- คลิปประกอบ:
- แนะนำการเขียนโปรแกรมเชิงวัตถุ 1
- แนะนำการเขียนโปรแกรมเชิงวัตถุ 2 - ตัวอย่างการเขียนคลาส Counter
- Lab:
- หัด TDD กับเกม Sokoban
- คลิปประกอบ:
Week X+1
- โครงสร้างของเกมบน libgdx
- Tutorial: เกม Pacman
Week X+2
- ตัวอย่างโค้ด Java เพื่อทบทวน oop
- คลิปเกี่ยวกับ subclass จากปีการศึกษาก่อน ในตัวอย่างเป็นการเขียนบน Slick2D แต่แนวคิดน่าจะใช้กันได้ครับ
- ตัวอย่าง inheritance 1: เพิ่ม Pacman เดินกลับข้างในเกม Pacman