Какие используешь принципы программирования

Ответ

SOLID, DRY, KISS, YAGNI.

SOLID:

  • Single Responsibility - компонент делает одну вещь.
  • Open/Closed - открыт для расширения, закрыт для изменений.
  • Liskov Substitution - наследники не ломают поведение родителя.
  • Interface Segregation - узкие интерфейсы лучше одного "жирного".
  • Dependency Inversion - зависимости на абстракциях, не на реализациях.

DRY (Don't Repeat Yourself):

// Плохо: дублирование
const ButtonA = () => <button className="primary">Click</button>;
const ButtonB = () => <button className="primary">Submit</button>;

// Хорошо: переиспользуемый компонент
const Button = ({ text }) => <button className="primary">{text}</button>;

KISS (Keep It Simple, Stupid): избегаю избыточной сложности там, где можно решить проще.

YAGNI (You Aren't Gonna Need It): не добавляю функциональность "на будущее".