Обратитесь к главе 18 книги "Совершенный код" Стива Макконнелла. Там все подробно описано.
Если вкратце, то табличные методы являются заменой выражениям if
и case
. В большинстве случаев их можно заменить.
Различаются следующие способы поиска:
- прямой доступ (по индексу)
- индексированный доступ (по ключу)
- ступенчатый доступ (по верхней границе для диапазонов данных)
Хранить в таблице можно как данные, так и действия, которые нужно произвести (в терминах .NET это Action
или Func
).
Структуры данных (т.е. сами "таблицы"), применяемые в табличных методах:
- массивы (для прямого и ступенчатого доступа)
- хэш-таблицы (для индексированного доступа,
Dictionary<K, V>
в терминах .NET)