{"id":13650,"url":"\/distributions\/13650\/click?bit=1&hash=b4a44ea9299acb416ac92e110a87e80acc960de1a8f124e06d52ec1ea62c252a","title":"\u041a\u0430\u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u043e\u043c \u043a\u0430\u043a \u0432 Sims","buttonText":"","imageUuid":"","isPaidAndBannersEnabled":false}

SMC

Доброго времени суток, позвольте рассказать вам о моей разработке - платформе SMC (http://www.smcsystem.ru/).

smc-logo Николай 

SMC, полное имя Оболочка для модульных конструкций (Shell for module constructions) – платформа для создания и запуска модульных приложений. Позволяет создавать из блоков (модулей) приложения в графическом конструкторе.

В основе платформы лежит модульный подход к разработке приложений. Под модульностью тут понимается разделение монолитного приложения на элементы. Существует решения, в той или иной степени реализующих этот подход, например COM технология, микросервисная архитектура и другие. В SMC удалось решить большинство проблем связанных с модульным подходом при сохранении всех преимуществ. Основное отличие платформы — универсальность, простота и динамичность: можно быстро создавать приложения любых типов и сложности, а так же изменять существующие приложения, даже работающие.

Программа полностью бесплатна.

У платформы много особенностей, наиболее значимые:

  • Графический инструмент разработки - приложения создаются и редактируются в графическом конструкторе путем соединения экземпляров модулей (без кода). Это позволяет говорить о платформе как о no-code инструменте разработки.
  • Открытый исходный код (Open source) - все приложения открыты для просмотра и изменения.
  • Полная динамичность — программы можно изменять вручную, в том числе запущенные (на лету). Так же, программы могут изменяться самостоятельно.
  • Плагины - можно добавить плагин (дочернее приложение) к любому приложению.
  • Лаунчер приложений.
  • Встроенный репозиторий приложений и модулей - позволяет распространять модульные программы привычным образом.
  • Возможность создания мультиязыковых приложений (например, одни модули могут быть написана на Java другие на C++). Поддерживаются модули на: Java, Java Script, Python, C++.

Платформа подходит:

Пользователям:

  • Привычное окружение — возможность установки и запуска приложений в лаунчере.

  • Возможность изменить приложения с помощью установки плагинов (дочерних приложений).

  • Можно быстро изменить приложение (в том числе и работающее) в графическом конструкторе.

Программистам:

  • Знакомство с модульным подходом.

  • Распространение приложений на js и python — сейчас их сложно распространять, так как нет полноценной поддержки в сервисах вроде windows store или apple store.

  • Возможность расширять свои и чужие приложения с помощью плагинов.

  • Возможность создания самоизменяемых приложений, что может быть востребовано, например, при создании ИИ.

  • Упрощение разработки:

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

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

    - Все сообщения от модулей можно увидеть — это позволяет организовать отладку даже на работающем приложении.

    - Не нужно тратить ресурсы на создание интерфейса настроек — само приложение есть огромный набор настроек.

  • Поддержка командной работы — платформа позволяет органично организовать работу в команде, например так:

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

    - программист — создает модули с описанным архитектором характеристиками.

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

IT специалистам, администраторам:

  • Глобальная доступность сообщений - открытый доступ к данным, генерируемым модулями. Можно в любое время посмотреть сообщения от любого модуля что позволяет коренным образом решить вопрос с логами.

  • Возможность самостоятельного изменения приложений, например под конкретную ситуацию или новое оборудование.

  • Платформа может использоваться в качестве сервера приложений.

Бизнес:

  • Возможность заказывать разработку отдельных модулей, из которых, затем, самостоятельно создавать приложения. Это позволяет:

    - снизить затраты.

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

  • Снижение зависимости от конкретного разработчика.

  • Контроль разработки на уровне кода приложения.

Уже существует много демонстрационных приложений (более 40) и модулей (более 60).

Сайт проекта: http://www.smcsystem.ru/

Видео с примерами: http://www.smcsystem.ru/#!/video

Если у вас возникнут вопросы или пожелания, пишите, пожалуйста, постараюсь ответить на все.

0
8 комментариев
Написать комментарий...
Евгений

Похоже какая-то мощная разработка, но не понятно о чем речь. Мне кажется, в первом предложении надо было раскрыть зачем это все. Это no-code платформа? Надо было это написать сразу. А то в списке увидел "Доброго времени суток, позвольте рассказать вам о моей разработке", просто ради интереса зашел. C подачей явно что-то не то.
Еще бы было бы здорово увидеть видео либо gif. Сюда их можно было прикрепить?

Ответить
Развернуть ветку
Николай Ульянов
Автор

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

Ответить
Развернуть ветку
Евгений

Посмотрел. Мне кажется без опыта программирования вряд ли что-то получится у человека собрать. Ну и главный вопрос - где это может потребоваться? Мне кажется тема создания настольных приложений не особо актуальна. Сейчас востребовано создание сайтов, веб-приложений и приложений для смартфонов. У Вас есть реальные пользователи?

Ответить
Развернуть ветку
Николай Ульянов
Автор

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

Ответить
Развернуть ветку
Евгений

Ясно. Ну значит надо где-то искать своего пользователя. Может какой-нибудь аккселератор пройти? Я подозреваю, что на этот проект ушло достаточно много времени, жалко будет, если он в результате будет просто простаивать.

Ответить
Развернуть ветку
Николай Ульянов
Автор

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

Ответить
Развернуть ветку
Рушан Натфуллин

Не взлетит короче🤦‍♂️

Ответить
Развернуть ветку
Николай Ульянов
Автор

вышла новая версия 1.3.0. изменения:
   - переработан интерфейс.
   - конструктор стал полноценным векторным редактором, в котором можно рисовать. удобно для декорирования и прототипирования.
   - улучшена производительность.

добавлено видео с вводной информацией: 

Ответить
Развернуть ветку
Читать все 8 комментариев
null