Какова наилучшая практика для обозначения второго экземпляра класса? Например, для класса с именем Employee я создаю первый экземпляр с именем employee. Каким будет лучшее имя для второго экземпляра класса Employee, когда первый экземпляр все еще находится в области видимости?Какова наилучшая практика для обозначения второго экземпляра класса, когда первый экземпляр все еще находится в области видимости?
ответ
Обычно ответ не создать вторую переменную Employee
. Если вы имеете дело с двумя сотрудниками, использовать коллекции, как:
Массив:
Employee[] employees = new Employee[2];
Или список:
List<Employee> employees = new List<Employee>();
Если вы не в ситуации, когда вы просто имея дело с группой сотрудников, чем имя переменной, которую она представляет в контексте кода, как и любая другая переменная (searchEmployee
, newEmployee
, employeeToBeFired
и т. д.).
Название вашего класса выглядит как модель, потому что вы говорите о Employee
. Когда я работаю с моделями, я даю имена для новых экземпляров, которые представляют текущую структуру данных в этой области.
Пример, если я хочу создать нового сотрудника, я назову экземпляр Employee
, например: newEmployee. Этот объект представляет Employee, который будет создан.
В случае, если у меня есть EmployeeManager
(реализует некоторые функции), чем я предпочитаю использовать имя типа employeeManager
, потому что я хочу сохранить совместимость с другим кодом. Также будет редко случаем создавать экземпляры одного и того же класса менеджера в одной области.
Я рекомендую вам:
- При работе с моделями, используйте имена экземпляров которых описывает цель ваших данных в текущей области. Пример:
newEmployee
,suspendedEmployee
,valuableEmployee
. - При работе с услугами используйте имена, которые описывают сервис, чтобы он соответствовал коду в вашем приложении. Пример:
employeeRepositoryService
.
добавить тип служащего или какое-нибудь слово, связанное с функцией:
var employee = new Employee();
var employeeManager = new Employee(); //If is the manager
var employeeWithID = new Employee(); //If I use this to get the id
Это нормально, чтобы добавить 1, 2, 3 ... или первое, все зависит от вас.
Если это параметр метода, который лучше? 'bool Сравнить (Employee employee1, Employee employee2)' или 'bool Сравнить (Employee firstEmployee, Employee secondEmployee)' или 'bool Сравнить (Employee employee, Employee otherEmployee)' –
В методе? Microsoft использует 'objA' и' objB' https://msdn.microsoft.com/en-us/library/system.object.referenceequals(v=vs.110).aspx – NPras