<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="windows-874" %> http://www.siam2dev.com >> ชุมชนนักพัฒนาซอฟต์แวร์ของไทยแห่งใหม่
เข้าสู่ระบบ ::    
http://www.siam2dev.com >> ชุมชนนักพัฒนาซอฟต์แวร์แห่งใหม่
Home   
News   
Articles   
Programming Zone   
DownLoad   
Contact US   
Links   
Webboard   
ฯลฯ   
 
     สวัสดีครับทุกท่าน ผมพัฒนาเว็บนี้ขึ้นมาโดยมีวัตถุประสงค์ ที่จะเห็นโปรแกรมเมอร์ของไทย ได้มีการคิดค้นและพัฒนาซอฟต์แวร์ ของคนไทย กันมากขึ้น เพื่อเป็นการช่วยชาตของเราให้เจริญยิ่งขึ้นไป (จะได้ไม่ต้องทะเลาะกันอย่างทุกวันนี้ 555 อย่าเครียดครับ ) เนื่องจากเว็บนี้ยังเพิ่งเริ่มต้นนะครับอาจมีเนื้อหาบางงส่วนที่ยังไม่สมบูรณ์จึงขออภัยมา ณ โอกาส นี้ด้วยครับ
 
   OOAD :: Object Oreintation Analysis and Design
     Interface

บทที่ 1

Agenda ::

    OO คืออะไร
    Relationship
    Interaction
    Domain
    Object และ Classes
    Class หรือ Abstract Object
    Abstraction & Instantiation
    Attributes และ Functions
    Attribute
    Functions
    OOSE
    OOA
    OOD
    OOP

    Object Orientation คืออะไร

    เราสามารถพบเห็น สิ่งของต่าง ๆ มากมายในชีวิตประจำวัน ไม่ว่าจะเป็นสิ่งที่มองเห็นได้ (Tangible) และสิ่งที่มองไม่เห็น (Intangible)
ต.ย. ของ Tangible ได้แก่ >> คอมพิวเตอร์ , ทีวี , รถยนต์ , คน , สัตว์ ฯลฯ
ต.ย. ของ Intangible ได้แก่ >> กฎเกณฑ์ หรือ กฎหมาย (ที่ไม่ใช่รูปเล่ม) , ราคาสินค้า , อากาศ , เวลา , ความรู้ , ทฤษฎีต่าง ๆ ภาพยนตร์ (ตัวเนื้อหาของเรื่อง) ฯลฯ

    เราได้ทราบแล้วว่า ในโลกของเรามี Object ต่าง ๆ มากมาย สิ่งที่เกิดขึ้นจาก Object ต่าง ๆ ก็คือ กิจกรรม(Activities) ความเคลื่อน (Movement) หรือการกระทำ (Action ) เช่น
         - คนรับประทานอาหาร
         - สุนัขเล่นกับแมว
         - นักศึกษาเล่นเกมออนไลน์
         - นักกีฬาทีมชาติไทยลงแข่งขันกีฬาชกมวยในการแข่งขันกีฬาโอลิมปิก
หากพิจารณาโดยละเอียดแล้วจะพบว่า กิจกรรมต่าง ๆ ที่เกิดขึ้นในชีวิตประจำวันของเรานั้นล้วนแต่เกิดจากการมีความสัมพันธ์ (Relationship) และการมีปฏิสัมพันธ์ (Interaction) ระหว่าง Obeject 2 ตัวขึ้นไป ซึ่งจากข้อความตัวอย่างข้างต้นจะพบว่า

ตัวอย่าง

    กิจกรรมคนรับประทานอาหาร เกิดจาก Interaction “รับประทาน” ระหว่าง คนและอาหาร และเกิดจาก Relationship “เป็นเจ้าของ” ระหว่างคนและอาหาร ( เพราะคนเป็นเจ้าของอาหาร จึงจะสามารถรับประทานได้ )

ตัวอย่าง
    นักมวยชกต่อยคู่ต่อสู้ เกิดจาก Interaction “ชกต่อย” ระหว่าง นักมวยและคู่ต่อสู้ และเกิดจาก Relationship “คู่ชก” ระหว่างคนและคู่ต่อสู้

ตัวอย่าง

    รถกำลังวิ่งไปบนถนน เกิดจาก Interaction “วิ่งไปบน” ระหว่าง รถและถนน และเกิดจาก Relationship “การใช้งาน” รถและถนน

Relationship & Interaction

    Relationship คือ ความเกี่ยวข้องกันหรือความสัมพันธ์กันระหว่าง Object 2 ตัวขึ้นไป เช่น ความเป็นแม่-ลูก ความเป็นเจ้าของการมีอยู่ เป็นต้น
    Interaction คือ ปฏิสัมพันธ์หรือการกระทำใด ๆ ที่เกิดขึ้นระหว่าง Object 2 ตัวขึ้นไป เช่น การสร้าง การเปลี่ยนแปลง การเล่น การกระตุ้น เป็นต้น ซึ่ง Interaction นี้เองที่ทำให้เกิด กิจกรรม (Activities) ต่าง ๆ ในโลกนี้


ต.ย.

