Духовность™
Продвинутый новичок
вот же вам делать нечего, флудеры
лучше что-нибудь и вправду умное обсудили
лучше что-нибудь и вправду умное обсудили
function int($paramName,...,$default=0/* or Exception class instance*/){}
function string(....) {}
и т.д.
вроде даж как-то и гибко и наглядно получается
try {
$id = int('id','form',new RequiredException);
}catch(...){}
я что-то не понял - проблема в NULL в PHP?Описание Special Case
Подкласс, содержащий особую логику для отдельных ситуаций.
Null-значения в ООП - неуклюжая вещь, так как она зарубает на корню полиморфизм. Обычно есть возможность вызова какого-либо метода на переменной заданного типа без необходимости беспокоиться о том, принадлежит ли эта переменная конкретному классу или подклассу. В строго типизированных языках эту проверку делает компилятор. Тем не менее, из-за того, что переменная может содержать null, существует опасность возникновения ошибки во время выполнения, при вызове метода на null-значении.
о чем речь? я не вникаю.вот в мускуле с null можно намучаться, если забыть правила, поэтому лучше не пользоваться как миной замедленного действия
А какое иное поведение, кроме возбуждения сигнала о возникновении исключительной ситуации может реализовывать подобный объект? Возбуждать исключение проще в порождающей объект части - factory, table gateway и тп. Это заставит писать такой код, который предполагает обработку NULL значений (только там где это требуется).Прелагаю обсудить, как правильно реализовывать паттерн Special Case в контексте объектов ORM.
if(isset($_GET['id'])) { $id = intval($_GET['id']);}
else {...}
ага сливки в сливочнойАвтор оригинала: craz
Слушайте, а вообще как и где можно получить системные знания по веб-разработке, в данный момент есть уже знания которые приносят профит обеспечивающий в принципе безбедное существование, но как только вы начинаете умничать, у меня складывается устойчивое ощущение, что я ваааще ничего не наю в веб-разработке, вы такие узкие специалисты в каких то областях? И причем чем больше я вникаю в те вопросы, которые вы обсуждаете, открываются все новые и новые горизонты. Зато сколько мне не попадался сторонний продакшн код, он почему завсегда был невообразимо глуп.
Тут, что реально сливки общества?)
P.s. это достаточно умные вопросы для обсуждения, можно по обсуждать с точки "теории знания"(раздел философии) кстати?)
Ну, есть персистентные объекты сущности Hibernate (пусть будет Doctrine, не важно). У одного класса есть обязательная ссылка на другой (агрегация). Например у класса Person есть поле типа Address.а в каком оно месте там надо, и какой интерфейс спешлкейсим?
Нет.Special Case - это изящно-завуалированная @
class Person {
.............
public function getAddress() {
$address = new Address;
if ($this->addressId > 0) {
$address->loadById($this->addressId);
}
return $address;
}
}