Тема: Обзор PHP редакторов (IDE)
AlkatraZ (SV!) [Off] [#] (29.05.2010 / 10:50) Уездный предводитель Каманчей |
http://netbeans.org/downloads/index.html
РУССКИЙ: есть
ВЕРДИКТ: хороший редактор кода, несмотря на отсутствие некоторых нужных функций, будет отличным выбором. А если Вы работаете в среде Linux – то возможно и наилучшим выбором!
ОЦЕНКА: 4
Каюсь, как то упустил из виду этот редактор, спасибо Akdmeh, что натолкнул на мысль. Посему, исправляю пробел и выкладываю обзор NetBeans 6.8
На многих профессиональных форумах по РНР, про NetBeans можно слышать довольно часто. Причем о нем упоминают не только как «мой любимый редактор», но и зачастую вообще, отмечают как лучший редактор для РНР кодера. Давайте непредвзято разберемся, так ли это и каковы основания утверждать, что NetBeans – лучшее решение для РНР программиста?
Сразу скажу, что редактор весьма неплох. Конечно нельзя сказать, что он лучший из лучших, и по объективным и по субъективным показателям есть и покруче, но полюбому, NetBeans стоит близко к «вершине». Это что касается среды Windows, где выбор редакторов весьма велик. Что касается среды Linux, тут я абсолютно согласен с тем, что это самый лучший редактор из всех. Учитывая еще тот факт, что он бесплатный и руссифицирован, для линуксоида однозначно «мастхэв» и рекомендуется к применению. Лучше не найдете, Eclipse PDT проигрывает NetBeans по многим показателям.
Теперь рассмотрим саму работу в редакторе.
Несмотря на то, что он посторен на Java, которая славится своими тормозами, работает весьма шустро, нет всяких «раздумий» и тех, вроде бы незаметных, но действующих на нервы притормаживаний при открытий контекстных и обычных меню.
Сам редактор кода приятен на вид. Хоть и выбор цветов для подсветки кода – спорный момент, но их (цвета) можно настроить под свой вкус. Но в остальном, редактор на высоте, а по контекстным подсказкам и функциям дополнения кода – один из наилучших. Отличная «живая» проверка на ошибки. А строка, где вживую отмечаются строки, где были изменения (редактировался код) вообще вещь уникальная и очень удобная.
В целом, собственно редактор кода – один из наилучших, тут вполне можно было бы согласиться с утверждением, что это «лучший редактор для РНР», если бы не досадные недочеты, такие, как отсутствие контекстной справки по функциям, невозможность глобального поиска объявленной переменной, ужасный журнал в SVN (и мало функций) и главное, идиотский навигатор по коду.
Но полюбому, в целом IDE очень хорош и если вы его себе выберите в качестве основного инструмента работы с РНР кодом – не ошибетесь и будете довольны. Учитывая, что редактор бесплатный, имеет Русский интерфейс, то отличный выбор. А уж если Вы работаете в среде Linux, то и наиболее оптимальный выбор!
З.Ы.
Если будете скачивать данный редактор, не забывайте, что вначале нужно скачать и установить Java http://java.com а потом сам редактор http://netbeans.org/downloads/index.html
Причем, обратите внимание, что там для загрузки предлагаются различные сборки, Вам же нужно обратить внимание только на РНР (если конечно не занимаетесь другими языками программирования).
---
Функция: Возможность сворачивания блоков кода (Code Folding)
Реализация: Стандартная реализация возможности, вполне удобная для работы, однако нет таких продвинутых возможностей как в NuSphere PhpEd или Rapid PHP.
Оценка: 4
Функция: Возможность редактировать один скрипт в двух окнах, или с разбивкой одного (Code Split).
Реализация: Похоже на Eclipse, однако даже удобнее. Окно делить на области нельзя, но есть возможность открыть тот же код в новом окне, а само окно потом расположить как угодно.
Оценка: 5
Функция: Настраиваемая подсветка кода
Реализация: Стандартная реализация функции, без лишних наворотов и особо продвинутых возможностей, но вполне удобная.
Оценка: 4
Функция: Живая проверка синтаксиса
Реализация: Очень удобная реализация, одна из лучших. Работает быстро, результат показывает в удобном виде. Работать просто и приятно.
Оценка: 5
Функция: Контекстная справка по функциям
Реализация: К большому удивлению, в таком хорошем редакторе нет встроенной контекстной справки по функциям РНР, что добавляет очень большую ложку говна в бочку с медом NetBeans.
Конечно существует отдельно загружаемый плагин, который позволяет в Online режиме искать справку на сайте РНР, но это требует постоянного соединения с Internet и не всегда удобно. Локальную справку в формате CHM, как есть у большинства других РНР редакторов, в NetBeans использовать невозможно.
Оценка: 2
Функция: Навигатор по коду, с подсветкой (и желательно с группировкой) переменных
Реализация: Для РНР кодера – реализация весьма странная и неудобная. Я был сильно удивлен, когда увидел в таком, вроде бы крутом редакторе, такую дешевку. Даже откровенно дерьмовые редакторы, обосранные в предыдущих обзорах (типа DzSoft PHP Editor) имеют на борту эту возможность. А в NetBeans, при процедурном стиле программирования, данная функция вообще нулевая, не может показать ни одну переменную. При объектном стиле, показывает классы и методы, однако с переменными внутри методов не справляется.
Возможно, данная функция работает корректно при программировании на Java (для чего собственно и создавался NetBeans), но с РНР не справляется.
Оценка: 2
Функция: Поддержка "проектов"
Реализация: Приятная на вид и удобная в работе реализация поддержки проектов.
Оценка: 5
Поиск объявленой переменной по всем файлам проекта (Jump to Declaration)
Реализация: Ищет только локально, внутри самого файла. С поиском в Include не справляется.
Оценка: 3
Функция: Продвинутый поиск с заменой, как по отдельному файлу, так и по всем файлам проекта.
Реализация: Очень удобно реализованный поиск в проекте, с группировкой результатов по файлам.
Оценка: 5
Функция: Дебаггер
Реализация: Есть стандартный, встроенный Xdebug, возможность установки BreakPoint, пошагового выполнения. Много наворотов, отдельные настройки для каждого проекта.
Оценка: 4+
Функция: Профилировщик
Реализация: Конечно хотелось бы в таком неплохом редакторе видеть какой-нибудь встроенный профилировщик, типа того, что есть в Zend Studio (о таком, как в NuSphere PhpEd даже не мечтаю), но к сожалению, нет… Приходится пользоваться внешними утилитами.
Оценка: 1
Функция: Поддержка систем контроля версий
Реализация: Что касается поддержки SubVersion, внешние утилиты, типа TortoiseSVN не поддерживаются.
Имеется свой встроенный клиент (который загружается отдельно), но он весьма странный и неоднозначный. К примеру, он имеет весьма неплохой внешний вид (в менеджере проектов и файлов), отлично реализованную функцию сравнения различий (одна из самых наглядных и удобных из того, что я видел), но вместе с тем, в целом имеет убогий функционал, не идущий ни в какое сравнение с TortoiseSVN. А уж как реализован «Журнал», это вообще ужос…
Оценка: 3+
Функция: Поддержка различных кодировок (Unicode и др.)
Реализация: Не совсем удобная. Конечно есть поддержка различных кодировок на уровне проекта, UTF поддерживает без проблем. Но нет никаких настроек для отдельного файла.
Оценка: 3
---
Дополнительные возможности
Функция: Форматер кода
Реализация: Настроек мало, но те, что есть по умолчанию, работают хорошо.
Оценка: 4
Функция: Вставка элементов HTML (формы, таблицы и др.)
Реализация: Когда писал этот обзор, прозевал панель под названием "палитра", которая как раз и предназначена для вставки элементов HTML, сбило с толку название. Спасибо Akdmeh, что "открыл мне глаза"
Итого, в панели под названием "Палитра" как раз и находятся различные элементы HTML, такие, как таблицы, формы и др., которые с помощью несложных визардов можно вставить в код.
Оценка: 4
---
Дополнительные ништяки:
Среди дополнительных ништяков следует отметить функцию рефакторинга. Также имеются дополнительные удобства, в виде клиента базы данных, поддержки вставки кода популярных Онлайн сервисов (типа Google, Twitter, Yahoo, Flickr и др.), связи с бугзиллой и др. мало используемые навороты.