Я категорически не согласен с ответом Chacha102.
Правильный ответ на этот вопрос заполнил бы несколько книг - не обращая внимания на 20-строчный пост здесь.
Оба подхода имеют свои преимущества и недостатки. Я бы рекомендовал всем, кто хочет считать себя хорошим программистом, иметь значительный опыт в процедурном, непроцедурном и объектно-ориентированном программировании. Помимо опыта работы с различными методологиями, такими как SCRUM, каскад и RAD.
Что касается пригодности PHP для OO и процедурного кодирования, то, конечно, корни языка находятся в последнем (но обратите внимание, что как Java, так и ASP являются гибридными, а не истинными OO-языками).
Peronally, я имею тенденцию писать процедурный код, когда мне нужно создать что-то очень простое или должно быть четко определено и предсказуемо. Однако при написании сложного кода, где поведение будет сильно изменяться во время выполнения, я считаю, что OO будет значительно более эффективным с точки зрения времени разработки, несмотря на то, что дизайн основан на конечном наборе прецедентов.
Утверждать, что вы всегда должны писать процедурный код, потому что он будет работать быстрее, чем код OO:
1) не всегда верно 2) полностью игнорирует относительную стоимость времени разработчиков против аппаратных затрат
было бы хорошо, чтобы обернуть материал внутри класса и использовать статические функции
Учитывая, что пространство имен теперь доступны в PHP, это действительно грязный способ избежать пространства имен седловины и не то, что я бы рекомендовал.
C.
- микросекунды для обработки клеток мозга? откройте источник чего-то вроде CakePHP или CodeIgniter, затем сравните с источником wordpress, а затем скажите, что последнее не поощряет вас разбивать лицо на клавиатуру. – seanmonstar
Вы правы. Жизнь слишком коротка, чтобы попытаться оптимизировать для этих 50 миллисекунд оптимизации для каждого запроса. – ambiguousmouse
@seanmonstar: Вы имеете в виду Wordpress не OO ?! ** o_O '** –