Page 24 - วิศวกรรมซอฟต์แวร์
P. 24

7-14 วิศวกรรมซอฟต์แวร์

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

       2.	 แนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุเป็นการนำ�แนวคิดเชิงวัตถุมาใช้ในการพัฒนาซอฟต์แวร์
โดยมองทกุ สงิ่ ในโลกเปน็ วตั ถุ และมองวา่ กจิ กรรมทเี่ กดิ ขน้ึ ในโลกเกดิ จากความสมั พนั ธแ์ ละปฏสิ มั พนั ธร์ ะหวา่ ง
วัตถุ ซ่ึงจะมีการวิเคราะห์และออกแบบระบบเดิมท่ีมีอยู่ด้วยการมองในเชิงวัตถุ ข้อดีของการพัฒนาซอฟต์แวร์
เชงิ วตั ถุ คอื ชว่ ยลดความเสย่ี งในการพฒั นาซอฟตแ์ วรส์ ำ�หรบั โครงการทมี่ กี ารเปลยี่ นแปลงความตอ้ งการจากผใู้ ช้
บอ่ ยครงั้ และสามารถนำ�ไปใชไ้ ดก้ บั งานหลากหลายประเภทหรอื ระดบั การนำ�กลบั มาใชใ้ หมอ่ ยใู่ นระดบั สงู นนั่ เอง

เร่ืองท่ี 7.1.2
วัตถุ คลาสและองค์ประกอบของคลาส

       หลังจากเข้าใจแนวคิดเชิงวัตถุแล้วจากเรื่องท่ี 7.1.1 ท�ำให้ทราบถึงลักษณะของวัตถุท่ีสามารถเกิดข้ึนได้จาก
ข้ันตอนในการให้ความคิดรวบยอด (concept) กับวัตถุ กระบวนการส�ำคัญที่จะได้มาซึ่งวัตถุต่าง ๆ คือ การค้นหา
วัตถุ แต่อย่างไรก็ตาม วัตถุบนโลกน้ีมีอยู่มากมาย หากไม่มีการก�ำหนดขอบเขตของวัตถุที่สนใจ จะท�ำให้ได้วัตถุที่อาจ
จะไม่เก่ียวข้องกับระบบได้ ดังน้ัน ส่ิงที่จะเป็นตัวบอกถึงขอบเขตของวัตถุท่ีนักพัฒนาซอฟต์แวร์สนใจคือ ขอบเขต
ของปัญหา (problem domain)

1. 	การค้นหาวัตถุ

       ขอบเขตของปัญหาถือเป็นส่ิงส�ำคัญอันดับแรกท่ีนักพัฒนาจะต้องก�ำหนดก่อนการค้นหาวัตถุ เพื่อท�ำให้ได้
วัตถุท่ีเกี่ยวข้องกับระบบเท่าน้ัน
   19   20   21   22   23   24   25   26   27   28   29