2008-11-24 5 views
4

Я начинаю начинать, когда дело доходит до программирования. Я беру удар в PHP и вижу, насколько мощными могут быть рамки. Но должен ли я даже подумать о том, чтобы попытаться работать с фреймворком, пока у меня не будет сильного понимания самого PHP?Должен ли начинающий PHP-программист рассматривать рамки?

Примечание: я бы скорее всего использовал CodeIgnitor, но вопрос относится к любой из фреймворков.

ответ

14

Прежде чем начать использовать фреймворки, вы должны иметь сильное понимание языка (и программирования в целом). Рамки могут и могут сэкономить вам много работы, но вы также внесли передовые концепции и реализации.

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

Я предлагаю вам попробовать прочитать некоторые исходные тексты различных фреймворков и посмотреть, имеет ли это смысл для вас. Если это не так - вы, вероятно, еще не готовы.

7

Лично я буду придерживаться изучения PHP и создания некоторых проектов без помощи фреймворка. В то время как рамки могут абстрагировать множество грязных, скучных частей проекта, важно знать, как они работают, особенно при отладке.

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

1

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

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

3

PHP сам по себе является большим языком, вы, вероятно, должны узнать, что PHP может сделать сам по себе, прежде чем смотреть в рамки, которые отвлекают вас от языка. Но тогда вы можете оказаться как я, боясь использовать какие-либо реальные расширения, помимо стандартной библиотеки языка. Вы использовали фреймворк на другом языке? Если вы этого не сделали, использование рамки теперь может быть полезно для будущего использования других фреймворков, возможно, на других языках.

1

вы должны сначала изучить программирование. Начните с основ: условий, циклов, приоритетов операторов, затем перейдите к объектно-ориентированной технике, шаблонам проектирования. Возможно, после того, как вы почувствуете себя комфортно со всем этим (это может занять некоторое время), вы можете рассмотреть возможность использования фреймворков. По пути там вы, вероятно, можете изучить, как вещи, вожделенные выше, используются в рамках.

2

Я бы сказал, да, так как это ускоряет выполнение более сложных вещей.

1

Я бы настоятельно рекомендовал вам сначала изучить основы языка. Рамки облегчают людям, которые знают, как их наилучшим образом использовать. Представьте себе, есть ли у меня рамки для строительства дома. Если вы начинающий плотник, вы по-прежнему совершаете много ошибок, сталкиваетесь со многими «Эй ... как вы это делаете», используйте неправильные инструменты, а не следуйте определенным предполагаемым соглашениям и т. Д. Изучите основы.

Если вам нужен пример того, где фреймворк ударит вас по прикладу, чтобы не знать, что ваш материал проверяет Zend_Form в Zend Framework. Вы можете создать простую форму без проблем, но в реальной жизни вам потребуется настроить многие аспекты формы.Вы должны будете продлить его самостоятельно, чтобы получить то, что вы действительно хотите. Замените стандартные кнопки на пользовательские, измените сообщения об ошибках по умолчанию, настройте html и css, используемые для отображения различных частей формы. Сделайте форму как можно более многоразовой ... абстрагируйте некоторые ее аспекты, чтобы придать ей более широкое использование. Работайте в некоторой валидации и авторизации ... вы быстро окажетесь над головой, если у вас еще нет программных отбивных.

Смежные вопросы