Задать вопрос
@web-quest3

Уникальные функции или большее количество?

1- Лучше делать одну функцию(метод), с куче параметров?
Например
Выбрать все книги из таблицы книги за дату (от и до)
Выбрать книгу по ИД
Выбрать книги за дату с определенным автором.
2 - Или такие вещи не лепятся в одну функцию?
3 - Какая литература поможет правильно строить код. (Интересует как в целом так и именно вопрос о функциях, как их писать, что она собой представляет(уникальное решение или точечное), почему лучше так а не иначе, в идеале с примерами.
  • Вопрос задан
  • 216 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Программирование
software engineer
метод != функции. Метод есть в ООП, а в ООП нужно понимать, что методы должны работать с данными, которые принадлежат этому классу. То есть само собой должно выводиться, какие методы должны быть в этом классе, а какие в другом.

Но даже в процедурном программировании, нужно писать функции таким образом, чтобы ВАМ потом легче было разобраться и исправить. То есть код функции должен не слишком тяжело помещаться в голове программиста, чтобы можно было прочитать, понять и исправить, а не прочитать-прочитать-прочитать-непонять-начать-читать-заново.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@JuniorNoobie
Сижу в поддержке, пишу мелкие проекты
Можете сделать одну функцию, куда в качестве параметра передавать ассоциативный массив. Внутри функцию в зависимости от того, какие параметры переданы, добавлять условия в WHERE.
Ответ написан
@asd111
Это не важно. Оба варианта рабочие. Гораздо важнее правильно спроектировать базу данных, поэтому лучше гляньте литературу на тему проектирования БД, когда нужна нормализация, когда нет и как проектировать с учетом возможного разделения одной БД на несколько частей(шардинг). И про репликацию стоит почитать. И еще про индексированный полнотекстовый поиск(elastic search, sphinx) и про кэширование(redis, memcache и т.п.).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы