Брутально и бессердечно о программировании и проектировании
ГлавнаяФорумАртПаттерныТест-драйвЗаметкиВопрос-ответКнигорецензииСправочная

Magic strings

Этот антипаттерн, как можно догадаться из названия, похож на «Magic numbers». «Magic strings» — это прописывание в коде строковых значений для сравнения с какими-либо параметрами. Например, для сравнения со значением названия события, как в следующем примере:
0
1
2
3
4
5
6
7
8
9
10
11
if(event.type() == "begin")
{
    // Какой-то код
}
else if(event.type() == "process")
{
    // Какой-то код
}
else if(event.type() == "commit")
{
    // Какой-то код
}
 
Во-первых, не всегда понятно, что именно за событие кроется за его строковым именем. Во-вторых, как вы понимаете, компилятору совершенно все равно, какие строки сравнивать. Если вдруг написание имени события поменялось, или же просто была допущена орфографическая ошибка, то вы об этом во время компиляции ничего не узнаете.

Оглавление
Статистика
© 2007—2010 Inside C++ Коммерческие услугиКонтактная информация

стихи доброе утро. . фасадные термопанели с клинкерной плиткой. . www секс знакомства. . Грузовое такси Москва вопросы на сайте и Грузовое такси по Москве. . радионяня. . создание интернет магазин воронеж. . детское кресло для велосипеда москва. . свадебные фото. . пожарная лицензия мчс. . деревянные дома из клееного бруса москва. . стрела крана в интернет каталоге челябинск.