Метка «лог»

Недавно я искал удобный, простой и в то же время функциональный логгер для своих приложений. В принципе, для этого уже существует много фреймворков. Но я искал ни сколько доступный для копипастинга код, сколько сами подходы к ведению лога. Спустя некоторое время я наткнулся на Log 4 C++ — замечательный фреймворк. Представленный в этой статье класс, для ведения лога, основан на идеях Log 4 C++.

Большинство подобных фреймоворков предоставляют еще множество тонких настроек и опций, которые не были включены мной в мой небольшой класс, что и делает его простым в использовании. Весь код вписывается в один единственный .h файл и легко понятен, поэтому может быть легко изменен под конкретные нужды.
Код использует часть функций С++11, однако, заставить его работать со старой спецификацией не составит труда..
Читать полностью »

Среди программистов очень много увлеченных людей. Проявлять искренний интерес к своей работе, читать специальные книги и форумы даже в свободное время в этой среде, если не правило, то точно и не исключение. Тогда почему в результате столько некачественного программного обеспечения? Как получается, что студент, с горящими глазами спорящий о недостатках целых языков программирования и знающий не меньше дюжины паттернов проектирования, вдруг принимает активное участие в создании некачественной системы? Не в начале своей карьеры, а год за годом.

Да, можно сослаться на большое количество низкоквалифицированного персонала, зарплата которого зависит от количества написанных строк кода или от умения долго смотреть на монитор, не моргая. Но такие сотрудники есть практически во всех отраслях. Строители имеют более низкую квалификацию, чем архитекторы, но это не мешает зданиям в большинстве своем быть пригодными для полноценного использования без дополнительных «заплаток».

На мой взгляд, основных причины здесь две. С первой ничего не поделать. Это время, или, как чаще говорят, постоянные изменения. При разработке программного продукта, даже если он соответствует всем требованиям заказчика, в дальнейшем потребуются доработки, часто неожиданные для исполнителя. Они практически неминуемы и не всегда вписываются в архитектуру системы. Со временем программный комплекс приходит в негодность. Но время разрушало вещи и крупнее – удивляться нечему.

Вторая причина гораздо более прозаична. Невнимание к мелочам. Особенно в начале проекта. И чем моложе команда, тем эффект катастрофичнее. Конечно, гораздо интереснее обсуждать перспективы использования мультиметодов [1], чем следить за тем, чтобы операторы отделялись пробелами. Да и к конечной функциональности подобные мелочи особого отношения не имеют. Не лучше ли сначала сконцентрироваться на первоочередных требованиях, ведь время проекта и бюджет ограничены…
Читать полностью »

Может стать весьма затруднительно использовать С++ в масштабных проектах, где вы просто физически не может следить за всеми переменными.
Избавиться от некоторых трудностей может помочь простой класс для ведения лога, который, в большинстве случаев (но не всегда) может избавить вас от зависимости от отладчиков.Читать полностью »

image Давно меня заботила проблема, что пользователь шаред-хостинга не всегда знает, что происходит с его аккаунтом — зашёл ли кто по ftp, выполнилось ли задание cron, был ли доступ по ssh, куда делось письмо и вообще отправлялось ли. У большинства хостеров (и у нас в том числе) пользователь мог задать вопрос в службу техподдержки и ждать, когда специалист с соответствующими правами и квалификацией сделает подборку нужных логов. Бонусная проблема — нельзя вот так просто взять и одной командой посмотреть записи в логах относящиеся к пользователю. Это создаёт трудности для системного администратора.

Казалось бы простая задача с самого начала начала преподносить сюрпризы.
Читать полностью »

Vader — простой логгер для DartНесколько дней назад я решил пощупать в каком состоянии на данный момент находится представленный некоторое время назад язык Dart. Самый простой, на мой взгляд, способ попробовать возможности языка — это написать на нем нечто простое и законченное. Недолго думая, я решил написать простенький логгер для Dart в объектно-ориентированном стиле. Под катом изложено мое впечатление от Dart и краткое описание того, что получилось.Читать полностью »

Исторически так сложилось, что в программировании используется английский язык. В основном это касается названий идентификаторов, но и сообщения в программе/библиотеке часто бывают на английском языке.
Использования английского языка может упростить использование и обслуживание программы, особенно при ее использовании «в мировом масштабе». На свете очень много людей, если и не знающих английский в совершенстве, то знающих хотя бы на уровне читателя инструкций. Поэтому аудитория англоязычных сообщений достаточно велика.
Кроме этого, возможные нештатные ситуации с отсутствием нужного шрифта в системе или неправильноЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js