====== 204211 Object-Oriented Programming ====== ===== ภาคเรียนที่ 1 ปีการศึกษา 2560 ===== === กระบวนวิชาที่ต้องผ่านก่อน : 204112 Structured Programming หรือ 204113 หลักการคอมพิวเตอร์ (Principles of Computing) === ==== ข่าวประกาศ ==== ให้นักศึกษาส่งงานโปรเจคที่นี่ [[https://drive.google.com/drive/folders/1_Lg5sKu9EVxNxQf2Jj9SHL4nv2KDbK4z?usp=sharing|อัพโหลดโปรเจค]] 1. ให้แต่ละกลุ่มสร้าง folder ตามชื่อกลุ่ม 2. ให้ส่งไฟล์ต่อไปนี้ 1)ไฟล์เอกสารรูปเล่ม 2)ไฟล์ทั้งหมดที่เกี่ยวข้องกับโปรแกรม (กำหนดให้ทุกกลุ่ม upload ส่งงานโปรเจคภายในวันจันทร์ที่ 20 พ.ย. 60 เวลา 11.00 น.) * หมายเหตุ ให้ทุกกลุ่ม print เอกสารรูปเล่มส่งในชั่วโมงเรียน วันจันทร์ที่ 20 พ.ย. 60 12.30 น. รูปแบบเอกสารโครงงาน ประกอบไปด้วย 1. Project Title : ระบุ ชื่อโครงงาน (Project Problem) 2. Member : รายชื่อสมาชิกในกลุ่ม โดยระบุรหัสนักศึกษา หน้าที่รับผิดชอบของแต่ละคน ระบุตอน ให้ชัดเจน 3. Problem and Problem Analysis : ระบุโจทย์และวิเคราะห์โจทย์ (Input , Output and Process) 4. Class Design : ระบุคลาสที่ได้ออกแบบทั้งหมดที่ใช้ในโครงงาน และ อธิบายฟังก์ชันต่าง ๆ ในแต่ละคลาส และความสัมพันธ์ระหว่างคลาส 5. Main Program : อธิบายการทำงานของ Main Program อย่างละเอียด 6. Capture Output : จับภาพหน้าจอการทำงาน การตรวจสอบ Error ของ Input และการแสดงผลลัพธ์ของโปรแกรม พร้อมคำอธิบายในแต่ละขั้นตอนอย่างละเอียด *ไม่ต้องใส่ source code ในเล่มเอกสาร ลำดับการ present 1)E5 2)ก่อนหน้านี้ 3)Pompom Strike Back 4)ยากอ่ะ คิดไม่ออก 5)Logistic 6)Pinkpanther The Project 7)ส้มจี๊ด 8)แองจี้เทเพื่อนไปกินบิงซู 9)เตี้ยสตอรี่ 10)คิดไม่ออก 11)devdeep 12)Guess 13)Latte ==== เวลาเรียนและห้องเรียน ==== บรรยาย : วันพฤหัสบดี 12:30 - 14:30น. ปฏิบัติการ : วันจันทร์ 12:30 - 14:30น. * __ตอน 1__ อ.เบญจมาศ ปัญญางาม บรรยายห้อง CSB207, ปฏิบัติการห้อง CSB303 * __ตอน 2__ อ.ดร.เมทินี เขียวกันยะ บรรยายห้อง CSB201, ปฏิบัติการห้อง CSB308 ==== เนื้อหากระบวนวิชา ==== * Object-oriented program development * Classes and objects * Methods * Storage management for objects * Relationship among classes * Inheritance and reuse * Polymorphism and generic classes * Composition and aggregation * Association * Implementation of class relationships ==== สัดส่วนการให้คะแนนทั้งหมด ==== * คะแนนสอบกลางภาค 35% วันพุธที่ 4 ต.ค. 2560 เวลา 8:00-11:00 น (ตามประกาศสำนักทะเบียน) * คะแนนสอบปลายภาค 40% วันพฤหัสบดีที่ 30 พ.ย. 2560 เวลา 12:00-15:00 น. (ตาม Regular Exam) * คะแนนปฏิบัติการ 10% * คะแนน Project problem 15% ==== IDE ==== Code::Blocks version 13.12 [[http://www.codeblocks.org/downloads/26|Download]] ใช้ไฟล์ชื่อ codeblocks-13.12mingw-setup.exe สำหรับ Windows ==== การส่งงานปฏิบัติการ ==== - นักศึกษาที่คัดลอกงานกันส่งจะได้ศูนย์คะแนน ทั้งผู้คัดลอกและผู้ให้ลอก - นักศึกษาต้องส่งงานภายในวันที่กำหนดไว้เท่านั้น จะไม่มีการตรวจงานของนักศึกษาที่ส่งงานเลยกำหนด - นักศึกษาต้องส่งงานเป็น__ไฟล์ Source Code__ โดยต้องมี Comment ระบุ ชื่อ-สกุล รหัสนักศึกษา ตอนที่ ==== การทำโครงงาน (Project Problem) ==== ==== หนังสือประกอบการสอน ==== * สุธี พงศาสกุลชัย, "การโปรแกรมภาษา C++",กรุงเทพฯ : เคทีพี คอมพ์ แอนด์ คอนซัลท์, 2553. *รัฐสิทธิ์ สุขะหุต. (2551). แนวคิดและภาษาเชิงวัตถุ = Object-oriented concepts and languages. เชียงใหม่ : คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่. *Craig, I. (2007). Object-oriented programming languages: interpretation. New York, London: Springer. *Krishna, P Radha. (2007). Object oriented programming through Java. Hyderabad, India: Universities Press(India); Boca Raton: CRC Press. *Java Programming : From Problem Analysis to Program Design, D.S. Malik, 2012 *An Object-Oriented Approach to Programming Logic and Design, 3rd edition, Joyce Farrell, 2011 *An Introduction to Object-Oriented Programming with Java, C. Thomas Wu, 2009 *Java Programming : Program Design Including Data Structures, D.S. Malik, 2006 *JAVA OOP, รศ. ธีรวัฒน์ ประกอบผล , 2554