Ответ
Принцип KISS (Keep It Simple, Stupid) — это концепция, призывающая делать код максимально простым и понятным, избегая излишней сложности. Чем проще решение, тем легче его поддерживать, тестировать и модифицировать.
Пример:
Вместо сложной цепочки условий:
fun calculatePrice(price: Double, discount: Double): Double {
return if (discount > 0) {
price - (price * discount / 100)
} else {
price
}
}
Лучше упростить:
fun calculatePrice(price: Double, discount: Double) =
if (discount > 0) price * (1 - discount / 100) else price
Плюсы:
- Уменьшает вероятность ошибок
- Упрощает чтение кода
- Облегчает рефакторинг
Ответ 18+ 🔞
Да ты послушай, что за мудя тут у нас в индустрии творится. Люди, блядь, такие навороченные системы строят, что потом сами в них путаются, как мартышлюшки в джунглях. А всё потому, что забыли про одну простую, как хуй с горы, вещь — принцип KISS. Расшифровывается, ёпта, «Keep It Simple, Stupid». Что в переводе на наш могучий означает: «Делай проще, долбаёб».
Серьёзно, волнение ебать, когда видишь, как чувак вместо одной понятной строчки нагородил овердохуища условий, циклов и проверок на null. Сидишь, разбираешь эту кашу, и подозрение ебать чувствую — а не пиздопроебибна ли это конструкция? Ведь главная фишка в том, чтобы код был как прозрачное стекло: посмотрел — и сразу ясно, что эта штука делает. Не надо быть гением, не надо гадать, какого хуя тут этот класс наследуется от абстрактной фабрики посредников.
Смотри, вот тебе живой пример. Допустим, надо цену с дисконтом посчитать. Нормальный человек написал бы так:
fun calculatePrice(price: Double, discount: Double) =
if (discount > 0) price * (1 - discount / 100) else price
Всё. Чисто, ясно, без соплей. А теперь глянь на творчество какого-нибудь хитрожопого архитектора, который решил, что он самый умный:
fun calculatePrice(price: Double, discount: Double): Double {
return if (discount > 0) {
price - (price * discount / 100)
} else {
price
}
}
Ну и? В чём разница-то, спросишь? А разница в том, что первый вариант — это как прямой удар в лоб. Ты его видишь и сразу понимаешь. Второй — это уже какая-то церемония с лишними скобками и ключевыми словами. Мелочь? А вот из таких мелочей и вырастает потом код, в котором доверия ебать ноль, потому что разбирать его — тот ещё геморрой.
Плюсы от следования этому принципу — просто космос, я тебе скажу. Во-первых, ошибок меньше, потому что негде им прятаться в этой простоте. Во-вторых, читать такой код — одно удовольствие, даже в понедельник утром с похмелья. И в-третьих, если вдруг бизнес-аналитик прибежит с криком «Всё меняется!», то рефакторить эту простыню будет в разы легче. Не придётся разматывать клубок из десяти зависимостей, который, как выяснится, держался на честном слове и одной глобальной переменной.
Так что запомни, чувак: лучший код — это часто самый тупой и очевидный код. Не умничай. Сделал, посмотрел — если выглядит как хитрая жопа, значит, скорее всего, так и есть. Упрощай, пока не станет совсем просто. А иначе потом сам от себя охуеешь, когда через полгода вернёшься к своему же творению и не поймёшь, какого чёрта тут происходит.