1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/robergroup-pdmaner

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
story-3.0.md 24 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 09.03.2025 07:30 cf7ec16

chiner, произношение: [kaɪˈnər]

[CHINER Meta Modeling - 3.0], разработанный за три года с множеством вызовов и трудностей, был тщательно создан для того, чтобы возродиться как надёжная платформа моделирования отношений баз данных, обогащающая экосистему баз данных независимо от конкретной базы данных.

Платформа метамоделирования была построена с использованием технологической стека React + Electron + Java.

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

1. Прошлое и настоящее

  1. В начале 2018 года я и несколько друзей из сообщества, интересующихся открытым исходным кодом, создали слабую организацию. Мы завершили выпуск версии 1.0 PDMan за один и половину месяцев, решив проблему перехода от ничего к чему-то.
  2. В мае 2018 года мы выпустили первую общедоступную версию PDMan, которая постоянно обновлялась поэтапно до января 2019 года, когда обновления прекратились.
  3. В настоящее время более 3 000 компаний или индивидуумов ежедневно используют PDMan для проектирования своих баз данных.
  4. Во время нашего собственного использования и обратной связи пользователей были предложены многочисленные предложения по оптимизации.
  5. Из-за недостаточной начальной планировки реализация этих оптимизаций стала очень затруднительной. Поэтому в конце декабря 2019 года мы запланировали полностью новую версию.
  6. Когда страсть сталкивается со выживанием и развитием, сложно говорить о мечтах, будучи голодным. Наша команда прошла через множество раундов реструктуризации и почти распалась несколько раз во время этого периода.
  7. В конце 2019 года мы начали с менее чем 3 000 долларов финансирования, фактически начав без ресурсов. Благодаря поддержке нескольких друзей, нам удалось получить два проекта, разделить основную команду на две части — одна переехала в Гонконг, другая направилась на север, что решило наши немедленные потребности в средствах к существованию.
  8. На протяжении всего этого времени мы продолжали развивать и совершенствовать нашу техническую архитектуру, прототипы интерфейсов и ключевые модули в свободное время вместе с друзьями из сообщества.
  9. С постоянными инвестициями со стороны нас и наших друзей из сообщества, 17 июля 2021 года мы наконец запустили совершенно новый 3.0 версию.# 2. Происхождение имени
  10. Первое имя (публично выпущено): PDMan: Physical Data Model Manager (Управление физической моделью данных)
  11. Второе имя (внутреннее использование): SINOPER: SINO Popular Entity Relation (Самый популярный инструмент диаграмм отношений сущностей Китая). Многие внутренние коды в текущем выпуске имеют префиксы, происходящие от этого термина.
  12. Третье имя (публично выпущено): CHINER: Chinese Entity Relation (Китайский инструмент диаграмм отношений сущностей). Для удобства продвижения внутри страны китайское название — Моделирование метаданных, также известное как "CHINER [Моделирование метаданных]".

3. Основные моменты версии CHINER[Моделирование метаданных] v3.0

  1. На основе накопленного за три года опыта, чтобы решить проблемы с генетическими дефектами, мы начали всё заново, создав новую версию.
  2. Архитектура системы была полностью переработана, что позволило достичь высокой совместимости с существующим PDMan.
  3. Мы сохранили прежний рецепт и вкус, обеспечив возможность использования привычных методов работы и местное улучшение производительности.
  4. Детализированное расположение интерфейса и оптимизация операций сделали программу более удобной, простой в использовании и приятной для глаз.
  5. Внедрены новые полезные функции (например, импорт данных из PowerDesigner), что сделало программу мощнее и лучше адаптированной к экосистеме.
  6. Удалены некоторые второстепенные функции, связанные с повышенным риском использования и недостаточной эффективностью.
  7. На этот раз мы пригласили профессиональных дизайнеров UI для создания интерфейсов.Пример скриншотов

4. Описание функций

4.1 Примеры входных данных

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

4.2 Управление объектами

4.2.1 Таблицы данных и поля

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

4.2.2 Объединение нескольких таблиц

Объединение нескольких таблиц позволяет выбирать несколько таблиц и их поля, как показано ниже:

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

4.2.3 Настраиваемые типы данных и области данных

Расширенные типы данных поддерживают различные базы данных и их диалекты, как показано ниже:

Область данных используется для установки специфических бизнес-значений для типов данных, как показано ниже:

4.2.4 Стандартные данные (библиотека полей)

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

Стандартная библиотека полей поддерживает экспорт в JSON-файлы и импорт из таких файлов, что решает проблемы совместной работы и обмена данными.

4.2.5 Дата-словарь (таблица кодовых значений)

Добавлена поддержка данных-словарей для более чёткого анализа метаданных полей, как показано ниже:

Поля таблицы могут быть непосредственно связаны с данным словарём, как показано на следующем рисунке:

4.3 Множественный модульный режим и режим без модулей

Для простых проектов, не требующих разделения на модули, предлагается использовать следующую структуру: таблицы данных, представления, диаграммы связей и данные-словари. Для сложных проектов рекомендуется использование отдельных модулей; система поддерживает оба этих подхода.

Пример простого режима:

Пример режима с использованием модулей:

4.4 Диаграмма связей

4.4.1 Диаграмма ER-связей

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

4.4.2 Простая концептуальная модель

