Есть два типа языков: языки, где есть только один очевидный/правильный путь реализовать что-либо (Python
, Java
), и языки, где одну и ту же фичу можно закодить тысячей и одним способом (C++
, JavaScript
, Ruby
). Первые больше похожи на детские конструкторы, вторые - на пластелин.
Подробнее LEGOs, Play-Doh, and Programming и инфографика.
И если для первой группы языков имеет смысл перерывать StackOverflow в поисках единственно-истинного решения отсортировать массив, то для второй группы обычно существует сразу множество "верных" решений. Зачастую, эти решения даже не являются компромиссными. Т.е. с точки зрения скорости выполнения, используемой памяти, поддержки кода и других аспектов абсолютно все равно, какое из решений выбрать.
Читать дальше