LINUX.ORG.RU

Платформа построения платформ (концепт, стек и поиск заинтересованных)

 , , , ,


0

1

Кратенько: Нифига нет, только идея.

Логика такая:

Картиночка для затравки: https://drive.google.com/open?id=18u5Tz-jCC_BHqYSMDBbGB1o1PfWtjvBP

Есть конфигурационный файл, в yaml формате. В нем описана структура такого формата (примерно):

system: users
 name:
  ru: Пользователи
  en: Users
 url: /users

field:

 id: 
  type: id
  
  
 data_create:
  type: date
  format: unixtime

 nickname:
  name:
   ru: Никнейм
   en: Nickname
  type: text
  long: 256
  
 login: 
  name:
    ru: Логин
    en: Login
  type: text
  long: 256

 password: 
  name:
    ru: Email
    en: Email
  type: hash
  
 email: 
  name:
   ru: Email
   en: Email
  type: text
  long: 256
  
 role: 
  name:
   ru: Роль
   en: Role
  type: ID
  table: roles

options:

 filtrable:[nickname, login, email]
 sortable:[nickname, login, email]

На основе такого файла «генерируется»:

- описание коллекции json для хранения в БД

- интерфейс «формате» admin panel

- Раздел, его описание,

- поля для crud

- форма редактирования

- API

Зачем? Можно делать CRM, EКP, бекенд для сайтов. и тд...

Стек:

go - для «единого бинарника», винда и тд.

json/Hjson - «человекочитабельные» конфиг файлы

bootstrap - для админки

grpc - для общения между сервисами

buntdb/tarantino - хранилища

Пинайте)



Последнее исправление: UnnamedPB (всего исправлений: 1)

Пинайте)

Попытка найти задачи под изобретаемый инструмент обречена на провал :)

Фактически эту задачу решают системы миграции. Я сам когда-то подобным баловался, но в итоге отказался от велосипедов.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

У меня первично родилась задача, а потому уже начал думать над реализацией. И вот это «самое простое» техническое решение.

UnnamedPB
() автор топика

Пинайте)

Незачем. Делай, забвение жаждет ещё одного никчёмного проекта 8)

Особенно ржака - имкросервис парсера цен. А микросервиса режекспов у вас там не предвидится?

Deleted
()
Ответ на: комментарий от UnnamedPB

https://ru.wikipedia.org/wiki/Naked_objects

потом подумай:

- как ты в своих микросервисах будешь городить транзакции (распределённые, ага) и сможешь ли вообще с этими хипстерскими бд обеспечить консистентность данных

- как ты будешь работать с деньгами, это такой тип данных, где не допускаются ошибки округления, но не целый, и ещё он не хранится в JSON нативно 8)

- интеграция со сторонними сервисами

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

Deleted
()

Есть конфигурационный файл, в yaml формате

Убейся

Siado ★★★★★
()
Ответ на: комментарий от Deleted

деньгами, это такой тип данных, где не допускаются ошибки округления, но не целый

чаво эйто деньги должны быть особым форматом обязательно? ещё и нецелым? пруф?

system-root ★★★★★
()

Ты не помнишь, почему у меня на тебя стоит комментарий «На&бщик»?

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

Miguel ★★★★★
()

Посмотри Django. Там немного наоборот - из классов модели генерируется схема БД, сервисные функции (тот самый CRUD) и админка.

KivApple ★★★★★
()
Ответ на: комментарий от Deleted

такой тип данных, где не допускаются ошибки округления

double способен хранить без потери точности до 52 бит. Даже если хранить с копейками (2 знака после запятой) это несколько триллионов. Подавляющее большинство организаций не оперируют и никогда не будут оперировать такими суммами.

KivApple ★★★★★
()
Ответ на: комментарий от KivApple

Да это вопрос-детектор, оказывается 8)

Ты, надеюсь, не программистом работаешь?

Deleted
()
Ответ на: комментарий от Deleted

Спасибо.

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

Транзакции и тд ложатся на сами BD, на то у них это уже все из коробки.

Ну вот «микросервисы» это и есть логика для работы со сторонними в том числе.

UnnamedPB
() автор топика
Ответ на: комментарий от Miguel

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

UnnamedPB
() автор топика

На основе такого файла «генерируется»:

Не взлетит.

Зачем? Можно делать CRM, EКP, бекенд для сайтов. и тд...

Погугли слово «фреймворк»

Стек:

Хипсторский

Пинайте)

Хипстеров не бью

foror ★★★★★
()

Смахивает на firebase

vzzo ★★★
()
Ответ на: комментарий от Deleted

с деньгами, это такой тип данных, где не допускаются ошибки округления, но не целый

да ладно: считай в копейках и центах, да и всё

next_time ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.