ในการถกเถียงเกี่ยวกับตัวแปรส่งคืนสมาชิกบางคนในทีมต้องการวิธีการส่งคืนผลลัพธ์โดยตรงไปยังผู้โทรในขณะที่คนอื่น ๆ ต้องการประกาศตัวแปรส่งคืนที่ส่งกลับไปยังผู้โทรแล้ว (ดูตัวอย่างโค้ดด้านล่าง)
อาร์กิวเมนต์หลังคืออนุญาตให้นักพัฒนาที่ทำการดีบั๊กโค้ดเพื่อค้นหาค่าส่งคืนของเมธอดก่อนที่มันจะส่งกลับไปยังผู้เรียกดังนั้นจึงทำให้โค้ดเข้าใจง่ายขึ้น: นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งที่การเรียกใช้เมธอดนั้น
มีแนวทางใดบ้างที่มีประสิทธิภาพมากที่สุดและ / หรือมีเหตุผลอื่นใดที่ทำให้เราควรนำสไตล์หนึ่งมาใช้กับสไตล์อื่น?
ขอบคุณ
private bool Is2(int a)
{
return a == 2;
}
private bool Is3(int a)
{
var result = a == 3;
return result;
}
stloc.0
และldloc.0
ในรุ่นที่สอง) แต่ฉันคิดว่ามันจะเกิดขึ้นเฉพาะในโหมดดีบั๊ก และมันก็ไม่สำคัญจริงๆที่นี่
a = b = c;
และa == b == c
ฉันจะหลีกเลี่ยงการเขียนสิ่งที่ดูเหมือนว่าa = b == c
ถ้าคุณสามารถ เมื่อฉันเห็นรหัสบรรทัดแรกมันใช้เวลาไม่กี่วินาทีในการคิดว่าเกิดอะไรขึ้น รหัสนั้นโดดเด่น ฉันต้องการตบวงเล็บไปรอบ ๆa == 3
แต่ StyleCop ไม่ชอบ - เป็นเหตุผลที่ดีที่จะใช้หมายเลขเวอร์ชันหนึ่ง อย่างอื่น: a => (a == 3)
นี้เป็นหลักแลมบ์ดาเช่น ทำไมต้องเพิ่มรหัสลงในฟังก์ชั่นเล็ก ๆ น้อย ๆ ป่องแล้ว
result
ก่อนที่จะส่งคืน