Встречается на собеседованиях • сегодня

Какие знаешь принципы разработки

  1. DRY (Don't Repeat Yourself) – избегай дублирования кода. Лучше вынести повторяющуюся логику в отдельный метод/класс.
java
// Плохо
void printUserInfo(User user) {
    System.out.println("Name: " + user.getName());
    System.out.println("Age: " + user.getAge());
}
void printAdminInfo(Admin admin) {
    System.out.println("Name: " + admin.getName());
    System.out.println("Age: " + admin.getAge());
}

// Хорошо
void printInfo(Person person) {
    System.out.println("Name: " + person.getName());
    System.out.println("Age: " + person.getAge());
}
  1. KISS (Keep It Simple, Stupid) – делай код максимально простым и понятным.

  2. SOLID – пять принципов ООП:

    • SRP (Single Responsibility) – один класс = одна ответственность.
    • OCP (Open-Closed) – классы открыты для расширения, но закрыты для изменений.
    • LSP (Liskov Substitution) – наследники должны заменять родителей без ошибок.
    • ISP (Interface Segregation) – много узких интерфейсов лучше одного общего.
    • DIP (Dependency Inversion) – зависимости от абстракций, а не от реализаций.
  3. YAGNI (You Aren't Gonna Need It) – не добавляй функциональность "на будущее".

  4. Law of Demeter – объект должен взаимодействовать только с ближайшими соседями.

Пример SOLID (SRP):

java
// Плохо: класс и сохраняет, и логирует
class UserService {
    void saveUser(User user) {
        // сохранение
        // логирование
    }
}

// Хорошо: разделение ответственностей
class UserRepository {
    void save(User user) { /* сохранение */ }
}
class Logger {
    void log(String message) { /* логирование */ }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы