Создание хорошего объектно-ориентированного приложения?Параметры функции или Параметры объекта - PullRequest
1 голос
/ 22 марта 2012

Я написал PHP-приложение, которое интенсивно использует объекты. Добавлены, удалены, обновлены и т.д .. строки в моей базе данных. Я хочу, чтобы он соответствовал легко читаемому стандарту для будущих разработчиков и возможности открытого кода. Что тебе легче? Предположим, что переменные общедоступны.

$tablename = new tablenameClass;
result= $tablename->addrow($POST,$AdditionalStuff,$Settings);

или используя объект

$tablename = new tablenameClass;
$tablename->AdditionalStuff = array(whatever);
$tablename->Settings = array(settings);
result= $tablename->addrow($POST);

Так что этот вопрос больше о конвенции, чем о чем-либо еще. Извините, я знаю, что код не работает.

Мне действительно нравится, как это делает jQuery.

tablename(array({
    thing:stuff,
    thing2:stuff2
    }));

1 Ответ

1 голос
/ 22 марта 2012

2-й пример намного проще для чтения и понимания ... AdditionalStuff и Settings определены здесь.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...