Page 24 - วิศวกรรมซอฟต์แวร์
P. 24
7-14 วิศวกรรมซอฟต์แวร์
ประเด็น วิธีการเชงิ โครงสรา้ ง วธิ กี ารเชิงวัตถุ
ลักษณะทั่วไป น�ำปัญหามาแตกเปน็ ส่วนย่อย ๆ ในรปู ของ มองสิง่ ตา่ ง ๆ ในระบบเปน็ อ็อบเจก็ ต์ ซงึ่ มี
กระบวนการทำ� งาน ความเป็นอิสระต่อกัน แต่ท�ำงานร่วมกัน
ลกั ษณะการ แตกกระบวนการทำ� งานเป็นหนว่ ยย่อย ๆ จำ� แนกออ็ บเจก็ ต์แล้วแบง่ กลมุ่ ของอ็อบเจ็กต์
จำ�แนกงาน เรยี กว่า ฟังก์ชั่น ตามคณุ ลกั ษณะของแตล่ ะอ็อบเจก็ ต์
ความข้นึ ตอ่ กนั ฟงั กช์ ่นั การท�ำงานต่าง ๆ จะมีลกั ษณะการ แตล่ ะออ็ บเจ็กต์มีความเปน็ อสิ ระไม่ข้ึนต่อกนั
ท�ำงานขึน้ ตรงต่อกนั มีการสง่ พารามิเตอร์ และติดตอ่ กันโดยการสง่ เมสเสจถึงกนั
ขั้นตอนการ จากฟังกช์ ่ันหนงึ่ ไปยังอกี ฟังก์ชน่ั หนึ่ง
ทำ�งาน เริ่มต้นทกี่ ารกำ� หนดโครงสรา้ งและประเภท เรม่ิ ต้นด้วยการกำ� หนดคุณสมบตั แิ ละ
ของขอ้ มลู จากน้นั กำ� หนดฟังกช์ ั่นการทำ� งาน พฤตกิ รรมให้อ็อบเจก็ ตต์ า่ ง ๆ จากนั้นสร้าง
กบั โครงสรา้ งขอ้ มลู ดงั กล่าว ความสมั พนั ธ์ระหว่างออ็ บเจก็ ตว์ ่าจะทำ� งาน
ร่วมกนั อยา่ งไร
2. แนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุเป็นการนำ�แนวคิดเชิงวัตถุมาใช้ในการพัฒนาซอฟต์แวร์
โดยมองทกุ สงิ่ ในโลกเปน็ วตั ถุ และมองวา่ กจิ กรรมทเี่ กดิ ขน้ึ ในโลกเกดิ จากความสมั พนั ธแ์ ละปฏสิ มั พนั ธร์ ะหวา่ ง
วัตถุ ซ่ึงจะมีการวิเคราะห์และออกแบบระบบเดิมท่ีมีอยู่ด้วยการมองในเชิงวัตถุ ข้อดีของการพัฒนาซอฟต์แวร์
เชงิ วตั ถุ คอื ชว่ ยลดความเสย่ี งในการพฒั นาซอฟตแ์ วรส์ ำ�หรบั โครงการทมี่ กี ารเปลยี่ นแปลงความตอ้ งการจากผใู้ ช้
บอ่ ยครงั้ และสามารถนำ�ไปใชไ้ ดก้ บั งานหลากหลายประเภทหรอื ระดบั การนำ�กลบั มาใชใ้ หมอ่ ยใู่ นระดบั สงู นนั่ เอง
เร่ืองท่ี 7.1.2
วัตถุ คลาสและองค์ประกอบของคลาส
หลังจากเข้าใจแนวคิดเชิงวัตถุแล้วจากเรื่องท่ี 7.1.1 ท�ำให้ทราบถึงลักษณะของวัตถุท่ีสามารถเกิดข้ึนได้จาก
ข้ันตอนในการให้ความคิดรวบยอด (concept) กับวัตถุ กระบวนการส�ำคัญที่จะได้มาซึ่งวัตถุต่าง ๆ คือ การค้นหา
วัตถุ แต่อย่างไรก็ตาม วัตถุบนโลกน้ีมีอยู่มากมาย หากไม่มีการก�ำหนดขอบเขตของวัตถุที่สนใจ จะท�ำให้ได้วัตถุที่อาจ
จะไม่เก่ียวข้องกับระบบได้ ดังน้ัน ส่ิงที่จะเป็นตัวบอกถึงขอบเขตของวัตถุท่ีนักพัฒนาซอฟต์แวร์สนใจคือ ขอบเขต
ของปัญหา (problem domain)
1. การค้นหาวัตถุ
ขอบเขตของปัญหาถือเป็นส่ิงส�ำคัญอันดับแรกท่ีนักพัฒนาจะต้องก�ำหนดก่อนการค้นหาวัตถุ เพื่อท�ำให้ได้
วัตถุท่ีเกี่ยวข้องกับระบบเท่าน้ัน