สิ่งที่ oop ดีกว่าโปรแกรมแบบ โครงสร้างก็คือการนำ code เดิมกลับมาใช้กับโปรแกรมอื่นได้ โดยหลักการของ oop คือการมองทุกอย่างเป็นวัตถุ ผมของ ยกตัวอย่างกับของในชีวิตประจำวันเราจะครับเช่นคอมพิวเตอร์ คอมพิวเตอร์ประกอบด้วย harddisk cpu mainboard ram คุณสังเกตไหมครับว่าทุกชิ้นส่วนเป็นคนละ ยี่ห้อกันหมดแต่ก็สามารถนำมาประกอบกันเป็นเครื่องคอมพิวเตอรืได้ ซึ้งต่างจากคอมพิวเตอร์สมัยแรกๆๆที่มาจากบริษัทไหนก็ไม่สามารใช้ชื้นส่วนจากที่อื่นได้อีก ให้คุณมอง harddisk cpu mainboard ram ทุกตัวเป็น คลาสหมด แล้วเครื่องคอมพิวเตอร์คือโปรแกรม โปรแกรมหนึ่งmujประกอบด้วย class harddisk class cpu class mainboard class ram ก็เหมือนกับชีวิตจริงที่เราสามารถถอด harddisk จากเครื่องหนึ่งไปใส่อีกเครื่องหนึ่งได้ การโปรแกรมแบบ oop ก็เช่นกันครับเราสามารถเรียกใช้ class ที่เคยสร้างได้ก่อนหน้านี้ได้ซึ่งต่างจากแบบโครงสร้าง ถ้าเราสร้างโปรแกรมขึ้นมาใหม่เราก็ต้องสร้าง ฟังก์ชั่นใหม่ ต้องกำหนดค่าพารามิเตอร์ต่างๆๆใหม่แต่เวลาเกิดปัญหาเราต้องเสียเวลามานั่งไล่ code แต่ถ้าเราแยกเป็นชิ้นๆๆแบบ oop เราก็แค่ มานั่งไล่ไม่กี่จุดเราก็พบจุดที่ error แล้วครับ oop เป็นสิ่งที่พัฒนามาจากตัวแปรแบบโครงสร้างเพื่อให้รองรับการพัฒนาโปรเจกที่ใหญ่ขึ้นลดความยุ่งยากลง ครับ ส่วน C# เป็น class 100 % ครับ รูปแบบ คำสั่งจะเหมือน JAVA มากกว่า c ครับ