- PVSM.RU - https://www.pvsm.ru -

1C: Enterprise Development Tools, или Eclipse на русском

1C: Enterprise Development Tools, или Eclipse на русском - 1

Встречайте — 1C: Enterprise Development Tools.

Начну с предыстории.

Два года назад Борис Нуралиев, директор фирмы «1С», дал большое интервью сообществу [1] INFOSTART.RU. Самым популярным вопросом был про усовершенствование среды разработки для программистов 1С.

На днях [2], произошел очень интересный этап в истории развития 1С – была выпущена новая среда разработки под 1С — 1C:Enterprise Development Tools.

1C:EDT – это новая среда для разработки под «1С: Предприятие 8», которая основана на базе открытой платформы Eclipse.
Да, да, да – встречайте, во всех странах СНГ и не только – Eclipse с разработкой на русском языке!
(под катом много больших картинок)

На текущий момент это всего лишь ознакомительная версия, тут нет очень многих вещей, и даже объектов, которые необходимы для полноценной разработки в 1С. Но и это не плохо, так как 1С официально заявило [3] следующее:

«Данная версия не предназначена для полноценной разработки, она может быть использована только для ознакомления с концепциями и технологиями разрабатываемого инструмента, а также для разработки небольших, простых конфигураций».

Список ограничений на текущий момент зашкаливает, однако это очень приятный шаг со стороны 1С, так как ранее они ничего не публиковали в общий доступ, если это не прошло хотя бы предварительные бета тесты, и то, публикуют это все-равно в разделы для тестирования. Эта линия очень четко отслеживается по мобильной платформе 1С.

Так как 1С взяли за основу Eclipse, то автоматом получились вот такие требования:

1C: Enterprise Development Tools, или Eclipse на русском - 2

Естественно, что работает все на Windows 8/8.1, однако в этом случае надо Java 8, а не 7.

Однако, теперь разрабатывать можно и в среде Mac OS.

Но, для начала, перед тем как обрадуются поклонники Mac OS, следует немного объяснить принципы работы в Eclipse, в случае 1С – Eclipse, это текстовый редактор, который просто позволяет редактировать xml, в которых описаны объекты 1С, а это значит, что вы работаете не с базой 1С, как это обычно привыкли делать программисты 1С, а только с конфигурацией, которую вы потом обновляете в конкретной базе данных.
А отсюда следует, что разработка под Mac OS, в отличие от Windows и Linux, может заключаться только в редактировании данных, без возможности привычной нам отладки.

Ну и как можно догадаться, без полноценного 1С предприятия и доступа к конфигуратору отладка не получится.
Одно из ключевых преимуществ (как по мне) — к каждой базе теперь можно подключить n-проектов, т.е. ранее мы не могли, работая с одной базой данных, разрабатывать несколько конфигураций. Точнее могли, но тогда надо было бы возиться с двумя (тремя … n) конфигураторами, выгружать и загружать конфигурации, и вообще – каждый конфигуратор, это отдельное окно. Теперь каждый конфигуратор — это, по сути, отдельный проект.

Но, хватит полемики, давайте перейдем уже к действиям и скринам. Из описанного выше – понятно, что нам надо иметь установленную версию 1С, полноценную, ну и теперь необходимо скачать еще один дополнительный файл. Все это скачать можно тут [4] (только для тех, кто подписан на ИТС). А справка по этому продукту находится тут [5].

На странице скачивания вы выбираете нужную версию 1С, как это делается обычно, и нужную версию 1C:EDT. Обратите внимание, что разрядность EDT и Java должны совпадать, т.е. или оба x86 или оба x64.
Далее необходимо установить саму 1С, если не установите – работать ничего не будет, т.е. нужно установить именно ту версию, которая дается на этой странице.

После этого надо разархивировать архив com._1c.g5.v8.dt.rcp-win32.win32.x86_64, и можно приступать к работе в Eclipse. Для этого достаточно запустить файл dt.exe. Но, перед запуском – удостоверьтесь, что у вас более 4Гб оперативки, так как со стандартными настройками – виртуальная машина отъедает 3Гб, если у вас меньше оперативки, то можно изменить настройки в файле dt.ini, там есть такая строка -Xmx3072m, вот число – это объем памяти, меньше 2Гб лучше не ставить, а то чревато ошибкой Out of memory.

