А где можно найти наиболее полную информацию о переходе с php4 на php5? А ещё лучше о том как правильно использовать эти нововведения. Я, чесно говоря, что-то не вижу революционной ползености. Очень полезной, на мой взгляд, будут конструкторы (я надеюсь, что они будут запускаться во всех классах). Но зачем, например метод __call, который отлавливает недоступные или несуществующие методы? Если программист обращаеться в своей программе к несуществующему методу, то это, в первую очередь, ошибка, которую нужно исправить. С отловом этого обращения лучше всего справиться интерпретатор. То же самое, методы __set и __get. Далее: дескрипторы Private, Public, Protected: возникает чувство, что моя php5-программа хочет защититься от меня самого. А интерфейсы? Зачем может понадобиться объявлять методы в интерфейсах, потом в классе указывать на этот интерфейс, потом снова объявлять этот же метод, и посать его код? Много лишней работы, много источников для ошибок, а положительного в интерфейсах я не вижу.
Зачем мне может понадобиться объявлять класс как final, что бы у меня самого возникали трудности с наследованием, если я могу его не объявлять финальным и не наследовать.
Зачем мне может понадобится объявление класса абстрактным, что бы у меня возникали трудности при создании объекта этого класса, если я могу не объявлять, но только наследовать.
Я отнють не хочу, сказать, что разработчики создали непонятно что. Я хочу сказать что я непонятно что непонимаю, и прошу Вас помочь мне объять необъятное.