Вы должны отвечать на что-то одно или делать только одно.
Закон Керли — хорошая концепция для использования в архитектуре программного обеспечения, поскольку он напоминает вам, что всегда интересно иметь ваш код слабосвязанным и как можно более простым, чтобы вы могли повторно использовать столько, сколько сможете.
Не следует смешивать разные уровни кода (например, бизнес-правила с доступом к базе данных).
Одним из простых примеров может быть:
public class ImcCalculator { public static void main(String args[]) { double weightInPounds = 200; double heightMeters = 1.70; double weightInKg = weightInPounds / 2.205; double imc = weightInKg / (heightMeters * heightMeters); System.out.println("Your IMC is " + imc); } }
Здесь вы можете видеть, что происходит преобразование фунтов в кг, а также расчет IMC, поэтому, применяя концепцию закона Керли, результат будет следующим:
public class ImcCalculator { public static void main(String args[]) { double weightInPounds = 200; double heightInMeters = 1.70; final double imc = calculateImc(poundsToKg(weightInPounds), heightInMeters); System.out.println("Your IMC is " + imc); } public static double poundsToKg(final double weightInPounds) { return weightInPounds / 2.205; } public static double calculateImc(final double weightInKg, final double heightInMeters) { return weightInKg / (heightInMeters * heightInMeters); } }
Вы могли бы пойти еще дальше и создать два разных класса: один как преобразователь весов, а второй как калькулятор.
В заключение, разделение поможет вам повторно использовать его в разных местах, облегчит его тестирование и понимание всего этого в целом.
Если есть что-то еще, что вы хотели бы обсудить, оставьте комментарий ниже, увидимся.