Математика необходима для разработчиков в некоторых полях, но почти бесполезна в других.
, Если Вы - разработчик игр и должны работать с физикой много - понимание математики крайне важно. Если Вы работаете с усовершенствованными визуальными средствами управления - Вы не могли бы сделать многого без геометрии. Если бы Вы планируете сделать некоторые финансовые вычисления - это ДЕЙСТВИТЕЛЬНО помогло бы иметь основательное знание статистики.
, С другой стороны, за прошлые 5 лет у меня было только 2 или 3 проекта, где ЛЮБАЯ сумма математики требовалась вообще. Из них было только 1 возникновение, когда поиск Google не помог.
В конце дня даже финансовые вычисления - очень часто что-то, что Ваши клиенты делают для Вас и дают Вам формулы для реализации.
Поэтому, если Вы находитесь в 'прикладном программном обеспечении' бизнес, Вы, вероятно, никогда не будете использовать свой математический градус. Если Вы находитесь в академической математике программного обеспечения, крайне важны.
После многих исследований и экспериментов ответ:
в это время (.NET 3.5) нет механизма, который не существует Позволяет обрабатывать все возможные исключения, которые могут возникнуть в контексте вызова WCF.
Исключения, которые случаются во время выполнения метода службы, можно легко обрабатывать с помощью:
Однако для ошибок инфраструктуры с низким уровнем WCF нет идеального решения. Наилучшее решение, которое существует, кажется, для реализации пользовательского канала для достижения большего количества исключений.
В Этот отчет об ошибках Microsoft Connect , Microsoft подтверждает, что нет способа обрабатывать все типы ошибок инфраструктуры WCF.
В эта нить на форумах Microsoft WCF , есть образец о том, как реализовать пользовательский канал. Этот раствор работает только для HTTP, а не для HTTPS. Также некоторые ошибки инфраструктуры WCF не попадают на заказ канал (см. Более подробную информацию в этом конкретном потоке).
Используйте FaultContracts. Затем неисправность может быть устранена на стороне клиента.
http://msdn.microsoft.com/en-us/library/ms732013.aspx
Это также намного лучше для отладки, поскольку часто вы разрабатываете клиент и не хотите останавливать сервер для целей отладки.
На стороне клиента используйте блоки try / catch для перехвата всех исключений / ошибок. Определенно существуют ошибки, которые невозможно обнаружить на стороне сервера, например, проблемы со связью, поэтому вам в любом случае необходимо обрабатывать ошибки на стороне клиента.
Если вам нужна централизованная обработка ошибок, вы можете создать службу, которая принимает сообщения обо всех ошибках, отправьте ошибку на этот сервер и запишите ее.
Дело в том, что если сервер недоступен или не может обработать сообщение, на сервере не будет ошибки - ошибка появится на клиенте ("TimeoutException "или другие).
Таким образом, в этих случаях наличие IErrorHandler на сервере действительно не поможет - поскольку ошибка действительно происходит на клиенте (невозможно установить соединение из-за сбоя сети или опечатки на сервере адрес или подобные вещи).
Таким образом, на стороне клиента вам обязательно нужно использовать try .... перехватить все вызовы вашего сервера.
Marc
Настройте диагностическую трассировку и проверьте журналы с помощью Service Trace Viewer Tool . Ссылка также содержит информацию о настройке трассировки.