Podczas definiowania nowej klasy w projekcie, jaka jest najlepsza/najlepsza praktyka w tym zakresie? W przeszłości stworzyły zajęcia takie jak:Jak prawidłowo zdefiniować właściwości klasy?
public class MyClass
{
public string FirstName {get; set;}
public string LastName {get; set;}
}
Normalnie bym użyć klasy takich jak to do stworzenia kolekcji w ramach projektu.
Jednak jak ja nadal się uczyć i czytać więcej o C Sharp widzę przykłady, gdzie klasy są definiowane jako:
class MyClass //not set to public
{
private string _firstName; //first defined as fields
private string _lastName;
public string FirstName // then defined as properties
{
get { return _firstName; }
set { _firstName = value; }
}
public string LastName
{
get { return _lastName; }
set { _lastName = value; }
}
}
Czy pierwsze podejście błędne w definicji czy też jest to akceptowane skróconą wersję w ciągu C#? Jako najlepszą praktykę należy zawsze najpierw zdefiniować klasę z prywatnymi polami, a następnie zdefiniować je jako właściwości używając get/set do wartości?
Pytam, ponieważ jestem samoukiem w języku C# i staram się ulepszać i lepiej rozumieć poprawne podejście do rozwoju, a niektóre samouczki i tutoriale po prostu przedstawiają podejścia bez solidnego wyjaśnienia, dlaczego preferowane jest jedno podejście (lub powinno być zrobione) nad drugim.
góry dzięki
W drugim przykładzie nie powinno być klamry zamykającej po polu _nazwa nazwy. To powinno być na końcu definicji klasy. Właściwości są nadal zdefiniowane w bloku klasy. (chyba, że tam coś nie wiem o C#) –