| 36. Бизнес-логика | |
| На девяти из десяти собеседований можно услышать такой термин, как «бизнес-логика». Проблема состоит в том, что в девятьсот девяносто девяти случаях из тысячи в этот термин вкладывают совершенно не тот смысл, который должен быть. Обычно термином «бизнес-логика» называют «то, как нельзя реализовывать бизнес-логику». | |
| Поведение отдельно взятого приложения — вещь индивидуальная, а значит, с точки зрения программирования, одноразовая. Чем больше одноразового кода в приложении, тем менее качествена программа в целом. В идеальном мире то, что сейчас называется «бизнес-логикой», должно укладываться в настройки конкретного набора универсальных компонентов. То есть «бизнес-логика» должна ограничиваться данными. Но, к сожалению, это слишком уж идеальная картина — в реальной жизни избежать кода в «бизнес-логике» вам, скорее всего, не удастся. Однако, к этому стоит стремиться. | |
|  | |
| Разрабатывать «бизнес-логику» нужно (желательно) в двух направлениях. При возникновении какой-то задачи, с одной стороны нужно подумать, каким из универсальных компонентов можно воспользоваться. С другой стороны, если такого универсального компонента у вас нет, то нужно подумать о том, как не просто решить поставленную задачу, но и как обобщить это решение в какой-то новый универсальный компонент, который, в дальнейшем, может быть использован вновь в какой-то аналогичной задаче. | |
| «Бизнес-логика» это точно такой же код, как и все остальные участки программы, а следовательно требования к этому участку должны быть ничуть не мягче. Писать одноразовый код, мотивируя это тем, что «ну это же бизнес-логика», в корне не верно. | |