วันอังคารที่ 25 มิถุนายน พ.ศ. 2556

แนวคิดเกี่ยวกับการโปรแกรมเชิงวัตถุ (OOP Concept)



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

แนวคิดการโปรแกรมแบบโครงสร้าง (Structure programming)
          แนวคิดแบบโครงสร้าง (Structure programming) หรือแบบกระบวนการ (Procedure programming) จัดเป็นการเขียนโปรแกรมในรูปแบบเดิม ๆ ซึ่งจุดประสงค์หลักในการเขียนโปรแกรมพัฒนาระบบงานสารสนเทศขึ้นมาใช้งานนั้นก็เพื่อ ให้เครื่องคอมพิวเตอร์สามารถประมวลผลและวิเคราะห์ข้อมูล แก้ปัญหาบางอย่างแทนมนุษย์ ดังนั้น Concept หรือวิธีการในการคิดสำหรับแก้ปัญหาของมนุษย์ ก็ถูกนำมาประยุกต์ใช้กับคอมพิวเตอร์ วิธีการก็คือ ชุดคำสั่งของโปรแกรมที่เขียนขึ้นที่ใช้แก้ปัญหา จะแยกปัญหาใหญ่ ๆ ออกเป็นส่วนย่อย ๆ แล้วค่อยแก้ไขไปทีละส่วนจนกว่าจะได้ผลลัพธ์ที่ต้องการ ซึ่งประยุกต์มาจากวิธีคิดของมนุษย์นั่นเอง เช่น เราต้องแก้ปัญหาโจทย์คณิตศาสตร์ 200*3/6-100 ถ้ามนุษย์คิดโดยไม่ใช้เครื่องคำนวณ เราก็จะแยกคำนวณประโยคคณิตศาสตร์นี้ทีละส่วน โดยเราจะคำนวณตามลำดับความสำคัญของเครื่องหมายก่อน คือ ((200*3)/6)-100) โดยจะคำนวณส่วนที่อยู่ในวงเล็บตัวในสุดก่อน ตามลำดับความสำคัญของเครื่องหมาย ดังนั้นถ้าเราต้องการเขียนโปรแกรมเพื่อแก้โจทย์คณิตศาสตร์ วิธีการคิดเพื่อให้ได้คำตอบมานั้น หลักการก็จะไม่ต่างกับมนุษย์คิดเลย หากเป็นระบบสารสนเทศ เช่น ระบบงานฝ่ายทรัพยากรบุคคลทั้งระบบ ในระบบนี้จะประกอบไปด้วยส่วนงานย่อย ๆ เช่น งานฝึกอบรม งานข้อมูลบุคคลากร งานประเมินผลบุคคลากร การเขียนโปรแกรมก็จะแยกเป็นงานออกเป็น Function ย่อย ๆ ก่อน เพื่อให้ Function นั้นทำงานตามแต่ละหน้าที่ภายใน หลาย ๆ Function รวมกันก็จะเป็นระบบใหญ่

ข้อเสียของแนวคิดนี้คือ
         ถ้าขนาดของโปรแกรม (Size) ไม่ใหญ่มาก ความซับซ้อนของ Code จะน้อย ไม่ก่อให้เกิดปัญหาและไม่ยุ่งยากในการที่จะพัฒนาโปรแกรมด้วยวิธีนี้ แต่หาก Size ของโปรแกรมโตขึ้น จะทำให้มีความซับซ้อนในแง่ของการโปรแกรม อีกทั้งยังพบปัญหาในเรื่องของการนำกับมาใช้ใหม่ (Reuseable) การแก้ไข(Modify) การขยายเพื่อเพิ่มประสิทธิภาพให้กับโปรแกรม อีกทั้งส่งผลกับปัญหาในระยะยาวอีกด้วย

ไม่มีความคิดเห็น:

แสดงความคิดเห็น