Это скорее анти-паттерн, но я видел то, что я называю паттерном "Держите все в одном месте". Это было большое приложение, где все переменные, которые не были локальными, для каждого класса, КАЖДОГО класса, хранились в одном классе с именем P (для параметров). Кроме того, все статические переменные были сохранены в классе под названием ... подождите ... S.
Во всяком случае, каким-то образом этот проект стал довольно большим, и вдруг ничего не получилось. (Меня наняли примерно в это время). Удивительно, но программа не вылетала, у нее было множество побочных эффектов, которые заставляли приложение работать некорректно. Как вы можете себе представить, несколько потоков, все обращаются к P и изменяют переменные, без блокировок или синхронизации.
Я говорю вам, это было действительно зрелище.
Компания открыла новый офис и наняла 3 человек для его обслуживания, я был одним из них. Нам дали программу и сказали исправить. Мы провели дни, сидя без дела, просто хлопая себя по лбу. Теперь у меня на лице отпечаток ладони.
Другие забавы ... переменная с именем "fudgeFactor". Все еще не знаю, что это сделало.
Способ получения следующего символа ascii ...
char getNextChar(char previous) {
switch (previous)
case 'a': return b;
case 'b': return c;
...
case 'z': return a;
}
В любом случае, это мой забавный образец ... с добавленной какой-то дополнительной стороной.