Как помнить меньше, но знать больше

Как помнить меньше, но знать больше

@wawan_pro

Есть в программировании такой термин, "цикломатическая сложность". Это количество возможных маршрутов через программный код. Например, если исходный код не содержит никаких точек ветвления или циклов, то сложность равна единице, поскольку есть только единственный маршрут через код. Если код имеет единственный оператор if, содержащий простое условие, то существует два пути через код: один если условие истинно, и один — если ложно.

Соответственно, чем эта сложность меньше, тем проще понимать, тестировать и отлаживать код. И программисты обычно стремятся эту сложность уменьшать.

Тот же принцип можно применить и в жизни.

Например, запомнить что-то бинарное можно очень просто. Достаточно запомнить только один из вариантов.

Это важно запомнить)

Если мы представим это в коде, получится так

трудно запомнить

Тут у нас 2 условия и 4 варианта развития событий. Кроме того, мы дважды проверяем по сути одно и то же условие.

гораздо проще

Тут достаточно запомнить только вариант good, второй вариант запоминать не нужно, т.к. он логически вытекает из первого.

Если попытаться запомнить обе эти пары вариантов, то во-первых придется запоминать в 2 раза больше, а во-вторых можно запутаться.

А если вариантов больше?

Например, попробуем запомнить правило, как правильно использовать приставку "пол" в русском языке.

Правило такое:

  1. Приставка "полу-" всегда пишется слитно. (Пример: полукровка)
  2. Если слово начинается на согласную, то "пол-" будет писаться слитно. (Примеры: полчетвертого, полстакана)
  3. Если слово начинается на гласную, то "пол-" пишется через дефис (пол-апельсина, пол-окна)
  4. Если слово начинается на Л, то "пол-" тоже пишется через дефис. (пол-лба, пол-лимона, исключение: поллитровка)
  5. Если между "пол-" и словом есть другое слово, то "пол" пишется раздельно. (пол третьего урока, пол круглого стола)
  6. С именами собственными "пол-" всегда пишется через дефис. (пол-Африки, пол-Москвы)

Сложно? А то! Как же это запомнить?

Можно заметить, что вариантов написания всего 3: слитно, раздельно и через дефис.

Первое правило с "полу" запомнить легко, т.к. оно выполняется всегда. Достаточно запомнить хоть один пример. Правило 5 тоже вполне очевидное и тоже не особо нуждается в запоминании. И это единственный вариант раздельного написания.

Остается 2 варианта: слитно или через дефис. Можем применить вышеописанное правило с бинарным выбором.

Слитно у нас пишется только в одном случае – в случае с согласной первой буквой. А значит, достаточно будет запомнить только это одно правило и то, что в остальных случаях используется дефис.

Всё просто

Итого, мы можем вместо 6 правил запомнить всего 3, причем первые два вообще-то очевидны и так. Цикломатическая сложность уменьшилась в разы.

Можно вспомнить более сложный пример:

Невозможно эту хрень запомнить

Чтобы знать эту табличку, не обязательно её зубрить. Достаточно запомнить всего три вещи.

Тригонометрический круг

Чтобы вспомнить всю таблицу, просто представьте этот круг. Радиус здесь является гипотенузой прямоугольного треугольника (ACO).

Представили? Теперь первая вещь, которую нужно запомнить – это какая-то опорная точка, из которой потом будет высчитываться всё остальное. Например я запомнил, что синус нуля - ноль.

sin(0)=0

Если вспомнить тригонометрический круг и то, что синус нуля - ноль, можно логически вывести, например, и определение синуса. Это отношение противолежащего катета к гипотенузе. А так как гипотенуза у нас равна единице, то синус будет равен отрезку на оси y.

Второе, что нужно запомнить - это правило, по которому будет считаться остальные величины. Например:

чем больше угол, тем больше синус

Опять же, представив круг и то, что sin=y, это легко вывести. С косинусом, очевидно, ситуация противоположная. Это и так все помнят.

Остается только третья вещь – тангенс и котангенс. А запомнить достаточно только один из них так как они обратные друг другу.

tg⍺ = sin⍺ / cos⍺

Если вы уже просекли фишку, то знаете, что тут опять не обязательно запоминать, что это синус, деленный на косинус. Достаточно запомнить, что синус сверху.

Итак, теперь вместо 30 значений таблицы достаточно запомнить только одно значение и 2 правила, по которым можно вычислить все остальные. Цикломатическая сложность уменьшилась уже на порядок.

проще некуда

Пользуйтесь этим лайфхаком! Уменьшайте сложность. Это не только освободит вашу голову от ненужного мусора, но и заставит вас искать и пытаться понять именно принципы и законы, лежащие в основе. Потому что их потом намного проще понять и запомнить.

Знание некоторых принципов легко возмещает незнание некоторых фактов.

Запоминайте больше, и не забывайте подписаться)

https://t.me/wawan_pro

Report Page