Tôi đã được dẫn dắt để tin rằng đúc có thể, trong một số trường hợp, trở thành một trở ngại đo lường về hiệu suất. Điều này có thể là trường hợp khi chúng tôi bắt đầu xử lý các trang web không liên quan của ngoại lệ khó chịu khi ném.Giao diện đúc và đúc lớp
Cho rằng tôi muốn tạo ra các chẩn đoán chính xác hơn khi nói đến lập trình, tôi đã được nhắc đặt câu hỏi này cho các chuyên gia .NET. Có giao diện đúc nhanh hơn so với truyền lớp không?
Để cung cấp cho một mã ví dụ, chúng ta hãy nói điều này tồn tại:
public interface IEntity { IParent DaddyMommy { get; } }
public interface IParent : IEntity { }
public class Parent : Entity, IParent { }
public class Entity : IEntity
{
public IParent DaddyMommy { get; protected set; }
public IParent AdamEve_Interfaces
{
get
{
IEntity e = this;
while (e.DaddyMommy != null)
e = e.DaddyMommy as IEntity;
return e as IParent;
}
}
public Parent AdamEve_Classes
{
get
{
Entity e = this;
while (e.DaddyMommy != null)
e = e.DaddyMommy as Entity;
return e as Parent;
}
}
}
Vì vậy, là AdamEve_Interfaces nhanh hơn AdamEve_Classes? Nếu có thì bao nhiêu? Và, nếu bạn biết câu trả lời, tại sao?
Thực tế, phiên bản OOP hiện đại của mã spaghetti là ** mã lasagna **: nhiều lớp ... :-) – rsenna
@rsenna ~ Hahaha! Bạn biết đấy, tôi đã sửa chữa: P – Squirrelsama
@rsenna: Thật tuyệt vời. – NotMe