Давайте я сегодня покажу пару анекдотов, а вы сначала посмеетесь, а потом задумаетесь. Навеяно это всё обсждением древней (два года прошло, а проблемы остались) о ситуации с leftpad. Особенно будет полезно поговорить об этом в связи со вчерашним постом о SOLID имея ввиду причины, почему не стоит доводить эту методологию до абсурда.

  • is-thirteen — проверяет, является ли переданное число 13. Обязательно посмотрите тесты к нему. Ага, это шуточный модуль. А вот следующие — нет.
  • negative-zero — проверяет, является ли число -0. Ага, в JS 0 и -0 — разные числа. Конечно, этого недостаточно, поэтому positive-zero вынесен в отдельный модуль.
  • is-positive — проверяет, является ли переданный объект положительным числом. На самом деле, там написано не object, а something, потому что в JS object — отдельный тип данных (ведет себя как map, dict etc.)
  • os-homedir — возвращает путь к домашней директории текущего пользователя. Тут уже не одна строчка, а 24. Тут уже речь не об однострочниках, а о проблемах JS как языка серверного программирования.

Проблем много. Очень много. Уверен, вы и сами сможете их сформулировать. Стоит самостоятельно о них задуматься. Каждому. И тогда мы сможем создать такую рабочую среду, в которой мы будем делать только что-то клёвое и нужное, а не очередной negative-zero или собственный аллокатор. Это весело, полезно для саморазвития и совершенно бесполезно для остального мира, прям как хотьба кругами.