21 ошибка программиста PHP. Часть 2 Страница 10. Программирование на php как на другом языке
|
Страница 10 из 12 9. Программирование на php как на другом языке Многие приходят в PHP уже с большим опытом программирования в другом языке, как PERL, C, Java или (ну это ещё куда ни шло) ASP. И частенько "импортируют" техники и подходы, которые не всегда хорошо сочетаются с методиками PHP. К сожалению, некоторые программисты как-то не удосуживаются поучиться PHP-программированию в стиле именно PHP. Вместо этого они обзаводятся минимальным набором новых для них концепций и "насилуют" PHP. При таком подходе очень часто на выходе мы получаем медленный и трудно поддерживаемый код. И такие случаи не редкость: - "однострочники" PERL. PHP - язык мало приспособленный к так называемому методу - "всё в одной строке". Рекомендуем разбивать сложные хитросплетения комбинированных функций и представлять их в более структурированном виде.
Perl while () { @_ = 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. |