Здравствуйте, Аноним, Вы писали:
S>>Это бесполезно — вы никак не используете выученные фонемы и они тут же забываются, сам так тратил время. В первую очередь надо набирать словарный запас и регулярно его использовать — т.е. побольше читать на английском
А>ну как его можно регулярно использовать, если вокруг тебя не англоязычные...
Элеменарно

Чтение книг/блогов/форумов, поиск решений и общение на англоязычных сайтах.
А>что значит пометить как failsafe? как это делается?
Да посто в комментариях — чтобы следующий кодер не поломал чего. Или используйте ReliabilityContractAttribute, только неплохо предварительно
почитать — куда оно и зачем.
А>если я оберну в try/catch DoWork — то что случится? inEdit как была тру в случае вылета эксепшена, так и установится в тру. EndEdit не выполнится.
Угумс. А теперь представьте, что 99% вашего кода так или иначе дёргает BeginEdit и отлавливает исключения. Приложение не падает, но сделать вы ничего не сможете. Или гораздо худший сценарий: BeginEdit вызывается очень редко и часть кода не отлавливает исключения. Как результат, приложение будет падать нечасто, но ВНЕЗАПНО. И ни по стеку вызовов, ни дампу вы не узнаете настоящую причину падения — проблема возникла давным-давно.
А>Я понимаю, что нужно следить чтобы значения переменных до вызова и после были идентичными. В таком случае, как я понимаю, подводных камней не предвещается
Не только значения полей. События, внешние ресурсы (например, файлы или ключи реестра), блокировки — всё что так или иначе влияет на логику вашего (или чужого) приложения не должно находиться в рассогласованном состоянии.
А то некоторые попользуются таким "надёжным" ПО и начинают
предъявлять претензииАвтор: McSeem2
Дата: 30.11.10
к дотнету в целом.