NHibernate при работе с классами создаёт proxy объекты, поэтому необходимо все свойства делать виртуальными!
Я несколько раз по началу попадал на эти грабли:)
Если поднят домен, можно сделать так:
— win 2003 x64 сделать вторым контроллером домена и реплицировать всех пользователей
— win 2003 x86 понизить до обычной рабочей машины
— win 2003 x64 станет PDC со всеми пользователями/паролями.
Когда передо мной стояла задача миграции с win 2000 server на win 2003 server без использования описанного варианта, сделал следующее:
— написал утилитку, которая получала всю информацию о пользователях и сохраняла в файл
— на perl'e был небольшой парсер, который кушал файлик и создавал пользователей на новом домене
К сожалению пароли пришлось пользователям менять (но в моей ситуации это был плюс, я изменил политику паролей, и все старые под неё не попадали, более того пользователи использовали простые комбинации и часто ломали их учетные записи).
В идеале код документирует себя сам — это не отмазка, а реальность, к сожалению редкая. Если разработчик понятно называет методы и переменные, не запутывает логики, — код читается легко и просто. Возможно для этого потребуется что-нибудь почитать и усвоить. Например (C# 3.0) код, использующий лямбда выражения, сначала выглядит сложным и непонятным, в дальнейшем все становится хорошо.
В промышленном масштабе — согласен.
Каюсь, сам иногда пишу не как надо, а как быстрее, когда время поджимает. Но в целом стараюсь делать красиво, чтобы самому было приятно.
Хотелось бы написать об одном случае, который поведал мне недавно коллега по работе.
От крупного клиента им достался проект на доработку. Нужно было расширить функционал и оптимизировать работу. Проект изначально делали индусы. Там был очень интересный класс для тестирования одного бизнес компонента. Он содержал порядка 12 тысяч строк и с десяток тестов. Что делали индусы: написали 1 тест, всё остальные — копипаст с изменением нескольких параметров, т.е. термином «выделение метода» даже не пахло, тупой копипаст. После рефакторинга класс стал весить 600 строчек.
Я несколько раз по началу попадал на эти грабли:)
— win 2003 x64 сделать вторым контроллером домена и реплицировать всех пользователей
— win 2003 x86 понизить до обычной рабочей машины
— win 2003 x64 станет PDC со всеми пользователями/паролями.
Когда передо мной стояла задача миграции с win 2000 server на win 2003 server без использования описанного варианта, сделал следующее:
— написал утилитку, которая получала всю информацию о пользователях и сохраняла в файл
— на perl'e был небольшой парсер, который кушал файлик и создавал пользователей на новом домене
К сожалению пароли пришлось пользователям менять (но в моей ситуации это был плюс, я изменил политику паролей, и все старые под неё не попадали, более того пользователи использовали простые комбинации и часто ломали их учетные записи).
Каюсь, сам иногда пишу не как надо, а как быстрее, когда время поджимает. Но в целом стараюсь делать красиво, чтобы самому было приятно.
От крупного клиента им достался проект на доработку. Нужно было расширить функционал и оптимизировать работу. Проект изначально делали индусы. Там был очень интересный класс для тестирования одного бизнес компонента. Он содержал порядка 12 тысяч строк и с десяток тестов. Что делали индусы: написали 1 тест, всё остальные — копипаст с изменением нескольких параметров, т.е. термином «выделение метода» даже не пахло, тупой копипаст. После рефакторинга класс стал весить 600 строчек.