Содержание

Редактор для PHP

Редактор для PHP?

Конечно хочется иметь хорошую среду разработки, на подобии Visual Studio или Java Studio или Borland.

Но в итоге приходится довольствоваться тем что есть.

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

История

Для начала немного истории. Когда-то, конечно и я был виндузятником и не знал о существовании пингвиньего сообщества, немного похожего на коммунизм. В те далекие времена (ох как я заговорил, ведь не так давно это и было) я и занялся разработкой на php. Сначала для этого я использовал DreamWeaver, затем друзья посоветовали Zend - там можно было отлаживать. Это был прорыв. Но что Zend IDE, что DreamWeaver съедали много системных ресурсов, отладка была нужна не всегда, и для того чтобы поправить пару строк не нужен был даже так называемый коде-хинтинг (всплывающие подсказки на классы,функции и их параметры). По сему наткнувшись на Notepad++ я был безмерно счастлив. Но вскоре я понял что под windows разрабатывать для linux - это по меньшей мере маразм. Установил на машину Linux. Тут то все и началось. Пока еще не была скачана Zend IDE - первое что попалось на глаза - gPHPEdit.

gPHPEdit

Интересная надо сказать вещь… Хорошо работает коде-хинтинг но только по открытым файлам. Приятная подсветка синтаксиса. Маленький приятный и быстрый редактор. Очень хорошо на проектах не более 10 файлов.

Zend Studio

Этого кандидата я думаю никому представлять не нужно, code-brauser, отладчик, code-hinting, Поддержка проектов. Sql и Ftp клиенты. Дело в том что стоит он при переводе в рубли приблизительно 7500. Для меня это накладно, а работодателя раскрутить удается не всегда. Тем более что на моей машине это была единственная проприетарная программа. В один прекрасный момент я решил быть честным. А как же? Я тоже программист и хочу получать зарплату за производимые мной программные продукты. Надо сказать будучи написанной на java студия не хило тормозит и конкретно кушает память. Так чем же я заменил ZDE? На тот момент в руки попался KDevelop.

KDevelop

Очень мощный но достаточно тяжелый редактор. В его составе имеется и code-browser и code-hinting, правда оба в основе своей держат ctags, который пока мало адаптирован к php. Поддерживает проекты. Имеет wizard для автоматического создания документации при помощи doxygen. Doxygen к слову - мне лично понравился гораздо больше, чем phpdoc. Doxygen может создавать документацию в таких форматах как html, xml-docbook, pdf, man. Так же генерирует UML-диаграммы. Поддержка нескольких систем контроля версий. В общем много чем меня зацепил KDevelop, но отладчик для php он не поддерживает, потому мои скитания продолжились.

ProtoEditor

Простой легкий редактор. Мой взгляд упал на него благодаря поддержке xDebug, т.к. последним я пользуюсь не только для отладки, но так же для профайлинга и определения степени покрытия кода тестами. ProtoEditor поддерживает три дебагера для php. Для редактирования текста использует компонент Kate - основного текстового редактора среды KDE. При желании вроде бы можно прикрутить плагин kate-code-browser, что лично мне так и не удалось. Дело в том, что плагин не обновлялся уже несколько лет, и постоянно возникают проблемы с зависимостями при компиляции. В общем для отладки я до сих пор использую связку ProtoEditor + xDebug. Связка конечно глючит, но удобнее и легче я пока не нашел, во всяком случае из бесплатного.

Komodo-Edit

Т.к. в ProtoEditor писать код не совсем удобно - мой взор пошел гулять дальше. Результатом гуляния стал Komodo-Edit. Это бесплатный редактор основанный на движке Mozilla. Эта основа дает немыслимые возможности расширяемости. Как известно писать расширения под этот движок достаточно просто. Существует так же платная версия редактора Komodo-IDE. В последнем я нашел упоминания о поддержке дебагера для PHP. Расширений к бесплатной версии я не нашел. На момент написания этих строк последняя версия - Komodo-Edit-4.2. В данной версии появился глюк - в окне редактирования кода в Линукс-версии можно печатать только на Английском, если переключиться на другой язык - редактор перестает реагировать на нажатия буквенных клавиш. В то время как в окне поиска, и т.д. - т.е. там где текст не форматируется - реакция на переключение раскладки вполне адекватная. Как оказалось - я был вторым, кто сообщил о баге в форуме. Через пару месяцев баг был исправлен и теперь при использовании Komodo-Edit дискомфорта не ощущается.

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

Eclipse PDT

Я думал что среда написаная на Java, будет быстрее, чем написанная наполовину на JavaScript (это я о Komodo). Оказалось, что Eclipse более тормозной, во много раз более. Возможности коде-хинтинга поражают, хороший code-browser, чего явно не хватает многим редакторам, но при этом не понятно как отключить автозавершение тегов, авто-вставку закрывающих скобок и т.д. - это меня сильно раздражает. Большой недостаток - прожорливость на память и процессорные ресурсы. Я попрощался с PDT - моим последним словом было: rm -rf ~/eclipse

NetBeans IDE

Отличная подсветка кода, поддержка плагинов, поддержка макросов, поддержка xDebug для PHP. Поддержка толпы языков: PHP, C/C++, Java, JavaScript, Python, Ruby и еще много чего. Удобные функции, помогающие правильно форматировать код. На момент 2009го года это моя любимая IDE.

Собственно это все редакторы для php, которые я посчитал достойными внимания. Может в некоторых из них я недостаточно покрутил настройки, или не поискал плагинов. Но на данный момент я использую vim , kate, NetBeans IDE