วันเสาร์ที่ 10 ธันวาคม พ.ศ. 2554

Android JAVA Object-oriented Programming ( Thai ไทย )










Android JAVA Object-oriented Programming ( Thai ไทย )

การเรียนการสอน JAVA Programming แบบ Online ผ่าน Internet
ทำให้ เีราสามารถ ทำการเรียน การสอน ได้ทุกที่ ทุกเวลา เพียงเราสามารถเข้า internet ได้

Video บันทึกการสอน เรื่อง Object-oriented Programming มีอยู่  4 ตอน


Object Oriented Concept
วัตถุประสงค์
Ø แนะนำออปเจ็คและคลาส
Ø อธิบายคุณลักษณะและเมธอด
Ø อธิบายการเขียนโปรแกรมเชิงออปเจ็คโดยใช้ภาษาจาวา
Ø อธิบายการเขียนโปรแกรมโดยใช้คุณลักษณะเด่นของโปรแกรมเชิงออปเจ็ค
Ø แนะนำ Unified Modeling Language
Ø อธิบายขั้นตอนการพัฒนาโปรแกรม
หลักการเชิงออปเจ็ค
Ø ภาษาจาวาเป้นภาษาคอมพิวเตอร์ทีใช้หลักการเชองออปเจ็ค
Ø OOP (Object Oriented Programming)
Ø OOP เป็นขบวนการพัฒนาโปรแกรมโดยการจำลองปัญหาว่าประกอบไปด้วยออปเจ็คใดบ้าง
Ø นิยามที่สำคัญคือ
·        ออปเจ็ค (object)
·        คลาส (class)
ออปเจ็ค
Ø ออปเจ็ค คือสิ่งต่างๆที่อยู่ในชีวิตประจำวัน
·        ออปเจ็คที่เป็นรูปธรรมเช่น นักศึกษา ใบลงทะเบียน ปากกา และรถ
·        ออปเจ็คที่เป็นนามธรรมเช่น คะแนน รายชื่อวิชา บัญชีเงินฝาก และตารางเที่ยวบิน
Ø ออปเจ็คประกอบด้วย
·        คุณลักษณะ (attribute) หรือข้อมูล (data)
·        พฤติกรรม (behavior) หรือเมธอด (method)
ออปเจ็ค
Ø คุณลักษณะ
·        ข้อมูลของออปเจ็ค
·        แต่ละออปเจ็คอาจมีค่าของคุณลักษณะที่ต่างกัน