Сам по себе архив – это компиляция Eclipse с предустановленными плагинами. Т.е. в данном случае не получится подключить свои плагины и настройки из стандартной версии Eclipse, как это можно сделать в случае разработки под Android, когда просто мы указываем путь, выбираем нужные объекты и Eclipse автоматом все настраивает и обновляет. Но, я думаю, что 1С и это вскоре сделает.Первый запуск будет долгий, и так будет всегда, увы, так как создается виртуальная среда, которая после выхода – уничтожается. Но, с другой стороны, это не большая проблема, так как вам для работы с разными базами не надо будет открывать 100500 вариантов Eclipse.

При запуске вы увидите вот такое красивое окошко:

1C: Enterprise Development Tools, или Eclipse на русском - 3

Итак, после запуска – для тех, кто раньше работал в Eclipse, — не будет ничего особо нового. Интерфейс по умолчанию выглядит вот так:

1C: Enterprise Development Tools, или Eclipse на русском - 4

Тут сразу видно, что появились новые перспективы:

1C: Enterprise Development Tools, или Eclipse на русском - 5

Давайте познакомимся поближе с перспективой 1С. Справа внизу находятся доступные базы данных, причем это всего лишь отображение подключенных баз у текущего пользователя. В данном случае 1С просто считывает файл ibases.v8i. Так что тут сразу будут импортированы те базы, которые у вас уже были ранее подключены.

Там же и происходит управление веб-сервером:

1C: Enterprise Development Tools, или Eclipse на русском - 6

Тут ничего особенного, тут обычные настройки, которые необходимы для публикации базы. Причем все на английском. Вообще тут надо привыкнуть, ибо интерфейс русско-английский, ну и конечно – это в будущем исправят.

Теперь можно добавить конфигурацию в проект:

1C: Enterprise Development Tools, или Eclipse на русском - 7

Для этого ее необходимо импортировать. После импорта, те базы, конфигурации которых у вас импортированы, будут иметь дополнение в наименовании в фигурных скобках, как в данном случае.

Далее нам станут доступны объекты этой конфигурации, и мы ее увидим уже в привычном нам виде:

1C: Enterprise Development Tools, или Eclipse на русском - 8

Увы, но на текущий момент недоступно слишком много свойств и объектов. Однако это совершенно не мешает разрабатывать простенькие конфигурации, например, для мобильной платформы 1С.

Вот так выглядит форма документа:

1C: Enterprise Development Tools, или Eclipse на русском - 9 [6]

Стоить отметить, что в целом – 1С сумели сохранить привычный всем вид рисования форм. Но и добавили несколько плюшек (или это баги?). Например, ранее – добавляя поле на форму – мы не видели его тип, и это не страшно, когда вопрос касался примитивных типов. Но когда начинаешь указывать ссылки, то можно и запутаться, особенно когда форма достаточно большая, и в ней существует несколько вариантов отображения данных, в зависимости от начальных условий. Особенно это касается новых конфигураций (например, УНФ).
А тут нам сразу указывается и тип, ну не чудесно ли? Осталось надеяться, что это не баг :)

Ну пока формы кривоваты, но тем не менее, для альфа релиза – я ожидал худшего.

Теперь я подключу другую конфигурацию, и посмотрим какой-то код:

1C: Enterprise Development Tools, или Eclipse на русском - 10 [7]

Как видно – теперь вполне одновременно можно работать с разными объектами разных конфигураций в одной среде, слева доступен список функций и процедур, список поделен по областям (которые в стандартном конфигураторе чуть более чем бесполезные).

Выделяются экспортные функции, параметры, и подсвечивается текущая функция, в которой вы находитесь, для примера, вот так это выглядело ранее:

1C: Enterprise Development Tools, или Eclipse на русском - 11

Но все это мелочи по сравнению с тем, что 1С сделали дальше. А дальше они сделали удобной функцию удаленной отладки. Т.е. теперь можно использовать отдельный сервер для отладки данных. К сожалению – информации немного на этот счет. Но, как можно догадаться из настроек – поднимается некий веб-сервер для отладки и через него происходит работа с отладкой всех платформ, в том числе и мобильной.

