Содержание:
Выбор редактора кода, интегрированной среды разработки (сокращенно IDE от англ. Integrated Development Environment), чрезвычайно важен как для профессиональных программистов, так и тех, кто только начинает свой путь в этом деле.
Конкретного списка минимальных требований к программам такого рода нет. Теоретически программировать на PHP, как и других языках, можно в простом блокноте, что входит в стандартный набор Windows. Однако, это крайности. Минимальный функционал, который должен поддерживать софт:
- проверка написанного кода на соответствие синтаксису,
- возможности его коррекции,
- подсветка синтаксиса,
- автодополнения и автозавершения – так называемый code intelligence.
Использовать редактор следует по той причине, что любое современное приложение для WEB представляет собой целую связку языков и скриптов, которые программист «собирает» комбинируя нужным ему образом PHP, скрипты на JavaScript, язык разметки HTML и таблицы стилей CSS.
Далее предлагаем познакомиться с основными редакторами и IDE, поддерживаемыми ими функциями и особенностями.
Sublime Text
Sublime Text – нетребователен к ресурсам компьютера, функционален и быстр. Последняя версия Sublime Text была значительно доработана разработчиками, стала еще быстрее, меньше потребляет оперативной памяти. Программа работает на любой операционной системе, а также есть Portable-версия. Настройки позволяют конфигурировать софт с помощью специальных файлов в формате JSON, настраивая его внешний вид и необходимые функции. Набор API функций позволяет использовать любые дополнения, а также в редакторе есть встроенный интерпретатор для языка Python.
Для того чтобы устанавливать расширения, следует запустить программу, перейти в меню "Tools" и выбрать Package Control – этот инструмент позволяет осуществлять подключение и отключение необходимых пакетов. Для запуска установки необходимо вести команду «Install Package».
Как работать с Sublime Text: под проектом понимает папку, в которой находятся все необходимые файлы. Указав путь к ней, вы сможете открыть все необходимые файлы, редактировать. Рекомендуется использовать расширение Syntax Checker, которое будет предупреждать о некорректном коде сообщениями во всплывающем окошке. Есть плагины, которые сразу подсвечивают неправильный код: "SublimeLinter", "SublimeLinter-php". Однако для функционирования этих плагинов, необходима установка PHP последней версии на компьютере.
После установки этих расширений редактор будет подсвечивать строчки, в которых есть ошибки. Можно использовать встроенную помощь. Достаточно навести указатель мышки на функцию, чтобы высветились все связи, включая список ссылок и тот файл, в котором объявлялась функции. Нажав перейти к определению (Goto Definition), можно перейти к месту в коде, где была объявлена функция и определен класс.
Если разрабатывается приложение с фреймворками и использованием OOP, то будет полезен плагин «PHPCompanion», который установит целый ряд полезных инструментов и функций для импорта классов и работы с пространством имен.
Отладка: для возможности полноценной отладки кода следует установить плагин «Xdebug Client», при этом на сервере с установленным PHP, локальном или удаленном, должна быть возможность включать расширение XDebug.
Базы данных и язык запросов SQL: Sublime Text имеет два основных плагина: SQLExec, SQLTools. Они очень схожи по своим настройкам и функционалу, обеспечивая возможность работы с любыми базами данных на основе SQL, включая Оракл, MySQL всех версий, MSSQL, PostgreSQL, а также Vertica и Firebird.
FTP: Установив расширение «SFTP», вы получите возможность работы с удаленной файловой системой, например, находящейся на хостинге. Установка расширения добавит простейший интерфейс для совершения всех основных операций с файлами.
Поддержка фреймворков: Редактор имеет базовую поддержку
фреймворков MVC, которая представлена набором коллекций снипетов и доступом к документации с описаниями функции, онлайн справкой.
Atom
Atom – один из наиболее интересных проектов, который набирает все большую популярность у программистов. Его ключевыми преимуществами являются: открытый исходный код, а также невероятная гибкая возможность любых настроек. Создан с применением последних web-технологий, а дополнительные расширения для Atom можно скачивать или писать самостоятельно на JavaScript, используя фреймворк Node.js.
Работает на любой операционной системе, а для Windows есть портативная версия, не требующая инсталляции.
Работа с Atom: умеет работать как с отдельными файлами, так и проектами, для чего необходимо указать корневую директорию. В системе встроена базовая поддержка PHP. Если в системе установлен PHP 7.0, то редактор легко превратить в полноценный PHP IDE, при помощи дополнения «atom-ide-ui» и плагина «ide-php». В результате программа приобретает вот такой внешний вид:
Такая сборка позволит осуществлять поиск и подсветку ошибок, даст возможность быстрой навигации, функций автодополнения и автозавершения.
Возможность отладки: для отладки написанного нужно установить два модуля: php-debug, а также atom-debug-ui, после чего будут доступны все функции работы с XDebug.
Базы данных и запросы SQL: Работа с базами данных, просмотр структуры таблиц и связей между ними, обеспечивается пакетом «data-atom», который обеспечивает полноценную поддержку MySQL всех версий, а также Microsoft SQL Server и PostgreSQL. Настроить необходимый функционал можно выбрав пункт Data Atom в меню Packages. Обратите внимание, что для корректной работы с базами данных в системе должен быть установлен Git.
FTP: для подключения к серверам хостинга или иным удаленным компьютерам, следует установить пакет «ftp-remote-edit. Он обеспечит возможность совершать все стандартные операции с файлами, включая их автоматическое сохранение и выгрузку на сервер.
Поддержка фреймворков: для работы с фреймфорками необходимо загружать и устанавливать дополнительные пакеты для каждого из них. Мультиподдержка фреймворков данном редакторе реализована средне.
Rapid PHP
Rapid PHP – популярный PHP редактор, имеющий расширенный функционал и вполне претендующие на простейшую IDE в базовой версии. В Rapid PHP есть весь необходимый функционал для создания веб-приложений, с использованием языка разметки HTML, таблиц стилей CSS, программирования на PHP, а также JavaScript.
Простой и функциональный интерфейс понравится как новичкам, которые не будут путаться во множестве функций и настроек, так и профи, за счет встроенного PHP-интерпретатора.
Настройки внешнего вида интерфейса, включение и отключение необходимых панелей, можно осуществлять нажатием клавиши F4.
Также можно скачать и установить расширенную версию Rapid PHP, в которой есть возможность подсветки вхождений функций и переменных, вставка фрагментов, улучшена скорость и производительность. Доступен быстрый поиск по нажатию Ctrl + G, с функцией «Go to anything», позволяющий быстрый переход к любому места кода или файлу, в котором была объявлен функция или переменная.
Возможность установки плагинов и расширений позволяет существенно расширить функционал программы. Работа с плагинами осуществляется через вызов меню «Manage Plugins».
Работа с Rapid PHP: программа имеет полноценный функционал для написания, редактированию и отладке, включая встроенные подсказки, автоподстановку функций, встроенную систему помощи.
Возможность отладки: отладка работает в стандартной связке с XDebug, позволяя находить некорректный и ошибочный код, отслеживать состояние переменных, в том числе глобальных, выполнять трассировку стека. Есть возможность пошаговой отладки, а также использования точек останова в скриптах.
Базы данных и SQL запросы: в редакторе есть встроенный браузер, позволяющий полноценную работу с базами данных: просмотр и редактирование информации, структуры таблиц, их связей. Работает со всеми версиями MySQL и SQLite, а также PostgreSQL и Firebird.
FTP: все операции с файлами, включая удаленное редактирование и сохранение на сервере, выполняются за счет встроенного FTP-клиент, поддерживающего все типы основных и защищенных соединений.
Поддержка фреймворков: встроена поддержка Smarty, а другие библиотеки можно подключать через пункт Frameworks вменю Options.
CodeLobster
CodeLobster – один из наиболее известных редакторов, который написан на языке программирования C++, имеет гибкий интерфейс и множество настроек, позволяющих работать с любыми WEB-технологиями.
Работа с CodeLobster: по умолчанию встроен весь необходимый функционал, позволяющий работать с отдельными файлами и проектами в директориях. Программа запоминает структуру проекта и обеспечивает простую и быструю навигацию, определение и подсветку некорректных участков с ошибками. А также позволяет работать с файлами, содержащими куски кода, написанные на разных языках, например, PHP, JavaScript, HTML, которые автоматически определятся и подсвечиваются различными цветами для удобства. Для всех основных функций есть дублирующие комбинации клавиш, которые быстро запоминаются, облегчают и ускоряют работу. Встроенная справка, со всплывающими подсказками, быстрой подстановкой функций и т.д.
Включение динамической помощи через вкладку Dynamic Help, позволит автоматически подбирать и показывать список ссылок на файлы, в которых содержатся требуемые элементы кода.
Возможность отладки: установка расширения XDebug, а также включение соответствующей опции на сервере, позволяя производить отладку, редактирование и устранение ошибок, с моментальной проверкой результата отработки скрипта или подпрограммы.
Базы данных и запросы SQL: имеется встроенный клиент для работы со всеми основными видами баз данных, а также возможность одновременного создания нескольких подключений, формирование запросов, их сохранение и загрузка из файлов с расширением sql.
FTP: встроенный FTP-клиент имеет расширенным функционалом, хорошо справляясь с удаленной работой с файлами на сервере, в том числе для тех проектов, которые используют большой количество данных. Соединение по любому из существующих видов протоколов, включая шифрованные соединения.
Поддержка фреймворков: Базовая версия CodeLobster уже имеет все необходимое для работы с большинством популярных PHP библиотек, а также систем управления контентом. Загрузка и подключение фреймворков осуществляется непосредственно из среды редактора.
Вот так выглядит начало создания интернет-магазина с применением Magento:
Также есть возможность работы с такими популярными CMS, как Джумла (Joomla), Друпал (Drupal), ВордПресс (WordPress). Редактор автоматически загрузит и установит последние версии любой из указных систем, в дальнейшем, при необходимости, производя обновлении.
PHPStorm
PHPStorm – редактор, который является популярной IDE, один из наиболее функциональных и удобных, пользующийся огромной популярностью у программистов, от новичков до профессионалов. Редактор автоматически загружает и сохраняет структуру проекта. Разработана среда на языке Java и платформы IntelliJ IDEA. Открытый исходный код позволяет производить любые настройки и доработки, необходимые разработчику. Также есть несколько тем оформления с различными цветами интерфейса и подсветки.
Работа с PHPStorm: поддерживает работу, как с отдельными файлами, так и директориями, в которых содержится проект. Написание и редактирование кода осуществляется с возможностью использования автоподстановки и автозамены, быстрого поиска и перехода между функциями, описаниями классов, в том числе расположенными в различных исходных файлах. Также имеется система встроенной справки и контекстных подсказок, вызвать которые можно нажатием комбинации Ctrl + Q на клавиатуре.
Отладка: осуществляется в связке с расширением XDebug, который необходимо синхронизировать с соответствующей опцией PHP на сервере. После чего станет доступен весь необходимый функционал, визуальные инструменты для отладки, сообщения об ошибках, точки останова и т.д. Также возможно настроить работу в связке с Zend Debugger.
Базы данных SQL и базы данных: работа с базами данных настраивается через меню Database, вызываемое через Tool Windows в основном меню View. Можно работать со всеми версиями MySQL, Оракл, Microsoft SQL Server и другими популярными базами данных, просматривая структуру, таблиц, ключевые поля, связи, формируя различные SQL запросы и получая результаты их работы.
FTP: позволяет осуществлять все основные операции на удаленном сервере посредством обычного или защищенного соединения. Доступно редактирование, автоматическая выгрузка файлов, настраиваемая через соответствующий пункт меню.
Поддержка фреймворков: PHPStorm поддерживает абсолютное большинство стандартных движков, а также работает с основными системами управления контентом, такими как ВордПресс (WordPress), Джумла (Joomla), Друпал (Drupal).
Заключение
Благодаря командам разработчиков, многие из которых работают на некоммерческих основаниях, создано несколько мощных редакторов, представляющих собой полноценную среду разработки с поддержкой всех необходимых функций написания и редактирования кода, его отладки при помощи удобных визуальных инструментов, сохранения и выгрузки на сервер.
Такой софт разработаны, как на основе открытых платформ, так и классических мощных языков программирования C++, на котором написан редактор CodeLobster и ряд других.
Редакторы продолжают активно развиваться и совершенствоваться, позволяя обеспечивать программирование самых сложных скриптов и программ на PHP и других языках WEB-разработки. Скачав и установив один из разработанных редакторов, вы можете приступать к разработке своего собственного сайта, от блога до интернет-магазина, в том числе используя популярные движки и системы управления контентом. Среда редактора позволит выполнять написание и доработку любых модулей, производить их отладку и тестирование.
Однозначного ответа о том, какой из рассмотренных редакторов является лучшим, дать нельзя. Каждый из них имеет свои преимущества и недостатки, лучше или хуже взаимодействуя с определенными базами данных, фреймворками, CMS. Кроме того, стиль оформления должен быть комфортным для программиста, а возможность настроек максимально гибкой.
Сам уже давно использую Webuilder (более расширенная версия Rapid PHP) от тех же разработчиков. У нее просто больше возможностей.
У остальных программ из обзора гораздо меньше удобств и возможностей в плане полу-визуального создания кода типа кнопки на панели, сразу вставляющей нужный код и удобное создание/хранение сниппетов (для меня это очень важно). Эти вещи сильно ускоряют и упрощают работу.
Пример: тут просто кликнул на кнопке вставки формы на панели инструментов и потом покликал на нужном. Почти все действия такого типа можно делать мышкой, что сильно быстрее ручного набора и автоподсказок, по которым легко промахнуться, да и вся эта динамика сильно утомляет глаза.
Еще один плюс Webuilder - есть светлая тема оформления, чего часто нет в других вариантах, а для меня темные темы просто катастрофа. Тупо не вижу, да и вгоняют в депрессию... В том же Webuilder есть очень подробная настройка редактора кода - цвета, шрифты, размеры. В большинстве аналогов это сделано неудобно или гораздо меньше выбор.
Единственный минус у этого редактора - крайне неудобная и невнятная система обновления. У меня слетали пароли и не мог восстановить. Возможно, сейчас уже это пофиксили (у меня версия аж 2020 года). В целом, даже с учетом озвученного недостатка, для меня это безальтернативный выбор.