Я знаю, что это уже поздно, и на этот вопрос уже был дан очень хорошо, но я хочу предложить свое мнение о №3 относительно префикса имен столбцов.
Все столбцы должны быть named с префиксом, который уникален для таблицы, в которой они определены.
Например Учитывая таблицы «клиент» и «адрес», давайте перейдем с префиксами «cust» и «addr» соответственно. «клиент» имел бы «cust_id», «cust_name» и т. д. в нем. «address» будет иметь «addr_id», «addr_cust_id» (FK обратно к клиенту), «addr_street» и т. д.
Когда мне впервые был представлен этот стандарт, я был мертв против Это; Я ненавидел эту идею. Я не мог выдержать идею о том, что это лишний набор и избыточность. Теперь у меня было достаточно опыта, чтобы я никогда не возвращался.
Результат этого заключается в том, что все столбцы в вашей схеме базы данных уникальны. Для этого есть одно важное преимущество, которое превосходит все аргументы против него (на мой взгляд, конечно):
Вы можете искать всю базу кода и надежно находить каждую строку кода, которая касается конкретного столбца.
Преимущество №1 невероятно велико. Я могу обесценить столбец и точно знать, какие файлы необходимо обновить до того, как столбец можно безопасно удалить из схемы. Я могу изменить значение столбца и точно знать, какой код нужно реорганизовать. Или я просто могу сказать, используются ли данные из столбца в определенной части системы. Я не могу сосчитать количество раз, когда это превратило потенциально огромный проект в простой, а также количество часов, которые мы сохранили в процессе разработки.
Еще одна, относительно небольшая польза от этого - это то, что вам нужно использовать табличные псевдонимы, когда вы делаете самостоятельное соединение:
SELECT cust_id, cust_name, addr_street, addr_city, addr_state
FROM customer
INNER JOIN address ON addr_cust_id = cust_id
WHERE cust_name LIKE 'J%';
Последняя версия FXCop (v10) поставляется в комплекте с установкой последней версии Windows SDK для Windows 7 и .Net 4, выпущенной 5/19/2010. От Microsoft - Полные ISO
После установки SDK вы можете найти EXE установщика FXCop в %programfiles%\Microsoft SDKs\Windows\v7.1\Bin\FXCop (Это предполагает, что вы сохранили каталог установки по умолчанию при установке SDK).
Наслаждайтесь.
Я поискал в Google FXcop 4.0 и нашел следующие полезные ссылки:
http://social.msdn.microsoft.com/Forums/en/vstscode/thread/74b2815a-626d-4aef-a08a-14c2fa72b506
Похоже, его еще нет, но планируется поддержка FXCop для .NET 4.0.
FxCop теперь улучшен для работы с .NET 4.0. Вы можете найти это здесь: http://blogs.msdn.com/b/codeanalysis/archive/2010/07/26/fxcop-10-0-is-available.aspx
Новая версия помечена как 10.0, как и Visual Studio.