У меня есть класс под названием SerializableString
, который расширяет базовый класс CustomXmlSerializable
. Базовый класс предоставляет методы для сериализации и десериализации производного класса XML.Можно ли назвать эту строку «String» опасной или плохой практикой?
public class SerializableString : CustomXmlSerializable
{
public string String { get; set; }
}
Очевидно, что я могу назвать string
свойством, что я хочу. Но поскольку этот класс является настолько общим по своей природе, было бы неплохо дать ему очень очевидное имя, например «String». Таким образом, объект доступен как:
SerializableString userName = new SerializableString();
userName.String = "khargoosh";
Этот компилятор допускает это. Невзирая на характер класса и собственности, было бы ли это плохой практикой или опасным, чтобы дать одно и только свойство в классе имени «String»?
Я бы сказал, что это всегда плохая практика, чтобы дать свойству имя, которое является зарезервированным ключевым словом или типа, даже если компилятор позволяет это. Это просто сбивает с толку. – PoweredByOrange
P.S. «khargoosh» означает «кролик» на фарси, если кто-то задавался вопросом :) – PoweredByOrange
Это тоже мое чувство. Но я хотел бы узнать, может ли (и почему) это быть опасным. +1 для перевода !!! – khargoosh