Wydajność, prostota - new czy clone.

0

Mam strukturę zawierającą dwie właściwości typu int oraz statyczną metodę dodającą do siebie dwa obiekty tej struktury.

Podejście 1:

 
public static Point operator +(Point p1, Point p2) {
return new Point(p1.X + p2.X, p1.Y + p2.Y);
}

Podejście 2: Struktura implementuje ICloneable.

 
public object Clone() { return this.MemberwiseClone(); }
public static Point operator +(Point p1, Point p2) {
Point point = (Point)p1.Clone();
point.x += p2.X;
point.y += p2.Y;
return point;
}

Czy podejście drugie to wzorzec Prototype?
Czy podejście drugie jest bardziej wydajne?

Obiekty te będą tworzone bardzo często. Do 10 na sekundę.

0

Różnicy po optymalizacji pewnie żadnej nie będzie, a podejście 1. jest zdecydowanie bardziej czytelne.

Poza tym, 10 razy na sekundę to malutko biorąc pod uwagę wielkość obiektu klasy Point.

1 użytkowników online, w tym zalogowanych: 0, gości: 1