2010-09-04 6 views
0

Я новый веб-программист и всегда стараюсь улучшить свои знания и навыки. Таким образом, я много раз читал в stackoverflow, что хороший способ сделать это - прочитать код других людей.Где найти действительно хорошие примеры кода

Это все хорошо и хорошо, но где я могу найти хорошие примеры действительно хорошо написанного кода? Im думает конкретно php здесь, так как это мой основной язык использования, и как его серверная сторона я могу просто посмотреть на источник?

+1

Вещи, чтобы держаться подальше от: OSCommerce, XTCommerce и братьев и сестер; Wordpress (я люблю это, но это действительно не так чисто под капотом) –

ответ

2

Узнать, как написано Zend Framework. По моему мнению, они используют лучшие языковые методы.

+2

Yup, ZF был первым, что мне пришло в голову. –

+1

+1: здесь же :) – shamittomar

0

Теперь я не совсем отвечаю на ваш вопрос (по крайней мере, не напрямую), но, надеюсь, вы получите некоторые идеи, которые могут быть полезны для вас.

Хорошо написанный код может быть много чего. Все зависит от того, что вы хотите сделать. Эффективный код может быть не только кодом, который выполняется быстро, но и кодом, который легко поддерживать и/или расширять. Все зависит от ваших потребностей.

Хороший способ начать - сначала разбить проблему на более простые проблемы, а затем решить, как ее решить. Хороший способ учиться - читать, модифицировать и, прежде всего, понимать код других людей.

Я когда-то слышал рассказ о великом программисте. У него всегда был плюшевый медведь, сидящий рядом с ним, и когда код не работал должным образом, он взял плюшевого медведя на колени и объяснил ему каждую строку в коде. Понимаете, он сам объяснил код себе. Это иногда может быть лучшим инструментом отладки, поскольку вы рискуете обнаружить свои собственные ошибки;)

Также в качестве примера следует помнить, что для быстрого выполнения кода особенно важно минимизировать количество переменных, используемых в цикле. С некоторой удачей все ваши переменные могут быть сохранены в регистры процессора в течение всего цикла, что позволяет избежать задержки для обмена данными в основной памяти.