Wir schreiben ein SDK für ein CAD-Programm und sind in eine kleine Meinungsverschiedenheit über eine bestimmte Art von Funktion geraten (nicht nur Unstimmigkeiten zwischen verschiedenen Leuten, auch Meinungsverschiedenheiten zwischen meinen beiden Gehirnhälften)..Net SDK-Problem, welcher Weg zu gehen?
Stellen Sie sich vor, es gibt viele Klassen für bestimmte Kurventypen (Ellipse, Kreis, Bogen, Linie, Bezier usw.). Alle diese Klassen können durch eine Nurbs-Kurve dargestellt werden. Also sollten wir setzen die Kreis-> NURBS-Funktion auf Circle:
public NurbsCurve Circle.ToNurbsCurve()
{
// Return a circular NurbsCurve or null if the Circle is invalid.
}
oder sollte es sich um eine statische auf NurbsCurve sein:
public static NurbsCurve NurbsCurve.CreateFromCircle(Circle)
{
// Return a circular NurbsCurve or null if the Circle is invalid.
}
Eine Option wären Erweiterungsmethoden. 'öffentliche statische NurbsCurve ToNurbs (dieser Kreis Kreis) {}' –
@Chris, das würde hier nicht wirklich Sinn machen ... es ist der Kreis, der weiß, wie es sollte Konverter zu einem NurbsCurve, nicht die NurbsCurve-Klasse. Erweiterungsmethoden sind ein cooles Feature, aber viele Leute (einschließlich mir) benutzen sie übermäßig. –