Ø เมธอด
·        สิ่งที่ออปเจ็คสามารถกระทำได้
·        คำสั่งในการทำงานของโปรแกรมเชิงออปเจ็ค
·        โปรแกรมจะจัดการกับข้อมูลโดยการgเรียกใช้เทธอด
ตัวอย่างของออปเจ็ค
Ø นักศึกษา
·        อาจจะมีคุณลักษณะเช่น รหัส ชื่อ และเกรดเฉลี่ย
·        อาจจะมีเมธอดเช่น ลงทะเบียน สอบ และเดิน
Ø รถยนต์
·        อาจจะมีคุณลักษณะเช่น ยี่ห้อ รุ่น และสี
·        อาจจะมีเมธอดเช่น เคลื่อนที่ หยุด  และเลี้ยว
Ø สุนัข
·         และสีอาจจะมีคุณลักษณะเช่น ชื่อ พันธ์ และสี
·        อาจจะมีเมธอดเช่น เห่า  คลาน และกระดิกหาง
คลาส
Ø เปรียบเสมือนพิมพ์เขียวของออปเจ็ค
Ø ออปเจ็คจะถูกสร้างมาจากคลาส บางครั้งเรียกว่าเป็น อาทิเช่น instance ของคลาส
Ø คลาสหนึ่งคลาสสามารถสร้างออปเจ็คได้หลายออปเจ็ค อาทิเช่น คลาสชื่อ Student อาจสร้างออปเจ็คชื่อ s1,s2 หรือ s3 ซึ่งเป็นออปเจ็คชนิด Student
คุณลักษณะของออปเจ็ค
Ø ข้อมูลที่เก็บอยู่ในออปเจ็ค
Ø แบ่งเป็นตัวแปร(variable) และค่าคงที่ (constant)
·        ตัวแปรคือคุณลักษณะที่สามารถเปลี่ยนค่าได้
·        ค่าคงที่คือคุณลักษณะที่ไม่สามารถเปลี่ยนค่าได้
คุณลักษณะของคลาส
Ø เป็นคุณลักษณะที่ใช้ร่วมกันของทุกออปเจ็ค
Ø ทุกออปเจ็คจะใช้คุณลักษณะร่วมกันทำให้ประหยัดพื้นที่ในหน่วยความจำ
Ø ตัวอย่างเช่น คุณลักษณะที่กำหนดให้เป็นค่าคงที่ชื่อ MIN_GPA
เมธอด
Ø วิธีการหรือการกระทำที่นิยามอยู่ในคลาสหรืออปเจ็คเพื่อใช้ในการจัดการกับคุณลักษณะของออปเจ็ค
Ø เปรียบเทียบได้กับ function , procedure หรือ subroutine ของโปรแกรมเชิงกระบวนการ
ตัวอย่างเช่น เมธอด deposit ( ) เพื่อเป็นเมธอดสำหรับฝากเงิน

การเขียนโปรแกรมเชิงออปเจ็คโดยใช้ภาษาจาวา             
Ø การประกาศคลาส
Ø การประกาศคุณลักษณะ
Ø การประกาศเมธอด
Ø การประกาศและสร้างออปเจ็ค
Ø การเรียกใช้สมาชิกของออปเจ็ค
การประกาศคลาส
Ø โปรแกรมภาษาจาวาแต่ละโปรแกรมจะประกอบด้วยคลาสอย่างน้อยหนึ่งคลาส โดยมีรูปแบบการประกาศดังนี้
[modifier] class Classname
{
                [class member]
}
·        Modifier คือคีย์เวิร์ด (keyword) ของภาษาจาวาที่ใช้ในการอธิบายระดับการเข้าถึง (access modifier)
·        Class คือ คีย์เวิร์ดของภาษาจาวาเพื่อระบุว่าเป็นการประกาศคลาส
·        Classname คือชื่อคลาส
·        Class member คือคุณลักษณะ และ เมธอด
Ø ตัวอย่าง
Public class Student {
}


การประกาศคุณลักษณะ
Ø คุณลักษณะ คือตัวแปรหรือค่าคงทีซึ่งประกาศภายในคลาส โดยมีรูปแบบการประกาศดังนี้
 [modifier]  dataType   Name ;
·        Modifier คือคีย์เวิร์ดของภาษาจาวาที่อธิบายคุณสมบัติต่างๆของตัวแปรหรือค่าคงที
·        dataType คือชนิดข้อมูลซึ่งอาจเป็นชนิดข้อมูลพื้นฐานหรือชนิดคลาส
·        Name คือชื่อของคุณลักษณะหรือ ตัวชื่อตัวแปร
Ø ตัวอย่าง
Public  class Student {
                Public String  id ;
                Public String  name ;
                Public String gpa :
}
                การประกาศเมธอด
