Найти в Дзене
ООП для продолжающих. Как работает таблица виртуальных функций?
Если вы думаете, что будучи способным дать ответы на вопрос о том, что такое инкапсуляция, наследование и полиморфизм (а то и, не ровен час, и перечислить все принципы SOLID), вы в совершенстве овладели пониманием ООП, спешу вас разочаровать - в действительности, это гораздо более глубокая тема, таящая в себе множество подводных камней, которые, кстати говоря, вполне могут встретиться на реальном собеседовании. Из этой статьи вы узнаете о том, что такое таблица виртуальных функций, виртуальный указатель,...
3 месяца назад
Вопрос, который завалил меня на собеседовании. Разбираемся в "умных" указателях C++
Отправляясь на очередное алгоритмическое собеседование по "плюсам", я чувствовала себя довольно спокойно: прослушав с десяток-другой подкастов из серии "Собеседование Junior/Middle C++", благополучно справившись с тестовым заданием, будучи готовой "пояснить за" многопоточность, сокеты и atomic'и, и, в конечном итоге, имея за своей спиной определенный опыт работы с языком, впору было задаться вопросом, а чего я, собственно, в этом С++не видела? Тем не менее, какие-то пробелы в знаниях имеются у всех: все обстояло хорошо ровно до той поры, как меня спросили про умные указатели...
3 месяца назад
Elasticsearch без Kibana: выживание в терминале и тонкости Query DSL - структура запросов, синтаксис, примеры
Следует признать, что история с обновлениями этого канала несколько затянулась - а все потому, что в продолжение этого времени я была занята собственной практикой в отношении elasticsearch - как оно водится, через "голый" API безо всякого графического интерфейса, и успела набить немало шишек на этом пути. Здесь, конечно, можно задаться вопросом, а к чему вообще все эти трудности, коль скоро в нашем распоряжении имеется прекрасная графическая оболочка под названием kibana? Во-первых, может так случиться, что однажды GUI попросту "не завезут", да и устанавливать его будет некуда...
6 месяцев назад
Задачка про анализ логов ELK. Казалось бы, что бы могло пойти не так?..
Июнь в этом году выдался холодным и дождливым, поэтому освободившееся досужее время в промежутке между защитой ВКР и непосредственным получением диплома было решено посвятить прохождению образовательной программы по противодействию кибератакам. В частности, одно из заданий, составляющая практическую часть курса, состояло в анализе логов elasticsearch: всего-то и требовалось, что по известным дате-и-времени (timestamp) начала атаки и "предварительном знании" об использованной "злоумышленником" программе найти требуемые сведения относительно user-agent'a...
6 месяцев назад
Как увеличить виртуальный жесткий диск? VBoxmanage, GParted и другие полезные инструменты для работы с дисками
Довольно часто можно столкнуться с ситуацией, когда по ходу работы внезапно оказывается, что первоначального объема ресурсов, выделенных виртуальной машине, оказывается недостаточно для выполнения текущих задач. В первую очередь, речь идет, разумеется, о количестве свободного места на предоставленном ей виртуальном носителе - собственно, именно о такой проблеме я рассказывала в одной из предыдущих статей, когда дефицит памяти едва не уложил на лопатки всю систему. В хорошем случае эта проблема решается...
7 месяцев назад
Что делать, если слетела графическая оболочка Ubuntu и как это исправить
Собственно, дело было так: понадобилось мне для нужд домашней лаборатории установить на виртуальную машину Ubuntu одну занятную программу под названием tpot. Установить-то я ее установила, однако, малость просчиталась в отношении нагрузки, которую могла бы выдержать система, и при первой же перезагрузке ВМ меня ожидало следующее: Для тех, кто худо или бедно знаком с основными компонентами дистрибутивов Linux, не будет большой новостью сказать, что gdm.service (он же GNOME) являет собой ни что иное, как модуль, ответственный за отрисовку красивого графического интерфейса...
7 месяцев назад
Помимо всего прочего, у меня имеется ещё одно увлечение, состоящее в графической визуализации изучаемых материалов на бумаге. В этом находит одно из своих отражений моё видение красоты в технических дисциплинах. Это полезно. Во-первых, по своему опыту скажу, что ведение конспекта - не важно, на лекции ли или дома за книжками - значительно повышает качество восприятия обрушивающихся на тебя массивов тяжеловесной технической информации. Есть вещи, которые попросту не предназначены для чтения лежа. Попытка же сделать это будет равнозначна восприятию исключительно на слух лекции по математическому анализу при условии, что до сего дня вам не приходилось иметь дел с данной дисциплиной - работает по принципу "в одно ухо влетело, в другое - вылетело". Ты учишься выискивать ключевые моменты, выписываешь их, по ходу дела неоднократно прогоняя ключевые тезисы внутри головы, тем самым закрепляя их шансы укорениться внутри собственной нейросети. Это почти также ценно, как решать задчки и набирать код собственными руками. Во-вторых, вся эта аналоговая инфографика привносит гораздо больший творческий подход в учёбу, что, опять же, повышает её запоминаемость - мозг имеет свойство отдавать предпочтение фактам, имеющим яркую эмоциональную окраску, по сравнению с сухими числами. Наконец, даже принимая во внимание дополнительные затраты времени, потраченные на выведение красивых заголовков и схем, их точно нельзя будет назвать потерянными даром, поскольку в продолжение этих минут вы волей-неволей неоднократно перечитываете и осмысляете конспектируемое - а там, не ровен час, в голове что-то, да останется. Так что покуда и на каникулах времени зря не теряю, пользуясь возможностью совместить приятное с полезным.
7 месяцев назад
Выходные с ELK. Часть 2: установка и настройка Fleet
В предыдущей части я рассказала о своем знакомстве с программным стеком ELK (elasticsearch-logstash-kibana), подробно расписав процесс установки и базовой настройки этих сервисов с учетом разного рода непредвиденных обстоятельств и неочевидных тонкостей, от которых зависит то, будет ли у вас работать что-то или нет. По итогам этих экспериментов, мне удалось поднять собственный сервер elasticsearch с графической оболочкой, реализуемой kibana, однако, впереди оставалась не менее значительная часть...
7 месяцев назад
Выходные с ELK. Часть 1: установка elasticsearch и kibana, решение проблемы с блокировкой репозитория, настройка конфигурационных файлов
Коль скоро Выпускная Квалификационная работа наконец-то оказалась благополучно защищена, а до выдачи диплома оставалось еще порядка месяца, было решено посвятить внезапно освободившееся время тому, чтобы поизучать что-нибудь "для себя". И таковая возможность не заставила себя долго ждать, так как внезапно мне поступило приглашение записаться на курс по противодействию кибератакам. Можно сказать, что таким образом я убивала сразу нескольких зайцев, так как в конечном тоге мне так или иначе пришлось...
7 месяцев назад