Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Папки в дереве конфигурации #28

Open
emilskra opened this issue Jul 25, 2021 · 11 comments
Open

Папки в дереве конфигурации #28

emilskra opened this issue Jul 25, 2021 · 11 comments

Comments

@emilskra
Copy link

Сделать возможность группировать объекты в дереве по папкам.

Надо сделать это не вмешиваясь в текущую структуру файлов, как вариант - добавить новый файл с описанием принадлежности объекта к папке и при формировании дерева смотреть в него.

@DitriXNew
Copy link
Contributor

Мне кажется что тут лучше вопрос неких тегов, по которым можно и фильтровать и группировать, причем сквозь все проекты (расширения, обработки и т.д.) Так было бы однозначно круче.

@emilskra
Copy link
Author

Подсистемы?) нужны папки, по всем объектам метаданных

Я думаю это можно сделать с помощью плагинов для edt

@marmyshev
Copy link
Owner

а что из себя представляют эти папки? какой пример каталогизации?

а что должно отображаться в каждой папке? дерево метаданных или метаданные общим списком вперемешку?

@emilskra
Copy link
Author

а что из себя представляют эти папки? какой пример каталогизации?

а что должно отображаться в каждой папке? дерево метаданных или метаданные общим списком вперемешку?

  1. В качестве примера можно взять структуру проекта не на 1с, где файлы модулей разделяются на папки

  2. Это обсуждаемо, возможно совмещение этих вариантов, но мне кажется лучше только разделение внутри вида метаданных, например:

Общие модули:
Папка 1
Папка 2
Обработки:
Папка 1
Папуа 2

Острее всего такая необходимость проявляется именно в общих модулях и, наверное, в обработках.

Я видел у вас примеры для обработки дерева, просто мне надо углубиться и над джавой поэкспериментировать ))

@marmyshev
Copy link
Owner

В качестве примера можно взять структуру проекта не на 1с, где файлы модулей разделяются на папки

Это безсмыслеца в общем случае.

В любом проекте (любого языка) - есть идеологическая структура (модули, пакеты, ресурсная иерархия, тесты) а уж потом эту идеологию как-то пытаются воплотить в папках файловой структуры.

Собственно, я как раз спрашивал об идеологии. в чем она?

Тут случаем, не про "модульность в 1С" ли речь? Если да, то надо так и писать.

@emilskra
Copy link
Author

В качестве примера можно взять структуру проекта не на 1с, где файлы модулей разделяются на папки

Это безсмыслеца в общем случае.

В любом проекте (любого языка) - есть идеологическая структура (модули, пакеты, ресурсная иерархия, тесты) а уж потом эту идеологию как-то пытаются воплотить в папках файловой структуры.

Собственно, я как раз спрашивал об идеологии. в чем она?

Тут случаем, не про "модульность в 1С" ли речь? Если да, то надо так и писать.

И она не ограничивается строго и так же не ограничивается уровень вложенности

Я честно говоря вообще не понимаю почему это не очевидно, откройте в ERP список общих модулей, это страдание и боль его читать и листать

@marmyshev
Copy link
Owner

И снова нет ответа на вопрос: в чем идеология разделения однородных объектов?

@emilskra
Copy link
Author

И снова нет ответа на вопрос: в чем идеология разделения однородных объектов?

Нет никакой идеологии, их просто много становится и этим управлять все сложнее.

В платформе уже разделены логически метаданные да, но почему идея дать разделять так же самостоятельно, кажется такой неоднозначной?

@marmyshev
Copy link
Owner

marmyshev commented Aug 29, 2021

Ну вот пример, если без "а давайте папки сделаем как вдругих языках":

В Java (например) есть классы.
У классов есть неймспейсы (пакеты) которые делают их общими в рамках неймспейса.
Пакеты объединяются в модули.
Модули можно дистрибьюироаать в виде общего архива классов.

На пакеты и модули накладывается различная функциональная идеология (например пределы видимости класса в рамках пакета или в рамках модуля, или в рамках API для конкретного модуля.

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

А исполняется в рантайме это всё из архива-модуля в котором классы общим списком лежат.

Понимаете теперь, что тут создатели IDE решили, что можно бы эту идеологию сохранять не только в таблице, но и в файловой структуре? Что конечно удобнее, если смотреть на хранение исходников на компе разработчика (у которых файловая таблица File Allocation Table (FAT) - вовсе не "таблица", а каталоги)

Причём разные IDE, и даже разные типы проектов на Java - по разному раскладывают классы по папкам!
Идеология в общем-то одна, а реализаций файловой структуры в мире Java несколько!

@7OH
Copy link

7OH commented Apr 12, 2023

И снова нет ответа на вопрос: в чем идеология разделения однородных объектов?

Не уверен, реализовано ли.
Но хотя бы для работы над задачами.
Создал задачу - накидал туда объекты, нужные для этой задачи.
Переключили на другую - пожалуйста - ещё одна папка с объектами.

@marmyshev
Copy link
Owner

Но хотя бы для работы над задачами.
Создал задачу - накидал туда объекты, нужные для этой задачи.
Переключили на другую - пожалуйста - ещё одна папка с объектами.

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

В навигаторе, например - разделять объекты из задачи и остальные объекты - двумя разными папками в проекте.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants