Шаблоны проектирования: структурные паттерны ч.2

Продолжение статьи про структурные паттерны проектирования.
В этой части я расскажу про паттерны:
«Фасад» (Facade) — позволяет скрыть сложность системы путем сведения всех возможных внешних вызовов к одному объекту, делегирующему их соответствующим объектам системы.
Шаблон «Приспособленец» (Flyweight) - используется для облегчения работы с большим числом мелких объектов.
«Заместитель» (Proxy) — позволяет контролировать доступ к объекту, перехватывая все вызовы к [...]

Шаблоны проектирования: структурные паттерны ч.1

В журнале PC Magazine опубликовали вторую и третью части моей статьи про классические паттерны проектирования. Первую часть я уже опубликовал здесь в виде скана, но этот формат не понравился большинству читателей - с картинок читать неудобно. Так что я решил остальные 2 статьи разделить на 4 части и опубликовать их тут в виде текста.
Напомню, [...]

Поддельные антивирусы

Раз Downadup начал скачивать на зараженные компы поддельные антивирусы, то наверняка скоро многим придется с ними столкнуться.
Да и вообще этот тип “вирусов”, которые притворяются антивирусами, сейчас очень распространен, так что я решил написать про симптомы заражения, про опасности таких поддельных вирусов и про свой опыт лечения одного компьютера, зараженного таким поддельным антивирусом.

Около месяца назад мне [...]

Мудрость предков

Читаю сейчас книгу Jon Bentley: More programming Pearls (на русском ее не нашёл). Это продолжение его книги Жемчужины программирования. Саму книгу не могу никому посоветовать, так как она мне не очень-то нравится - написана 20 лет назад и большинство проблем, рассматриваемых в книге, уже устарело.
Но есть в этой книге одна глава, которая мне понравилась - [...]

Библия юнит-тестирования

Перевод философского рассказа о unit-тестировании.

Введение переводчика
В мае 2006 года, плохо подготовленная экспедиция в Гималаи сбилась с пути. После двух недель скитаний, страдая от голода, жажды и озонируя воздух, как может его озонировать группа затерявшихся на две недели неопытных путешественников, наши страдальцы оказались у входа в древнюю пещеру.
В пещере они увидели лабиринт боксов. В каждом боксе [...]

Ждём новой эпидемии?

Microsoft продолжает публиковать пугающие Security Bulletin о критических уязвимостях в Windows, которые позволяют выполнить удаленно любой код на машине!
Чуть больше месяца назад был фикс для критической дыры в IE MS08-078. А вчера опубликовали MS09-002 и MS09-004. Первый - про дыру в Internet Explorer, второй - в Microsoft SQL Server. Тип ошибок самый плохой - возможность [...]

Я умею программировать на С++!?

К одному из предыдущих постов я получил комментарий с вопросами про программирование. Вопросы интересные, так что отвечаю на них в отдельном посте.
Вопрос:

У тебя за плечами восемь лет работы программистом на С++, как я понимаю. Вопрос связан с собственным желанием научиться как-то программировать.
Что включает в себя понятие “знать язык”, или “уметь программировать на нём”? Язык - [...]

Сделай свой интернет безопасным

Как распространяются вирусы? Интересует ли вас этот вопрос? Скорее всего нет. Наверняка вас интересует только то, как вы лично можете защититься от вирусов. И это правильная позиция.
И я вам могу дать нужную информацию, которая защитит вас от 99% вирусов в интернете. Итак, как вы [...]

Новый червь Downadup

Расскажу-ка я вам немного про сегодняшнюю угрозу номер 1 в мире вирусов. Это безусловно червь Downadup (другие имена: Conficker, Kido). Если вы хоть немного разбираетесь в компьютерах или администрируете что-то - обязательно прочитайте про него всё, что сможете. Например в статье How [...]

Страшилки: зачем нужен антивирус?

Писал сейчас ответ на комментарий к своему предыдущему посту и настолько он получился длинный, что решил его отдельно в пост вынести. Итак, зачем же вообще нужен постоянно работающий антивирус, сканирующий все активности вашего компьютера, если компьютер начинает работать намного медленнее от этого?
Ведь можно определять заражение по симптомам - например, когда все [...]