Можно ли обнаружить, что приложение для Android является либо бета-версией, либо рабочей версией?

Как было сказано ранее , ничего не изменилось. Помните, что слишком много параметров (особенно факультативных) - сильный индикатор запаха кода.

Возможно, ваша функция слишком много:

// first build context
$dataFetcher->setPage(1);
// $dataFetcher->setPageSize(50); // not used here
// then do the job
$dataFetcher->getData('some name');

Некоторые параметры могут быть сгруппированы логически:

$pagination = new Pagination(1 /*, 50*/);
getData('some name', $pagination);
// Java coders will probably be familiar with this form:
getData('some name', new Pagination(1));

В крайнем случае вы всегда можете ввести ad-hoc объект параметра :

$param = new GetDataParameter();
$param->setPage(1);
// $param->setPageSize(50); // not used here
getData($param);

(который является просто прославленным версия менее формального метода массива параметров )

Иногда сама причина для создания параметра необязательна. В этом примере $page действительно означает, что это необязательно? Сохраняет ли несколько символов действительно значение?

// dubious
// it is not obvious at first sight that a parameterless call to "getData()"
// returns only one page of data
function getData($page = 1);

// this makes more sense
function log($message, $timestamp = null /* current time by default */);

21
задан longliveenduro 18 July 2014 в 07:32
поделиться