Интересует опыт использования различных инструментов 1) для создания и изменения php-файлов, вёрстки html, управления структурой. в системе есть только wysiwyg и блокнот.
блокнот это круто... но не подсвечивает код, нет intellisense, не хранит историю изменений
2) для разделения разработки и работающего сайта. как обновлять версию движка, какими методами я практикую использовать 3 версии: разработка компонентов, тестовая, работающая (опубликованная)
интересно знать опыт сотрудников 1С-Битрикса по использованию различных систем и методов
Я использую Notepad++ подсветка есть и не только PHP + всякие поиски, автозамены и пр. штуки. по поводу intellisense не могу ничего сказать. Я его использовал только в homesite.
На счет intellisense, если бы уважаемые разработчики ядра имели привычку документировать код в стиле phpDoc то при создании проекта в выше перечисленных мной IDE все бы работало.
Но так как БУС перепичкан нужными и не нужными файлами, нужен сеперкомпьютер чтобы работать в IDE на яве с проектом.
Если рабочий комп адекватный, то можно просто юзать Eclipse like идешки, если слабенький то впринципе тоже можно, но лучше создавать отдельные проекты на конкретные папки (напр на components, templates и тд), иначе уснете ждать, когда он 40000+ файлов проиндексирует
Дмитрий Вислов пишет: но лучше создавать отдельные проекты на конкретные папки (напр на components, templates и тд)
Я так тоже подумал и сделал, но теряется смысл в проекте вообще. Автокомплида API битрикса все равно не будет без ядра. Но это уже лучше чем проект целиком.
JetBrains WebIDE PHP Developer Edition 45сек - загрузка проекта +30сек - переиндексация зависимостей(может работать в background)
Pentium 4 2.4 GHz RAM 1GB
Дальше работает - сказка. Быстрее NetBeans / Eclipse.
Цитата
Рамиль Юналиев пишет: Я так тоже подумал и сделал, но теряется смысл в проекте вообще. Автокомплида API битрикса все равно не будет без ядра. Но это уже лучше чем проект целиком.
Таки да. Автокомлит только для переменные, использую один проект на все файлы сайта - просто удобно.
Александр Гусев пишет: ну как, альтернитивы zend studio 5 по скорости кто нить нашел? что бы автокомплит классов::методов работал, без лагов?
- JetBrains WebIDE PHP Developer Edition WebIDE вполне справляется с автокомплитом. Причем наличие большого количества файликов в том же Бизнесе ее не особо смущает. Вобщем это больше ответ сюда:
Цитата
Дмитрий Вислов пишет: Если рабочий комп адекватный, то можно просто юзать Eclipse like идешки, если слабенький то впринципе тоже можно
Только вот вопрос к гуру: не статический метод класса имеет право вызываться таким образом - класс::метод или желателен вызов из объекта объект_класса->метод() ?
Я речь веду о редакциях бизнес и все дела, т.е. файлов полным-полно.
Anton Guz: если ты про PhpStorm, то при дефолтных настройках автокомплит для "CIBlockElement::" тыкаю автокомплит "GetList" не вылазит, такие пироги, уже давно у них. Если метод как статичный работает правильно, то вызывай как нравится
Александр Кудин: после того же zend studio 5 заметны "подумывания" в netbeans. Вот в Zend Studio 8 beta уже более менее жить можно, и скорость автокомплита, и сам автокомплит.
На мой взгляд из IDE не тупят пока только ZendStudio5, 6.1, и 8 beta, в остальных либо не комфортно работать - подтупливают, либо просто автокомплита нет. Кстати в 8й версии вкусненького появилось.
Если финансы позволяют, рекомендую Zend Studio for Eclipse из последних.
Достоинства: 1) Удобство, привычный для многих интерфейс и довольно мощный функционал эклипсины. 2) Спелчекинг php, js, html, css "на лету". 3) Возможность работать удаленно совершенно прозрачно по ssh (удобная навигация, включая копирование папок с файлами с сервера на сервер, управление правами файлов и т.д). 4) Окно Outline, окно ошибок, TODO и другие полезные окна. 5) Всемогущий ctrl+пробел. 6) Возможность создавать локальный проект и подключать в него удаленную папку по ssh, что позволяет ctrl+пробелу таскать описания переменных, классов и функций из всех файлов проекта в редактируемый. 7) Встроенная php документация, поддержка и автодополнение PHPDoc проекта. 8) Ведение лога версий с возможностью сравнения версий и отката до любого сохранения, в том числе и для remote файлов. 9) Встроенная ssh-консоль, которая даже поддерживает терминальные утилиты типа top и mc. ...Ну и много всего остального, включая менеджер базы данных.
Недостатки: 1) Немного притормаживающий интерфейс на яве поначалу может раздражать, потом привыкаешь :) На ноуте с Core Duo и памятью от 2 гигов уже не сильно напрягает. 2) Иногда что-то из явовых интерфейсов может отвалиться, и интерфейс начинает подглючивать. Такое бывает редко, в сновном при работе в remote systems (возможно, связано с коннектом). Помогает перезапуск.
Если нужно попроще и бесплатно, то почти все из этого умеет Eclipse (Ganymede), включая недостатки.
Если срочно на нетбуке "скачать отредактировать и закачать" - то WinSCP и Notepad++
Экс-битриксоид.
Компонент (и.с.) - существительное мужского рода (ГОСТ 34.003-90).
Здравствуйте, умные люди, наткнулся на эту ветку, может быть здесь кто-нибудь подскажет как мне всетаки версионность файлов php в эклипсе побороть?
Дело в следующем: Ни в одной сборке не хочет работать “Compare With” для .php файлов. Для всех остальных (html, css, js) все прекрасно работает. Причем в хистори версионность отображается, даже окошко сравнения открывается по двойному клику на нужной для сравнения версии, но открывается оно как-бы пустым. Свою криворукость исключаю, в чистых только что распакованных сборках тоже не работает
В одну из сборок поставил RSE плагин, попробовал повызывать сравнение для файлов на сервере через него, для всех файлов (html, css, js) по клику на пункте меню “Compare With –> Local History…” открывается отдельное окошко с версиями файла и сразу со сравнением, но для .php файлов не происходит вообще ничего.
Расскажу на примере eclipse-php-helios-SR1-win32 сборки где уже PDT установлен, который свой редактор php имеет. Поставил сборку создал проект, создал php файл, изменил, вызвал вид истории, все версии там перечислены, кликаю на одну из версий и вот такое окошко открывается, причем выбрать там редактор или что-то изменить нельзя т.к. оно совсем пустое http://clip2net.com/clip/m17400/1297937867-clip-12kb.png
Но это еще не все. По умолчанию в главных настройках в файловых ассоциациях вообще нет .php, беру добавляю *.php и выставляю для него редактор от PDT по умолчанию, пытаюсь открыть сравнение - ничего. Иду обратно ставлю по дефолту простой эклипсовский редактор для всех .php файлов - сравнение тоже не работает:( После настроек я эклипс на всякий случай еще и перегружал.
Эх может кто именно занимается php разработкой подскажет? Не может же такого быть чтобы такая нужная функция не работала для этого типа файлов, да и дело наверное пустяковое, сто процентов где-то нужно предательскую галочку включить
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс» beskrovnyy.com
Windows, Mac, Linux? Yes. PHP, Python, Ruby, JavaScript, Perl, Tcl, XML, HTML 5, CSS 3? Yes, with (customizable) syntax coloring, folding, background syntax checking, and excellent auto-complete and calltips (we call it "code intelligence"). What else? Fast open (no more slow poking around for files); remote file editing; Vi keybindings (good ones); and a toolbox with shell command integration, macros and code snippets... all wrapped around a tricked-out editor and an extension mechanism the same as Firefox's.
Кратко: - работает везде - работает со всеми основными языками - не тормозит как ява-поделки вроде нетбинса - подсветка синтаксиса - спелчекинг на лету - дерево файлов - работа по фтп, ссх - отслеживание состояния файлов - настраиваемый внешний вид...
Пользуюсь sublime-text-2, очень доволен. По функционалу он конечно уступает многим перечисленным тут IDE, но мне скорее нужен удобный и быстрый текстовый редактор, а не монстроузная среда разработки.
В эту тему попал искав сниппеты битрикс для sublime или может каких-нибудь других редакторов... Похоже пока всё что есть в сети это https://snipt.net/search/?q=bitrix
Сам для себя по тихоньку пишу некоторые конструкции, думал может скооперироваться с кем-нибудь, особенно кто в sb2 кодит, да создать полноценный сниппет-пак. Если это кому-нибудь интересно пишите на email (alex.step.kellas@gmail.com).
Денис Диденко пишет: Как заставить phpStorm научится автокомплиту битриксовых классов?
Достаточно скопировать ядро Битрикса (/bitrix/modules) в локальную папку проекта. phpStorm сам просканирует на наличие тех или иных классов, и сможет их автодополнять.
Только что б работать с глобальными переменными Битрикса, стоит в шапку php-файла добавлять:
Update: Автокомплит для автокомплит для "CIBlockElement::" не умеет. Ему нужен или наличие объекта через new CIBlockElement или явное определение класса CIBlockElement, что он статичный.