О минимальном наборе знаний, необходимых программисту PHP. Работа с ядром, базой данных MySQL, сервером Apache, вёрсткой HTML и CSS.
Каждый PHP программист имеет определённый багаж знаний, постоянно пополняемый новой информацией. Как и в других областях программирования, данный язык постоянно развивается и совершенствуется. Приведённый ниже материал предназначается для новичков, которые только задумываются о карьере PHP программиста. Какой объём знаний является минимальным? Рассмотрим этот вопрос подробнее. Пример портфолио PHP программиста указан по ссылке.
Структура ядра
Само собой, важнейшее требование к программисту – это глубокое знание теоретических основ PHP. Поскольку ядро регулярно обновляется, рекомендовано брать к изучению одну из последних версий, доступных на данный момент. Чем больше знаний вы сможете постичь, тем эффективнее научитесь использовать инструмент на практике. В сети Интернет представлено огромное количество информации по объектно-ориентированному программированию (ООП), реализацию которого также обязательно следует изучить. Полезно узнать и о работе шаблонов проектирования (вроде MVC).
Хранение данных
Редко встречается PHP разработчик, способный выполнять свою работу одним лишь знанием языка. Если пройтись по распространённым вакансиям, от программиста всегда требуют глубоких знаний распространённых баз данных. В частности, одной из самых популярных является СУБД MySQL. Совет по изучению аналогичен: ищите документацию по последней на текущий момент версии. Акцентируйте внимание не только на работе базы, но и на её оптимизации (структуры и запросов).
Вёрстка HTML и таблицы стилей CSS
Без базовых знаний HTML и CSS всё равно не обойтись, хоть PHP и считается классическим серверным языком. Он тесно связан с созданием и генерацией HTML-кода, а также с формальным языком описания разметки (CSS). К счастью, изучение этой информации обычно не занимает много времени, да и справочные сведения всегда можно держать под рукой. Главное – иметь общее представление о правилах написания кода, чтобы вносить в сгенерированные страницы ручные изменения.
JavaScript
Да, этот язык считается клиентским, поэтому в спектр обязательных навыков PHP программиста не входит. Практика показывает, что рынку требуются специалисты-универсалы. Во многих вакансиях знание JavaScript – дополнительный пункт требований, который увеличивает вероятность трудоустройства на хорошо оплачиваемую вакансию. Достаточно изучить синтаксис на поверхностном уровне, а затем переходить к фреймворкам (JQuery или ExtJS), указанным в объявлениях о найме. Отлично владеете Javascript? Изучите навыки JavaScript разработчика тут.
Операционная система
Полезно знать системы Linux и Unix, поскольку подавляющее большинство серверов работают именно на них. Например, в Linux Ubuntu установка и оптимизация LAMP никаких вопросов не вызывает, происходит быстро и легко. После инсталляции LAMP рекомендуем изучить работу с файлами и каталогами, основы редакторов и файлового менеджера. Вся справочная документация есть в Сети, она давно переведена на русский язык.
Веб-сервер Apache
Не будет ошибкой назвать именно этот веб-сервер самым распространённым. Достаточно изучить его поверхностные основы, хотя по уровню производительности сочетание Ngix и php-fpm выглядит эффективнее. Всё определяется конкретными задачами, возникающими перед программистом.
Дополнительные знания:
- Фреймворки PHP (включая ZendFramework, Kohana и другие);
- Базы данных NoSQL;
- Свободное владение техническим английским языком;
- Работа с системами контроля версий (svn и git).