Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Правила хорошего кода 
:(
    Опции темы
Wowa
Дата 2.4.2005, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: нет
Всего: 290



Давайте тут собирать правила хорошего кода.

Например:
1. Не писать код работающий только с register_globals on. Вместо этого использовать $_GET[''] и $_POST['']
2. Не называть функции непонятными для посторонних именами
3. Делать комментарии в коде, чтобы можно было легко разобраться в нем.
PM WWW   Вверх
Mal Hack
Дата 2.4.2005, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



4. Отступы.
5. Минимум переменных необходимых для решения задачи.
6. У функций return
7. Вывод гипертекста - один раз.
PM ICQ   Вверх
HalkaR
Дата 2.4.2005, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве

Репутация: нет
Всего: 42



8. Отделение ввода данных в базу от вывода гиперетекста
PM MAIL   Вверх
Mal Hack
Дата 2.4.2005, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Цитата(HalkaR @ 3.4.2005, 00:02)
8. Отделение ввода данных в базу от вывода гиперетекста

Я бы сказал: " отделение всего кода от вывода ьгипертекста". По сути шаблоны. Что скажешь?
PM ICQ   Вверх
yUAC
Дата 3.4.2005, 02:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 9.6.2004

Репутация: нет
Всего: 3



Кстати говоря насчет вывода текста один раз не могу согласиться - это неправильно.
PM MAIL   Вверх
Mal Hack
Дата 3.4.2005, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Цитата(yUAC @ 3.4.2005, 03:14)
Кстати говоря насчет вывода текста один раз не могу согласиться - это неправильно.

Почечму?
Во-первых отпадает (практически) трабла с заголовками и установкой куков.
Во-вторых существенно увеличиваетс производительность скрипта.
В третьих это более грамотно с точки зрения проектирования, т.к. в случае чего можно пройтись по всему гипертексту.
PM ICQ   Вверх
IZ@TOP
Дата 3.4.2005, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 1
Всего: 73



9. Краткость сестра таланта.
Пример:
Код

<?php
// Есть у нас такой кусок кода:
if($a == 1) {
   $b = $a;
} else {
   $b = 2;
}
// Можно сократить до:
$b = ($a == 1) ? $a : 2;
?>


10. Оптимизация строковых функций.
Пример:
Код

<?php
// Замена переменных в шаблоне
$text = ereg_replace("<!--a-->", $a, $text);
$text = ereg_replace("<!--b-->", $b, $text);
$text = ereg_replace("<!--c-->", $c, $text);
$text = ereg_replace("<!--d-->", $d, $text);
// Это по меньшей мере ужасно, но встречается очень часто. 
// Оптимизируем и получаем одну строку:
$text = str_replace(array('<!--a-->', '<!--b-->', '<!--c-->', '<!--d-->'), array($a, $b, $c, $d), $text);

// Разбивка текста всегда осуществляем с помощью explode,
// а не split'a как это очень часто делают некоторые неопытные люди. Т.е. такой код:
$arr = split("|", $line);
// Заменяем на 
$arr = explode("|", $line);
// Разумеется если вам необходимо разбить строку при помощи регулярных выражений,
// лучше всего сначала подумать: а может быть есть другой выход из ситуации?
?>


PS Пока все.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
HalkaR
Дата 4.4.2005, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве

Репутация: нет
Всего: 42



Цитата(Mal @ 2.4.2005, 23:12)
Цитата(HalkaR @ 3.4.2005, 00:02)
8. Отделение ввода данных в базу от вывода гиперетекста

Я бы сказал: " отделение всего кода от вывода ьгипертекста". По сути шаблоны. Что скажешь?

Полностью отделить код от html очень тяжело, но естественно желательно. Я просто более мягко сформулировал.
PM MAIL   Вверх
IZ@TOP
Дата 4.4.2005, 16:12 (ссылка) |   (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 1
Всего: 73



Слишком четкое отделение РНР кода от HTML приведет скорее всего к тому что появится еще один интерпретируемый язык, что приведет к большому снижению производительности.



--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Irokez
Дата 7.4.2005, 18:03 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 4
Всего: 53



PM   Вверх
Mal Hack
Дата 7.4.2005, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Irokez
это правила составления PEAR.
PM ICQ   Вверх
Irokez
Дата 7.4.2005, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 4
Всего: 53



Mal Hack smile ну да я знаю ... а он на чем пишется? на пхп ...
по-моему стандарты написания пеар пакетов стоит взять за стандарты написания всех пхп скриптов ...
PM   Вверх
Mal Hack
Дата 7.4.2005, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Irokez
я к тому, как бы что там описывается схема структура файла PEAR
PM ICQ   Вверх
Irokez
Дата 7.4.2005, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 4
Всего: 53



Mal Hack
так пеар файл и есть ни что иное как грамотно написанный пхп скрипт,
и по ссылке описываются как такой скрипт грамотно написать (в плане синтаксиса)
PM   Вверх
Mal Hack
Дата 7.4.2005, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Цитата(Irokez @ 7.4.2005, 21:20)
так пеар файл и есть ни что иное как грамотно написанный пхп скрипт,

не факт. Многие считаю его тяжелым smile

Цитата(Irokez @ 7.4.2005, 21:20)
и по ссылке описываются как такой скрипт грамотно написать (в плане синтаксиса)

Я имею ввиду (может и ошибаюсь) имел ввиду что класс должен называться так-то, сожеражть обязательно определенные свойства и методы..
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.1280 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.