|
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера coding4.net/Записи в блоге |
Обработка и логирование исключений под Windows и в веб сервисах (часть 3)
2013-07-17 02:30:00 (читать в оригинале)
Продолжаю цикл переводов понравившейся мне статьи автора James Dingle про исключения. Первый пост посвященный этой статье находится здесь.
1. Выбрасывайте исключение когда вы не знаете, что делать дальше
Думайте о вашем коде как о компании. Индивидуальные функции и методы это индивидуальные сотрудники, классы это менеджеры. Библиотеки это главные офицеры, и точка входа в Main() это ваш CEO.
Во всех компаниях, сотрудники иногда встречаются с ситуациями к которым они не готовы. Или которые слишком велики для них, чтобы они взяли ответственность за любой решение. Ваш доставщик пицы не может починить свой мотоцикл, если тот не хочет заводиться. Что он сделает в таком случае ? Он позвонит своему менеджеру
Сделайте тоже самое со своим кодом. Когда вы столкнулись с ошибкой. Но при этом вы не можете решить что делать. Потому что решение зависит от вещей за пределами контекста метода или функции, которые выбрасывают исключение. Не стыдитесь этого. Ваш метод должен сделать то, что он должен сделть или провалиться. Нет никакой проблемы в том чтобы провалиться в случае, если нет способа решить проблему соответствующим образом.
Пример: вы написали функцию GetImageSize(string fileName), которая рассчитывает размер файла с изображением по имени файла находящегося на диске. При этом, возможно, вы используете эту функцию во множестве ситуаций в вашем приложении. Если эта функция накроется или заглючит (потому что например указанный файл не картинка), то не пытайтесь ничего предпринять. Вы пропустили контекст (находитесь вне его). Внутри этой функции вы не имеете ключевой информации кто попросил сделать это и для чего.
Так что вызвать NotAnImageException или BadFormatException это все что вы можете сделать.
if( header.FileFormat != ”JPEG” ) throw new NotAnImageException();
Отслеживание не всегда необходимо. Нет ничего плохого, чтобы логировать ситуацию здесь, но как вы увидите позже это не сильно вам поможет.
Продолжение следует ...
Структурные изменения в Microsoft
2013-07-16 22:40:00 (читать в оригинале)
С начала июля корпорация Microsoft может претерпеть некоторые структурные изменения. По данным некоторых СМИ, это связано с завещанием главы корпорации Стива Балмера.
Новоизбранная стратегия корпорации «Майкрософт» станет причиной нескольких серьезных изменений в ряде подразделений компании. Такими подразделениями станут бизнес-сегмент, подразделение по разработке приложений и услуг, ответственных за аппаратные платформы.
Что конкретно изменится в «Майкрософт»? Ожидаемые изменения называют грандиозными. Точная информация о них известна лишь узкому кругу доверенных лиц. Значительная часть топ-менеджеров компании до сих пор остается в неведении о подробностях проводимой реформы.
По сообщениям от AllThingsDigital, изменения могут быть связанными с рядом возможных сокращений и некоторыми кадровыми перестановками в руководящем звене многомиллиардной корпорации.
По опубликованным ранее данным от The Verge, возглавить подразделение Windows должны Терри Майерсон и Жюли Ларсон-Грин, которые сегодня являются руководителями подразделений Windows и Windows Phone. Такой шаг означает слияние данных двух подразделений в одно. Первым толчком для этого является выход Windows Phone 8, работающей на одном ядре, с настольной операционной системой.
На конференции Microsoft BUILD 26 июня речь, скорее всего, пойдет о проводимых в компании изменениях (если они действительно произойдут). Об этом станет известно уже совсем скоро. На озвученной конференции также ожидается начало запуска бета-тестирования Windows 8.1. Также возможна презентация апдейта номер два для Windows Phone 8, который называется GDR2.
Если вам нужна бытовая техника, а живете вы в Украине. То вам поможет интернет магазин 5ok. Например, там можно холодильник киев купить онлайн.
Обработка и логирование исключений под Windows и в веб сервисах (часть 2)
2013-07-15 23:13:00 (читать в оригинале)
Продолжаю цикл переводов понравившейся мне статьи автора James Dingle про исключения. Предыдущий кусок находится здесь.
Почему я должен писать эффективные журналы исключений ?
Написание эффективной системы перехвата и логирования исключений это не самая сексуальная (приятная, красивая) часть вашего приложения или службы. Хорошее или плохое логирование не изменит то, что делает ваше приложение. Так зачем заниматься и тем и другим ? Однако, это одно из наиболее важных свойств вашего продукта в случае, если кто-нибудь захочет исследовать проблемы возникшие в нем.
Я придерживаюсь стандартов кодирования ориентированных на качество. Мои приложения полностью протестированы. Почему я нуждаюсь в логировании и обработке исключений ?
Приложения никогда не бывают автономны, они всегда живут внутри окружения. Когда окружение не ведет себя так, как ожидает ваше приложение. Тогда ошибки, возможно, произойдут.
Ваше приложение не так часто диагностирует себя в другом или неправильном окружении. Но оно может сказать вам о том, что оно ожидало, и чего оно не получило.
Если ваше приложение исполняется в более сложном окружении, чем кокон в котором оно было разработано. Или кто то овладел вашим кодом и добавил в него новые особенности (возможности). То, возможно, он будет нуждаться в анализе того, что же он сделал не так.
Иногда бывает очень сложно подключить отладчик на продакшене и приходится выполнять в уме код. Иногда идентификация набора действий, который привел к ошибке, это вызов само по себе. Например, поиск условий гонки между несколькими задачами, которые привели к замку смерти.
И да, возможно, вы захотите исследовать ваши собственные ошибки тоже.
Так что, давайте начинать. В качества предварительного чтения советую это.
Продолжение следует ...
Обработка и логирование исключений под Windows и в веб сервисах (часть 1)
2013-07-15 15:50:00 (читать в оригинале)
Начинаю цикл переводов понравившейся мне статьи автора James Dingle про исключения. Оригинал находится здесь: Efficient logging and exception handling in Windows and Web services : Part 1 – Raising exceptions, writing dumps .
Есть много статей обсуждающих лучшие практики работы с исключениями. И они почти все рекомендуются к прочтению. Они обычно обсуждают паттерны кода. Но в этой статье я буду обсуждать паттерны дизайна (проектирования) приложений.
Чтение логов - наиболее часто оно представляет собой путешествие в ад.
Разве вы не проводили часы и дни расследований случаев исключений. Только потому, что вы имели нерелевантную или не полную информацию в ваших лог файлах ? И вы не были в отчаянии, от того как бедно было сделано логирований в этом инструменте или сервисе ?
Случалось ли так что вы подключали сложный набор отладчиков и настройщиков с кучей скрытых настроек и звуковым оповещением обнаружения исключений ? И все это только для того, чтобы обнаружить скрытые ошибки, которые ваше приложение не хотело вам показывать. Скрытые как древнее сокровище в гробнице программных ошибок.
Если все это случалось с вами, то вы, должно быть, были сильно удивлены и дизориентированны загадочностью залогированной информации. Пытаясь найти ваш ключ, который помогает решить ранее неразрешимую загадку, в направлении этих иероглифов невыразимых событий. Хихикая от своего невежества о том, как звучит то, что там написано, на другом языке. Примечание: здесь видимо имеется ввиду произнесение написанного иероглифами.
Мы тоже сталкивались с этим. И теперь мы горды тем, что мы написали такую статью вам в помощь.
Продолжение следует ...
WebGL теперь и в Internet Explorer 11
2013-07-15 14:38:00 (читать в оригинале)
Трудно найти того, кто стал бы спорить о положительных сторонах в последовательности действий. Судя по всему, корпорация «Майкрософт» также придерживается такого мнения. Это связано с тем, что новый Internet Explorer 11 будет совместим с WebGL. Работать с технологией браузер будет с самого начала, как это делают Google Chrome или FireFox.
Необходимо отметить, что совсем недавно корпорация напрочь отказывалась от использования данной программной библиотеки для просмотра графики в 3D. Это было связано с соображениями безопасности. Дело в том, что работа WebGL предусматривает необходимость прямого доступа к видеокарте пользователя. Яблочная корпорация, в свою очередь, объявила о поддержке технологии не только на настольных операционных системах, но и на мобильных, благодаря чему «Майкрософт» стал выглядеть консерватором.
Кроме WebGl, в IE11 будут улучшены двухмерная графика, аппаратное ускорение видео, браузер будет более экономичным для ресурсов и батареи компьютера, в отличие от десятой версии продукта. Новая версия данного браузера будет доступна и для пользователей операционной системы Windows 7. Это стало известно в момент объявления о выпуске Windows 8.1.
Поддержка HTML5 в новинке от «Майкрософт» также значительно улучшена. Об этом достаточно недвусмысленно сообщает факт перехода популярного сервиса потоковых видео Netflix с Silverlight на новый формат. Переход мотивируется отсутствием достаточных возможностей в первой, что препятствует введению множества новых разработок. Однако необходимо отметить тот факт, что HTML5 на данный момент является доступным лишь для юзеров IE11 и Chromebook.
Это не стало большим сюрпризом, так как корпорация «Майкрософт» достаточно ясно показала намерение продвижения новых технологий. Подтверждение этому было получено благодаря утечке информации в Интернет. Данная информация рассказала о том, что технология Silverlight, конкурент Flash, не получит пятую версию.
Netflix's Tech Blog рассказал, что с помощью нового браузера представится возможным просмотр видео в разрешении 1080р лишь при помощи GPU-ускорения.
А если вы решили сделать небольшой бизнес, и вам нужны станки для производства мебели, то заказывать их я рекомендую в этой компании.
Категория «Бизнес»
Взлеты Топ 5
|
| ||
|
+1006 |
1094 |
ДеВаЧкА-НеФоРмАлКа |
|
+989 |
1001 |
White_Rabbit_Pics |
|
+988 |
1000 |
Смотрим на жизнь сквозь сетку |
|
+934 |
1101 |
Вадим Гоц |
|
+928 |
932 |
Блог о подарках и праздниках |
Падения Топ 5
|
| ||
|
-1 |
10 |
Блог Находчивого Продавца |
|
-1 |
459 |
alexfox2011 - BLOG.I.UA |
|
-2 |
3 |
Деньги в интернете |
|
-5 |
992 |
Allendy.ru - экономический портал |
|
-6 |
729 |
Натяжные потолки Херсон |
Популярные за сутки
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.