Поддерживается простая концептуальная модель, где объекты модели хранятся только в диаграмме связей, а не в виде отдельных объектов, как показано ниже:

Концептуальная модель используется для быстрого создания общего понимания ключевых бизнес-объектов системы.

4.4.3 Несколько диаграмм связей в одном модуле

В рамках одного модуля можно создавать несколько различных видов диаграмм связей:

4.5 Интерфейс редактирования канваса

4.5.1 Групповые рамки и заметочные поля

Групповые рамки используются для категоризации таблиц данных или объектов, что позволяет лучше понять структуру уровней данных, как показано ниже:

4.5.2 Настройка цвета текста и фона

Заметочные поля представляют собой обычные прямоугольные области, используемые для объяснения таблиц данных или бизнес-сценариев, как показано ниже:

4.6 Кодовые шаблоны

4.6.1 Различные диалекты DDL для разных баз данных

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

MySQL:

Oracle:

SQL Server:

4.6.2 Поддержка расширенных атрибутов, аналогичная Hive

4.6.3 Генерация кода JavaBean

4.6.4 Настройка и редактирование шаблонов кода

Движок шаблонов кода основан на doT.js, как показано ниже:

Предоставляет возможность просмотра и редактирования кода, чтобы можно было в реальном времени проверять эффект от шаблонов кода, как показано ниже:

4.7 Интеграция с экосистемой - импорт

4.7.1 Обратная инженерия баз данных

Подключение к базе данных и обратная инженерия баз данных, поддерживающая парсинг китайских комментариев в базах данных. Подключение к базе данных, как показано ниже:

Парсинг списка данных, как показано ниже:

Парсинг результатов таблицы данных, как показано ниже:

4.7.2 Импорт файла PDMan

Поддерживает импорт PDMan, который воспроизводит таблицы данных, диаграммы связей и области данных. Выбор списка для импорта, как показано ниже:

Результат после импорта, как показано ниже:

Исходное состояние PDMan, как показано ниже:

4.7.3 Импорт файла PowerDesigner

Поддерживает импорт PowerDesigner, который воспроизводит таблицы данных и области данных (воспроизведение диаграмм связей не поддерживается), как показано ниже:

Таблица выбора данных:

Итоговый импорт:

4.8 Интеграция с экосистемой — Экспорт

4.8.1 Экспорт DDL

Экспорт DDL для единичной выгрузки определённой таблицы данных в соответствии с конкретным диалектом базы данных, как показано ниже:

4.8.2 Экспорт документов Word и возможность кастомизации шаблонов

Экспорт текущей таблицы данных, диаграммы отношений и словаря данных в документ Word, как показано ниже:

Результат экспорта:

4.8.3 Экспорт диаграмм отношений в виде изображений

Осуществление экспорта текущего отношения диаграммы в формат PNG.

5. Глобальный поиск и локализация

Поиск полей, ключевых слов, словаря данных и т.д., как показано ниже:

6. Дополнительные возможности

6.1 Многие языки

Китайский язык, как показано ниже:

Английский язык, как показано ниже:

Настройка языков, как показано ниже:

6.2 По умолчанию создание новых таблиц со списком начальных полей

6.3 Одновременная настройка нескольких областей данных при редактировании таблицы

7. Объяснение открытых лицензий

Моделирование метаданных использует лицензию общественного достояния Mulan, версия 2.0 .

8. Обещания сообществу пользователей

8.1 Подведение итогов исторических обязательств:

В марте 2018 года на встрече Source Creation в Сучжоу было дано пользователям следующее обещание завершить следующие функции:

  • Улучшение качества пользовательского опыта
  • 1-1 Улучшение внешнего вида интерфейса [выполнено]
  • 1-2 Оптимизация пользовательских действий [выполнено]
  • Поддержка большего количества моделей
  • 2-1 Импорт ERWin [не выполнено, решение будет приниматься в зависимости от потребностей пользователей]
  • 2-2 Импорт PowerDesigner [выполнено]
  • Создание небольшого специализированного сообщества [частично выполнено]

8.2 Будущие обязательства

  1. CHINER — это отечественный бесплатный открытый инструмент моделирования баз данных. Исходный код и скомпилированные программы предоставляются бесплатно как для личного использования, так и для организаций.
  2. При вторичной разработке и продаже после этого требуется соблюдать лицензию Муланской общественной лицензии версии 2.0 .
  3. Для удобства пользователей CHINER предоставляет скомпилированные установочные пакеты.
  4. В будущем мы адаптируем продукт под отечественные операционные системы и платформы в зависимости от потребностей пользователей.

9. Продуктовая линия (план)

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

  • Корпоративная Web-версия с локальной установкой: функционал такой же, как и в Web-версии онлайн, но предназначена для локальной установки в корпоративной сети, удовлетворяющей требованиям безопасности данных и кода.

10. Скачивание и общение

10.1 Адрес исходного кода

Передняя часть JS: просмотреть  | Задняя часть Java: просмотреть

10.2 Скачивание и общение

Также доступна на Zhihu: Zhihu

Скачивание установочных файлов и общение перейти для скачивания и общения

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/robergroup-pdmaner.git
git@api.gitlife.ru:oschina-mirror/robergroup-pdmaner.git
oschina-mirror
robergroup-pdmaner
robergroup-pdmaner
master