“นาย ก. เปิดตู้เย็นยี่ห้อ A (ซึ่งเป็นของนาย ก. เอง) แล้วหยิบน้ำ (ซึ่งอยู่ในตู้เย็น) มาดื่ม”
    Object ที่เราสนใจในที่นี้ได้แก่ นาย ก. , ตู้เย็นยี่ห้อ A , และน้ำ
    Relationship ระหว่าง Object ที่เราสนใจ ได้แก่
        นาย ก. เป็นเจ้าของตู้เย็นยี่ห้อ A
        น้ำอยู่ในตู้เย็นยี่ห้อ A
    Interaction ระหว่าง Object ที่เราสนใจได้แก่
        นาย ก. เปิดตู้เย็นยี่ห้อ A
        นาย ก. หยิบน้ำ
        นาย ก. ดื่มน้ำ

    Domain คืออะไร
    จากตัวอย่างที่ 1.1 ถ้าสังเกตให้ดีจะเห็นว่า เราจะพูดถึง Object ที่เราสนใจ หรือ Relationships ที่เราสนใจ เป็นต้น คำว่า “ที่เราสนใจ” เป็นการให้ กรอบของสิ่งที่เราต้องการพิจารณาหรือสนใจ เพราะ เราไม่สามารถสนใจในทุก ๆ วัตถุในโลกในเวลาเดียวกันได้ และในขณะเดียวกันเราก็ไม่สามารถให้ความสนใจกับทุกความสัมพันธ์ และทุก ๆ กิจกรรมหรือการกระทำที่เกิดขึ้นได้ เช่นกัน จากตัวอย่างที่ 1.1 จะเห็นว่าเราไม่สนใจสิ่งอื่น ๆ ในตู้เย็น เช่น เราไม่สนใจว่ามีผลไม้อยู่ในตู้เย็น หรือ ไม่ และในขณะเดียวกันเราไม่ได้สนใจว่า นาย ก. ได้ดื่มน้ำที่อยู่ในภาชนะประเภทใด เช่น อยู่ในแก้ว หรืออยู่ในขวดพลาสติก

    Domain คือ การกำหนดกรอบของสิ่งที่เราต้องการพิจารณาหรือสนใจ (เพราะเราไม่อาจสนใจทุก ๆ วัตถุในโลก ในเวลาเดียวกันได้ และในขณะเดียวกันเราไม่สามารถให้ความสนใจกับทุก ๆ ความสัมพันธ์และทุก ๆ กิจกรรมที่เกิดขึ้นบนโลกนี้ได้ )

    Concept คืออะไร
    Concept หมายถึง ความคิดรวบยอดที่เรามีให้กับวัตถุนั้น ๆ ( แนวความคิดในแง่ของความเท็จจริง ไม่เกี่ยวกับความรู้สึกที่เรามีต่อสิ่งนั้น )
    ตัวอย่างเช่น ถ้าเรา ต้องการให้ Concept กับรถยนต์ นั่นคือ รถทุกคันต้องมีตัวถัง มีล้อ และมีเครื่องยนต์ หรือเมื่อต้องการให้ concept เกี่ยวกับ สุนัข ( สุนัขปกติทั่วไป ) นั่นคือ สุนัขทุกตัวต้องมี 4 ขา มีขน มีหาง สามารถเห่า และ กัดได้เหมือนกันทุกตัว

    Object และ Classes
Concept ?
    ที่ผ่านมาเรามองแต่ Object ที่อยู่ใน Domain ทีมีอยู่จริงในโลก (Real World) เท่านั้น และถ้าเราต้องการที่จะจำลอง (Model) สิ่งต่าง ๆ ให้อยู่ในเครื่องคอมพิวเตอร์จะทำได้อย่างไร
Concept คืออะไร
Concept หมายถึง ความคิดรวบยอดที่เรามีให้กับวัตถุนั้น ๆ ( แนวความคิดในแง่ของความเท็จจริง ไม่เกี่ยวกับความรู้สึกที่เรามีต่อสิ่งนั้น )
ตัวอย่างเช่น ถ้าเรา ต้องการให้ Concept กับรถยนต์ นั่นคือ รถทุกคันต้องมีตัวถัง มีล้อ และมีเครื่องยนต์ หรือเมื่อต้องการให้ concept เกี่ยวกับ สุนัข ( สุนัขปกติทั่วไป ) นั่นคือ สุนัขทุกตัวต้องมี 4 ขา มีขน มีหาง สามารถเห่า และ กัดได้เหมือนกันทุกตัว

      Attribute
   
เราสามารถบรรยายคุณสมบัติของ object ต่าง ๆ ในโลกได้ โดยที่คุณสมบัติดังกล่าวนี้เป็นคุณสมบัติที่เราสนใจหรืออยู่ใน Domain ที่เราสนใจนั่นเอง เช่น สีและจำนวนประตูของรถคันหนึ่ง หรือ อาจจะเป็น สีผิวและเพศของคนคนหนึ่ง เป็นต้น เราเรียกคุณสมบัติเหล่านี้ว่า Attribute
Function

     Object-Oriented Software Engineering (OOSE)
    OOSE หมายถึง กระบวนการทางคอมพิวเตอร์ตั้งแต่ ขั้นตอนการวิเคราะห์ การออกแบบ     การพัฒนาโปรแกรม และการนำไปใช้ โดยใช้หลักการของ Object-Orientation
        OOA :: Object – Oriented Analysis
        OOD :: Object – Oriented Design
        OOP :: Object – Oriented Programming
 
:: http://www.siam2dev.com ::
e-mail :: xnattapong@hotmail.com , songneam@gmail.com