Ø ภาษาจาวากำหนดรูปแบบของการประกาศเมธอดที่อยู่ในคลาสไว้ดังนี้
[modifier]  return_Type  methodName  ([arguments]) {
                [method_body]
}
·        Modifier คือคีย์เวิร์ดของภาษาจาวาที่ใช้อธิบายระดับการเข้าถึง
·        return_type คือชนิดข้อมูลของค่าที่จะมีการส่งกลับ
·        methodName คือ ชื่อของเมธอด
·        arguments คือตัวแปรที่ใช้ในการรับข้อมูลหรือออปเจ็คส่งมาให้
·        method_body คือคำสั่งต่างๆของภาษาจาวาที่อยู่ในเมธอด
การประกาศออปเจ็ค
Ø ออปเจ็คทุกออปเจ็คในโปรแกรมภาษาจาวาจะต้องมีคำสั่งประกาสเพื่อระบุว่าออปเจ็คนั้นเป็นออปเจ็คของคลาสใด โดยมีรูปแบบการประกาศดังนี้
[modifier]  ClassName objectName ;
·        Modifier คือคีย์เวิร์ดที่อธิบานคุณสมบัติต่างๆของออปเจ็ค


·        ClassName คือชื่อคลาสสำหรับออปเจ็คนั้น
·        objectName คือชื่อของออปเจ็ค
Ø ตัวอย่าง
Student  s1 ;
                การสร้างออปเจ็ค
Ø คำสั่งที่ใช้ในการสร้างออปเจ็คจะมีรูปแบบดังนี้
objectName = New  ClassName ([arguments]) ;
·        objectName คือชื่อของออปเจ็ค
·        new คือคีย์เวิร์ดของภาษาจาวาเพื่อใช้ในการสร้างออปเจ็ค
·        ClassName คือชื่อของคลาส
·        Arguments คือ ค่าคงที่ต้องการส่งรหัสผ่านในการเรียก Constructor
Ø ตัวอย่าง
S1 = new Student ( ) ;
                การประกาศและสร้างออปเจ็ค
Ø คำสั่งในการประกาศและสร้างออปเจ็คสามารถที่รวมเป็นคำสั่งเดียวกัน โดยมีรูปแบบคำสั่งดังนี้
[modifier]  ClassName objectName =
                                New ClassName ([arguments]) ;
Ø ตัวอย่าง
                Student s1 = new Student ( ) ;

การเรียกใช้สมาชิกของออปเจ็ค
Ø การเรียกใช้คุณลักษณะของออปเจ็คมีรูปแบบดังนี้
objectName.attributeName ;
Ø การเรียกใช้เมธอดของออปเจ็คมีรูปแบบดังนี้
objectName.methodName ([arguments]) ;
·        objectName คือชื่อของออปเจ็คที่สร้างขึ้น
·        methodName คือชื่อของเมธอดของออปเจ็คนั้น
·        arguments คือค่าที่ต้องการส่งผ่านไปให้กับเมธอดของออปเจ็คนั้น
Ø ตัวอย่าง
S1.setName ([“Thana”]) ;


สรุปเนื้อหาของบท
Ø โปรแกรมเชิงออปเจ็คจะมีคำนิยามที่สำคัญสองคำคือ ออปเจ็คและคลาส
Ø ออปเจ็คคือสิ่งต่างๆที่มีอยู่ในชีวิตประจำวันจะประกอบไปด้วยคุณลักษณะและเมธอด
Ø คลาสเปรียบเสมือนพิมพ์เขียวของออปเจ็ค ออปเจ็คที่ถูกสร้างมาจากคลาส ออปเจ็คหลายออปเจ็คสามารถถูกสร้างจากคลาสหนึ่งคลาสได้
Ø คุณลักษณะของออปเจ็คคือข้อมูลที่เก็บในอยู่ในออปเจ็ค ซึ่งแบ่งออกเป็นตัวแปรและค่าคงที่
Ø คูณลักษณะของคลาสเป็นคุณลักษณะที่ใช้ร่วมกันของทุกออปเจ็ค
Ø เมธอดคือวิธีการเพื่อใช้ในการจัดการกับคุณลักษณะของออปเจ็คหรือคุณลักษณะของคลาส
Ø ภาษาจาวามีนิยามในการเขียนโปรแกรมเชิงออปเจ็คเพื่อประกาศตัวคลาส คุณลักษณะ เมธอด และออปเจ็ค