Функции именования в зависимости от популярности - PullRequest
2 голосов
/ 11 января 2011

Вам нужны две функции:
1. Извлекает простой текст из БД.
2. На основе 1 извлекает форматированный текст - с новыми строками, стилями шрифтов и т. Д.

Вы ожидаете функцию2 будет использоваться гораздо чаще, чем функция 1.

Вы бы назвали 1 text () и 2 - rich_text () или использовали бы более простой text () для имени 2, поскольку ожидается, что оно будет болеепопулярный и использовать что-то вроде plain_text () для 1?

Более общий вопрос был бы: считаете ли вы ожидаемую "популярность" функции при ее названии?

Ответы [ 3 ]

3 голосов
/ 11 января 2011

Нет, я не считаю популярность функции.Лучше иметь описательные имена для обеих функций (например, одна plain_text(), а другая rich_text()).

Я думаю, что лучше использовать относительно конкретные имена для всех функций, поскольку используются более общие имена 1.) не дает пользователю слишком много представления о том, что делает функция, читая имя и 2.) может привести к путанице.

Конечно, как вы называете свои функции, это ваш выбор: Iпросто рекомендую, чтобы вы дали им несколько описательных имен и чтобы вы называли их (и упорядочивали аргументы) последовательно.

Я ненавижу не более чем программирование с API, где каждое имя функции короткое и загадочное (строковые функции PHPтаким образом, хотя я уже привык к этому - strstr и strtok вряд ли являются интуитивно понятными именами того, что они делают).

2 голосов
/ 11 января 2011

Иногда стоит подумать о популярности, если код будет очень широко использоваться. Обычные слова в естественных языках, как правило, короткие.

Однако, если вы не думаете, что пишете следующую UNIX, вам, вероятно, лучше сделать имена описательными и не беспокоиться о длине.

Я бы пошел на getPlainText() и getRichText().

1 голос
/ 11 января 2011

Как правило, я всегда называю свои функции свободно в зависимости от того, что они делают.Если бы я был на вашем месте, я бы назвал функцию один retrieve_plain_text() и функцию два retrieve_rich_text().Теперь я могу взглянуть на любое из названий функций и сразу же получить общее представление о том, что должна делать функция: извлекать (получать из чего-то, в данном случае из базы данных) обычный / расширенный (тип) текст.

...