, :) Мне показалось раздражающим приход на программирование на C #, потому что все используют первую, явно, но повторяющуюся версию.

ваше предпочтение?

Допустим, у нас есть общая таблица Product, в которой есть идентификатор, имя и ссылка на внешний ключ для категории. Вы бы предпочли назвать свой стол как:

CREATE TABLE Products
(
    ProductID int NOT NULL IDENTITY(1,1) PRIMARY KEY,
    CategoryID int NOT NULL FOREIGN KEY REFERENCES Categories(CategoryID),
    ProductName varchar(200) NOT NULL
)

использование явного именования столбцов (например,ПродуктИмя,ПродуктID), или что-то вроде:

CREATE TABLE Products
(
    ID int NOT NULL IDENTITY(1,1) PRIMARY KEY,
    CategoryID int NOT NULL FOREIGN KEY REFERENCES Categories(ID),
    Name varchar(200) NOT NULL
)

Из того, что я видел, соглашение в мире .NET должно быть явным - примеры, как правило, используют первый пример, в то время как мир с открытым исходным кодом и RoR предпочитают второй. Лично мне первое легче читать и понимать с первого взгляда:select p.ProductID, p.ProductName, c.CategoryName from Categories c inner join Products p on c.CategoryID = p.CategoryID кажется более естественным для меня, чемselect p.ID AS ProductID, p.Name AS ProductName, c.Name AS CategoryName from Categories c inner join Products p on c.ID = p.CategoryID

Я предполагаю, что, учитывая приведенный мною элементарный пример, это не имеет большого значения, но как насчет того, когда вы имеете дело с большим количеством данных и таблиц? Я все еще нашел бы первый пример лучше, чем второй, хотя, возможно, стоит рассмотреть некоторую комбинацию двух (<Table>ID для удостоверения личности, но простоName для имени?). Очевидно, что в существующем проекте вы должны следовать уже установленным соглашениям, но как насчет новой разработки?

Какие у тебя предпочтения?

Ответы на вопрос(11)

Ваш ответ на вопрос