А это в свою очередь значит, что получен удобный механизм, когда разработчикам 1С больше не надо тягать базы к себе на компы, потому что обычно среда тестового сервера не располагает всеми возможностями, которые есть на своих компьютерах. Да и каждый раз прыгать от сервера к серверу – было не круто.

Теперь можно управлять кучей серверов, удаленно отлаживать данные, работать в своей среде на своем компьютере. К тому же 1С сделали возможность зашифровать канал передачи данных (на что, увы, 99% 1Сников и админов не обратят внимания).

Кроме этого всего – 1С подключили плагины для работы с git. Так что вскоре, для всех тех, кто страдает от работы с хранилищем конфигураций, можно будет смело перейти на git. Описывать работу с гитхабом я смысла не вижу, там «все как обычно».

1С даже создали свою ветку [8], где они выложили одну из демо конфигураций в свободный доступ.

Но, на фоне того, что 1С начала работать вплотную над проектом EDT, они были вынуждены сделать несколько решений, которые они все-таки внедрили в старый добрый конфигуратор:

1C: Enterprise Development Tools, или Eclipse на русском - 12 [9]

Я думаю рассказывать тут особо нечего, все понятно из скрина.

Выводы:

Таким образом, случилось то, чего боялись большинство программистов «не 1С» — русский язык идет в ваши ряды :)

С другой стороны, для программистов 1С – это большой скачок в развитии. Теперь уже порог входа немного увеличился, и, я думаю, немалая часть программистов отвалится, оставшись на старых версиях конфигуратора, как это было с 7.7. Но те, кто смогут осилить новые парадигмы и принципы – будут вознаграждены тем, что научаться работать в популярной среде. А значит, переключаться между разными языками программирования будет намного проще. А, как все однэсники знают – мы одним 1С не ограничиваемся, ибо вечно надо что-то допилить на JS,VBS, SQL, Bash, HTML, а с выходом мобильной платформы – надо будет еще писать и под Андроид, а тут все это в одном флаконе устроить можно будет.

Конечно, обидно, что нет поддержки IDEA, но я думаю и это не за горами, так как когда только выбрали это направление в 1С – IDEA была еще не слишком популярной, даже Android разработчики обходили ее стороной, из-за отсутствия среды для рисования форм, что в 1С – является ключевым функционалом.

Так что жди, мир! Мы идем!

P.S. Специально для тех, кто очень хочет увидеть русский язык в Eclipse и рассказать о том, что программировать на русском – это убожество, то прошу под спойлер:

Берегите глаза

Тут очень хорошо видно, как удобно реализованы области.

1C: Enterprise Development Tools, или Eclipse на русском - 13 [10]

А вот так реализована отладка. При чем localhost с портом (слева вверху) как бы намекает на то, что там может стоять ip адрес другого компа.

Автор: Melex

Источник [11]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/programmirovanie/88877

Ссылки в тексте:

[1] интервью сообществу: http://infostart.ru/public/194059/

[2] На днях: http://www.1c.ru/news/info.jsp?id=19821

[3] заявило: http://v8.1c.ru/overview/release_IDE/

[4] тут: https://users.v8.1c.ru/distribution/version_files?nick=DevelopmentTools10&ver=1.0.0.198

[5] тут: http://its.1c.ru/db/devtools#bookmark:dt:TI000000001

[6] Image: http://hsto.org/files/3a0/497/404/3a049740446342f58647c1d62e74b61b.jpg

[7] Image: http://hsto.org/files/183/42f/4f4/18342f4f491943dfaf0d1e749ba7949e.jpg

[8] свою ветку: https://github.com/1C-Company/dt-demo-configuration

[9] Image: http://hsto.org/files/d4e/9d8/a50/d4e9d8a50e70421389b3542375d581f6.jpg

[10] Image: http://hsto.org/files/f48/bab/b2c/f48babb2ce3f4bbebee278a47c54aeb0.jpg

[11] Источник: http://habrahabr.ru/post/255757/