
Цель этого поста — познакомить вас с Правилами Трех, Пяти и Ноля и объяснить, какое из них и когда вам следует использовать. В следующем посте мы углубимся в применение Правила Пяти в различных сценариях.
User
Цель этого поста — познакомить вас с Правилами Трех, Пяти и Ноля и объяснить, какое из них и когда вам следует использовать. В следующем посте мы углубимся в применение Правила Пяти в различных сценариях.
Исследование исполняемого файла можно разделить на три этапа: поверхностный, глубокий, хирургический. На первом мы малыми силами собираем информацию о подопытном файле. Под «малыми силами» я подразумеваю легкие в использовании и широко распространенные средства анализа. В этой статье мы поговорим о них и для наглядности взломаем несложную защиту.
Динамический полиморфизм (виртуальные функции) занимает центральное место в объектно-ориентированном программировании (ООП). При правильном использовании он способствует созданию входных точек в существующей кодовой базе, с помощью которых новый функционал и поведение могут (относительно) легко интегрироваться в уже проверенную, хорошо протестированную кодовую базу.
Когда ручного тестировщика впервые просишь проверить метод REST API, того охватывает паника: «Как это делать? Я вообще почти ничего не знаю про API. Что делать? Как это тестировать?»
Спокойно. Без паники =) Я уже рассказывала на простом языке, что такое API. А сегодня я расскажу о том, как его тестировать. На самом деле почти также, как GUI: в первую очередь это тест-дизайн и придумывание проверок, а потом уже всякие API-штучки. Но и про них не стоит забывать.
Я дам вам чек-лист, к которому вы сможете обращаться потом — «так, это проверил, и это, и это. А вот это забыл, пойду посмотрю!». А потом мы обсудим каждый пункт — зачем это проверять и как.
После теории будет практика! Для неё возьмем метод doRegister системы Users — он находится в открытом доступе, можете дергать по ходу чтения и проверять =)
В прошлой статье я писал об особом виде оператора TOP, известного как ROWCOUNT TOP. Теперь рассмотрим несколько других интересных сценариев появления в плане оператора TOP.
Внедрение типа Undefined
в JavaScript, на мой взгляд, было ошибкой с далеко идущими последствиями. Именно разбору и предотвращению основных проблем, связанных с наличием данного типа, и посвящена эта небольшая публикация.
Я пишу компоновщик (linker). Не совсем обычный. Он ориентирован не на создание исполняемых файлов, а на облегчение быстрой итерации программы без необходимости в перекомпоновке (re-link) и повторном открытии после внесения изменений. Это «горячая загрузка» кода с детализацией. Подробности — к старту курса по разработке на С++.
Автор не является профессионалом в области защиты баз данных. Поэтому заранее просит не судить его строго. Если в рассуждениях допущена ошибка и предложенная схема не работает, автор с благодарностью примет замечание. А также автор просит извинить, если предложенная схема окажется чем-то банальным и уже давно используемым.
Строго говоря, я более чем уверен, что большинству пользователей Хабра не нужно объяснять, что такое IP-адрес. Тем не менее, мы, "Лаборатория свободного интернета", начали серию материалов, где буквально на пальцах и на примерах их жизни объясняем разные аспекты существования сети Интернет и разных часто вслепую используемых технологий.
Если есть идеи - про что еще мы можем рассказать - пишите в комментариях.
Важное уточнение: мы рассматриваем в статье только классический протокол IPv4. Внедрение протокола IPv6 хоть медленно, но идёт: по разным оценкам на 2022 год трафика по IPv6 передано от 20% до 40%. Чтобы не перегружать статью, про IPv6 мы напишем отдельно.
«IP-адрес (от англ. Internet Protocol) — уникальный числовой идентификатор устройства в компьютерной сети, работающей по протоколу TCP/IP» , – это снова определение по версии Википедии.
Ещё один уникальный числовой идентификатор, который вполне может оказаться неуникальным.
TCP/IP – это набор Интернет-протоколов, которому уже несколько десятков лет и который и обеспечивает нас всех связью.
Итак, IP-адрес. Он уже гораздо более известен широкой публике, даже участвует в широко распространённых мемах типа «Я вычислю тебя по IP». Кроме того, многие дети начинают знакомиться с этим понятием, когда возникает потребность поиграть с другом по сети.
Выглядит он вот так: 192.168.26.85
IP-адрес используется в Интернете непосредственно для связи между различными устройствами. Например, между сайтом Яндекса и вашим компьютером. Или между вами и другим игроком в Minecraft.
Введение
После установки системы Gentoo Linux на свой нетбук я неожиданно обнаружил, что в системе нет штатного средства выключения и перезагрузки от обычного пользователя без использования sudo.
Защитное слово автора
Сразу хотел бы отметить, что не призываю пользоваться данной программой, так как решение для управления выключением и перезагрузкой, предложенное мной, является нестандартным средством и по этой причине не может быть рекомендовано. Код программы также не может служить примером для обучения, поскольку автор программы не является профессиональным программистом. Данная статья и код на языке C публикуются в ознакомительных целях.
История вопроса
После установки системы Gentoo Linux на свой неутбук я неожиданно обнаружил, что в системе нет штатного средства выключения и перезагрузки от обычного пользователя без использования дополнительных средств вроде программы sudo, а исследование файла /etc/group показало, что в нём нет группы operator. Любые попытки добавить эту группу и пользователя в неё не принесли желаемого результата - компьютер не перезагружался от простого пользователя.
Несколько поразмыслив, я пришёл к идеи (вероятно, я не был первым) научить планировщик cron перезагружать и выключать компьютер . Для этого мной наскоро был написан скрипт на bash и добавлено задание в cron для суперпользователя.
Скрипт запускался раз в минуту от root, проверял файл в директории пользователя на наличие в нём управляющего символа и осуществлял перезагрузку или выключение, записывал в этот файл код 0 для бездействия, чтобы компьютер не начал перезагружаться бесконечно. Я и сам не заметил, что своими руками создал уязвимость в системе (хотя подозрения были). Спасибо участникам форума Linux.org.ru, которые вовремя указали мне на ошибки и дали ряд дельных советов по улучшению моей скромной системы.
Миллионы современных разработчиков активно используют язык программирования, который родился буквально за 10 дней в период экспоненциального развития интернета. Создатель JavaScript Брендан Эйх не так давно заново обратился к истокам созданного им языка и рассказал о том, как семена, посеянные им в 1995 году, теперь наконец-то взошли.
Как поддержать свою команду и самого себя, когда предсказуемости в мире становится всё меньше? У нас возникает тревога и страх о будущем. Их уровень зашкаливает, возникает ощущение, что происходящее в мире парализует, не осталось ничего определённого. Кажется, что всё, что раньше было стабильным, сейчас теряет свою опору, теряем её и мы сами.
Меня зовут Юлия Аравина и я расскажу про шесть мягких навыков, которые необходимы нам, чтобы не разрушаться в кризис. Я работаю в IT семь лет, по образованию психолог, руководила отделами обучения и развития сотрудников в крупных it-компаниях, занималась коучингом руководителей и команд. Последние два года — продолжаю делать это уже как независимый консультант. Также помогаю компаниям работать с ментальным здоровьем сотрудников. Поделюсь информацией о том, как преодолеть сложности, связанные с кризисом, пандемией, февралем/сентябрем 2022 и их последствиями.
Мы привыкли, что в крестиках-ноликах вначале один рисует крестик, затем второй рисует нолик. И так пока не соберётся линия из трёх подряд.
Всё логично, ведь на бумаге рисовать одновременно на одном поле затруднительно.
Когда же элементы рисуются на виртуальной бумаге, то рисовать одновременно не проблема. И именно в этом и отличие новой вариации игры.
Обзор существующих проблем, а также способов их решения и интересных контейнеров, позволяющих значительно увеличить удобство и производительность полиморфного кода.
Как часто вы обращали внимание на плавный скролл в мобильных приложениях?
В этой статье я предлагаю рассмотреть технические аспекты работы со сложными таблицами. Кстати говоря, работа с коллекциями будет аналогична.
Кажется, что это очень не важный элемент при их разработке. Но в действительности это не так. Для многих пользователей важен перфоманс — плавность прокрутки и производительность отрисовки, — потому что это обеспечивает комфортное использование приложения.
Получается, реализация плавного скролла является одной из наших приоритетных задач, решить которую очень непросто.