Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
trait TPerson {
public $fname;
public $lname;
public $mname;
// ...
}
class BUser extends EMongoDocument {
public $first_name;
public $last_name;
public $middle_name;
// ...
}
class User extends BUser {
public $firstname;
public $lastname;
// ...
}
Попалось такое наследие на одном рабочем месте. Было два типа юзеров, каждый из них наследовал BUser, в одном из них были firstname и lastname, в другом не были. В монге документы юзера, у которого свои firstname и lastname были вида:
{
_id: ObjectId("..."),
...
first_name: '',
last_name: '',
middle_name: '',
fname: '',
lname: '',
mname: '',
firstname: '',
lastname: ''
}
Комментарии (2) RSS