Разработка веб-приложений при помощи РНР: советы по эффективному изучению
И вновь здравствуйте, дорогие друзья!
Надеемся, предыдущая статья html-css-javascript об основах обучения веб-мастерству принесла кому-то из вас позитивные результаты. В данном обращении мы намерены продолжить обучающий цикл, обратив ваше внимание на скриптовые языки программирования. Преимущественно, их еще называют серверными (так как обрабатываются они именно на сервере).
Самым распространенным и популярным серверным языком программирования веб-приложений является PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста») — язык, созданный для генерирования HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается большинством хостинг-провайдеров. Входит в LAMP — распространённый набор для создания веб-сайтов (Linux, Apache, My SQL, PHP (Python или Perl).
РНР — встраиваемый язык — можно перемещаться между чистым кодом HTML и PHP, не жертвуя возможностью чтения текста. Но все же, своего рода “хорошим тоном” программирования считается отделение программного кода на языке PHP от представления в виде HTML — это чаще всего реализуется с помощью шаблонизации. Такие инструменты как регулярные выражения также довольно сильно упрощают работу.
Какие информационные ресурсы оптимальны для ознакомления с PHP?
В чем же заключается популярность PHP? Ответ кроется в истории развития языка, в которую можно окунуться на следующих ресурсах http://php.a-site.info/Glava%202/Index1.htm и http://php.su/php/?history
Также для начала важно кратко ознакомится с его возможностями и преимуществами.
Итак, главным источником информации по языке PHP является официальный сайт http://php.net/.
Здесь материал представлен на многих языках, в том числе — на русском. На этом ресурсе можно скачать дистрибутивы интерпретатора языка для установки на сервер, имеются разные редакции PHP (последняя — PHP5.4.5), а также дополнительные модули для конфигурирования языка на сервере.
Основным источником информации по языку является документация, которая представлена здесь в полном объеме на многих языках. Но перед тем, как приступить к тщательному зондированию документации, загляните сюда http://php.su. На сайте очень хорошо структурирован материал по разделам теории PHP, а также есть все необходимое для успешного ее закрепления. Например, можно попробовать сделать хлебные крошки на сайте, для упрощения навигации, или другие интересные возможности. Важным моментом в изучении основ будет использование классов и объектов php.
Полезным ресурсом станет http://www.php.ru, важно обратить внимание на такие темы, как :
- Выражения
- Операторы
- Управляющие конструкции
- Пространства имен
- Ссылки.
- Предопределённые переменные.
В процессе изучения и написания кода вам всегда будет нужен Справочник функций и Справочник языка, активно используйте их для хорошего освоения материала.
От теории к незамедлительной практике
Если процесс ознакомления с теоретической основой прошел успешно (а при желании — в точности так и произойдет), можно смело приступать к особенностям версии РНР. Сегодня наиболее широко используется PHP 5.2, 5.3, новая редакция — уже в стабильном релизе PHP 5.4.5.
В последнее время, в программировании на языке PHP применяется объектно-ориентированная модель — ООП. Данная модель позволяет использовать функции, описанные в конкретном классе в контексте применения в похожих задачах. Это существенно сокращает объем кода и оптимизирует число функции. PHP до недавнего времени обеспечивал лишь некоторую поддержку ООП. Однако, после выхода PHP5 поддержка ООП в PHP стала практически полной.
Советуем ознакомиться с относительно новым аспектом в программировании — использование MVC, который позволяет отделить логику обработки кода от представления (вывода данных в браузер). Для более опытных пользователей рекомендуем научиться применять шаблонизаторы (пр. Smarty).
Для того, чтобы процесс обучения прошел без болезненных мучений — приступайте к практике. Для написания своих примеров применяйте PHP-редакторы, которых сейчас есть большое количество. В них поддерживаются всплывающие подсказки, подсветка кода — для более легкого визуального восприятия; также много из них поддерживают роботу с проектами, обеспечивая тем самым связь кода в разных документах одного проекта. Хорошим редактором небезосновательно считаем NetBeans.
Методы оптимизации написания кода
Вы уже ознакомились с основами языка, синтаксисом, принципами ООП и MVC — самое время научиться упрощать себе работу. РНР-фреймфорки, которых сегодня уже существует немалое количество, способствуют легкому написанию кода. Среди всего их разнообразия хотелось бы выделить Codeigniter — фреймворк прост в освоении, имеет большое поддерживаемое сообщество, и главное — в свободном распространении и часто обновляемый.
Сегодня многие Интернет-проекты, которые пишутся на языке PHP, работают с базами данных, преимущественно с MySQL. Поэтому для создания серьезных систем вам необходимо знание языка SQL и принципов взаимодействия PHP с базами данных. Когда говорят о взаимодействии PHP с базой данных, обычно подразумевают взаимодействие PHP с сервером баз данных MySQL, так как их совместное использование стало неким стандартом в Интернете. Для более детального изучения языка рекомендуем освоить Ядро PHP, Безопасность приложений, взаимосвязь разных версий РНР.
Естественно, не могу не порекомендовать замечательный материал Вадима Ткаченко АКА Bizon-а «Вступление в PHP и MySQL». Некоторое время он даже издавался отдельной книгой, а сейчас (исправленный и дополненный) размещается на сайте «PHP в деталях». Не пугайтесь количества материала — пускай много, но — по делу. Это неисчерпаемый ресурс информации по PHP. Единственное замечание — обращайте внимание на дату написания статьи. Не стоит особо доверять тем, что написаны до 2003 года.
Ну и напоследок (по недавно сложившейся традиции) — приятный бонус для ненасытных — http://phpfaq.ru. Вперед, товарищи, мы с вами!
P.S. Не забываем о силе живого общения. Следующие форумы — как раз то, что надо. До скорого!
Форумы:
- http://www.askdev.ru
- http://phpforum.ru
- http://www.php.ru
- http://code-igniter.ru
- http://phpclub.ru
- http://forum.php.su/
Всенепременно Ваша
Гетьман Яша
Очень интересная статья