Задать вопрос

Как правильно изучать PHP?

Всем добрый день!
Для правильного понимания сначала напишу небольшое предисловие. Я уже поискал на просторах интернета ответы на свой вопрос и кое какая информация по этому поводу есть. Но нигде я не встретил действительно полного ответа на этот вопрос. И я думаю ваши ответы могут помочь новичкам быстрее влиться в профессию и меньше мучить вас, умудренных сединой программистов. Так вот, я программист - 4 года опыта работы на 1С (просьба не кидаться камнями, мы все таки тоже программисты). Уже давно хочу сменить вид деятельности. Смотрю в сторону WEB. Есть даже небольшой опыт работы в web студии на php. Так вот сейчас решил углубиться в web и появились ряд вопросов.

1) Основы. Я думаю все начинали с чтения книг. Для меня это была Котеров, Костарев - PHP 5.2. Что вы советуете своим ученикам?
2) Ресурсы на которых можно найти ответы на большинство вопросов об использовании языка? (знаю только StackOvrflow)
3) Библиотеки. Я успел столкнуться с тем, что на php есть уйма библиотек, но выясняется работает библиотека или нет только после установки. Так вот посоветуйте ресурсы где стоит искать в первую очередь и в идеале находить только там.
4) Типовые приемы. Например необходимо реализовать систему голосований на сайте с видео. Это уже реализовано много раз, но человек не может найти необходимую библиотеку. Где можно достать информацию о том как обычно реализуют такие механизмы. Можно конечно начать пробовать писать свой велосипед, но вероятнее всего долгим путем проб и ошибок человек придет к тому, что уже реализовано, только потеряет кучу времени. Так вот где есть описания того, как реализуют обычные вещи, хотя бы для того что бы понимать как это работает.

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

Очень бы хотелось получить развернутые ответы, а не RTFM

Заранее спасибо
  • Вопрос задан
  • 8025 просмотров
Подписаться 9 Оценить 3 комментария
Ответ пользователя Александр К ответам на вопрос (7)
Даже не знаю что посоветовать из "почитать", чтобы "стать".
Лучше всего пойти хоть джуниором, но в команду, где используют best practises.
Можно много чего почитать, что-то безусловно полезно, но что-то будет слишком рано и не будет понятно в правильном контексте, пока с подобными проблемами на практике не столкнулся.
Например, я знал, что тесты это хорошо, но понял их важность только начав работать над сложным проектом.
Знал про полезность ООП, но прочувствовал как правильно с ним работать и его мощь тоже не сразу. Можно прочесть например умную книжку по ООП и начать фигачить всякие "фичи" там, где им вообще не место.

Во многом способствует росту заданная высоко планка качества кода в проекте + code review.
Из того, что наиболее всего мне пригодилось это была книга Robert Martin "Clean code", достаточно 1 раз прочесть, чтобы усвоить несколько полезных принципов, в частности понимание хорошо читаемого кода. Ну и в качестве книжки-справочника что-нибудь из разряда "паттернов проектирования ООП"
Ответ написан