21 ошибка программиста PHP. Часть 2 - Программирование на php как на другом языке
ОГЛАВЛЕНИЕ
9. Программирование на php как на другом языке
Многие приходят в PHP уже с большим опытом программирования в другом языке, как PERL, C, Java или (ну это ещё куда ни шло) ASP. И частенько "импортируют" техники и подходы, которые не всегда хорошо сочетаются с методиками PHP.
К сожалению, некоторые программисты как-то не удосуживаются поучиться PHP-программированию в стиле именно PHP. Вместо этого они обзаводятся минимальным набором новых для них концепций и "насилуют" PHP.
При таком подходе очень часто на выходе мы получаем медленный и трудно поддерживаемый код. И такие случаи не редкость:
- "однострочники" PERL. PHP - язык мало приспособленный к так называемому методу - "всё в одной строке". Рекомендуем разбивать сложные хитросплетения комбинированных функций и представлять их в более структурированном виде.
Perlwhile () {
@_ = split /:/;
$quotes{shift} = shift;
}
print map { "$_: ", reverse split //,$quotes->{$_},"\n"; } keys %quotes;
PHP<?php
$fp = @fopen('php://stdin', 'r');
if (!$fp) {
die ('Сбой при открытии STDIN');
}
while ($line = @fgets ($fp, 1024)){
list($name, $quote) = explode (':', $line);
$quotes[ $name ] = $quote;
}
foreach ($quotes as $name => $quote){
print "$name: ";
print implode (" ", array_reverse (preg_split ('//', $quote)));
print "\n";
}
@fclose ($fp);
?> - Уклонение от встроенных функций: Многие PHP-программисты, пришедшие из C, кажется, не понимают того, что PHP содержит целую армию встроенных функций. Их цель - избавить вас от километровых скриптов. Если вы раньше писали на C, вам настоятельно рекомендуется изучить техническое описание PHP и узнать, какие функции PHP вам может предложить и тем самым облегчить вам жизнь.
- Переименование стандартных функций PHP: некоторые программисты переименовывают стандартные функции PHP только для того, чтобы легче их запоминать. Это не только снижает скорость выполнения скрипта, но и затрудняет чтение кода.
- Неоправданное использование ООП: PHP - не объектно-ориентированный язык, хотя некоторая поддержка объектов всё-таки имеется. И всегда стоит помнить, что использование функций поддержки ООП значительно снижает скорость выполнения скрипта.
Где можно почитать об "изящном стиле" программирования на PHP
На ваше счастье Инет просто забит статьями о том, как правильно программировать на PHP.