คำถามติดแท็ก oop

5
โทษประสิทธิภาพ 20% สำหรับการออกแบบซอฟต์แวร์ที่ดี
ฉันกำลังเขียนห้องสมุดขนาดเล็กสำหรับการคำนวณเมทริกซ์กระจัดกระจายเป็นวิธีการสอนตัวเองให้ใช้ประโยชน์จากการเขียนโปรแกรมเชิงวัตถุได้ดีที่สุด ฉันทำงานหนักมากในการสร้างแบบจำลองวัตถุที่ดีซึ่งชิ้นส่วน (เมทริกซ์กระจัดกระจายและกราฟที่อธิบายโครงสร้างการเชื่อมต่อของพวกเขา) เป็นคู่ที่หลวมมาก ในมุมมองของฉันเองรหัสนั้นสามารถขยายได้และสามารถบำรุงรักษาได้มากขึ้น อย่างไรก็ตามมันค่อนข้างช้ากว่าถ้าฉันใช้วิธีทู่ เพื่อทดสอบข้อเสียของการมีแบบจำลองวัตถุนี้ฉันเขียนชนิดเมทริกซ์กระจัดกระจายใหม่ซึ่งทำให้การห่อหุ้มของกราฟต้นแบบเพื่อดูว่าจะทำงานได้เร็วเท่าใด ตอนแรกมันดูเยือกเย็นมาก รหัสที่ฉันเคยภูมิใจที่รันช้ากว่ารุ่น 60% โดยไม่มีการออกแบบซอฟต์แวร์ที่หรูหรา แต่ฉันสามารถทำการเพิ่มประสิทธิภาพระดับต่ำได้ไม่กี่ครั้ง - การใส่ฟังก์ชั่นและเปลี่ยนลูปนิดหน่อยโดยไม่ต้องเปลี่ยน API เลย ด้วยการเปลี่ยนแปลงเหล่านี้ตอนนี้ช้ากว่าคู่แข่งเพียง 20% ซึ่งนำมาสู่คำถามของฉัน: ฉันควรยอมรับการสูญเสียประสิทธิภาพมากแค่ไหนถ้ามันหมายความว่าฉันมีโมเดลวัตถุที่ดี
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.