Вход | Регистрация
    1  2  3  4  5  6  7  8

Фузина как платформа разработки учётных систем

Ø [Волшебник, 26.03.21 - 15:14]
Фузина как платформа разработки учётных систем
Я
   Светлый путь
 
22.03.21 - 04:22
Совершенно случайно наткнулся на многокилометровое обсуждение Фузины. Появилось желание посмотреть, что же это такое на самом деле. Собственно, хотелось бы высказать свои соображения для тех, кто точно так же "наткнётся" на эти ветки.

Платформа Фузины и среда разработки установились на Убунту 20.04 без каких-либо проблем. Предварительно потребовалось установить только Постгре.
В разделе помощи на странице Фузины можно найти примеры реализации простых информационных систем: «Турнирная таблица» и «Управление материальными потоками». Собственно, эти примеры были реализованы, после чего была разработана простейшая база по учёту текущих задач (с двумя таблицами: «основная» таблица Задачи — наименование задачи, описание, приоритет, срок, процент выполнения, дата выполнения, — и «вспомогательная» таблица Приоритеты).

Какие выводы можно сделать?

Начнём с сильных сторон. Платформа интересная, ни с чем подобным работать до этого не приходилось. Разработка, в рамках задач, на решение которых направлена платформа, действительно быстрая. Сама концепция разработки ("декларативная") сильно отличается от привычных "императивных" языков (в первую очередь — встроенного языка 1С:Предприятия), и больше похожа на написание запросов с указанием неких дополнительных параметров. Проверка исходного кода на ошибки происходит до выполнения «сборки», сразу подсвечиваются ошибки.

Теперь о проблемах и трудностях касательно разработки приложений для автоматизации учёта и управления.
Первое. Уровень абстракции Фузины гораздо ниже, чем в 1С:Предприятии. Код описывает классы, таблицы, формы и т. п., но не справочники, документы, журналы документов и пр. То есть это абстракция, понятная для программистов (да и то при условии прохождения соответствующей подготовки — следствие "декларативного подхода" в используемом языке), но не для конечных пользователей информационной системы, когда взаимосвязи и основные механизмы понятны "по логике".
Второе, и это просто проклятие! Всё по-нерусски. И ключевые слова самого языка, и среда разработки. Всё, за исключением документации. Это катастрофа. Необходимость писать prioritetZadachi, procentVypolneniya вместо ПриоритетЗадачи, ПроцентВыполнения вводит в глубочайшую тоску.  Этот пункт, вкупе с первым, означает, что конечные пользователи Фузины не смогут разговаривать с разработчиками «на одном языке» даже теоретически. То есть составление технического задания конечным пользователем в принципе невозможно без участия методолога, "посвящённого" в процесс разработки.
Третье, это тот самый декларативный подход. По сути, программист описывает, как должна работать информационная система, а не последовательный алгоритм действий, который приведёт к требуемому результату. То есть сама логика написания кода больше напоминает составление запросов с указанием дополнительных параметров. Нельзя сказать, что это недостаток системы, но отличие от «классических» языков для программиста разительное.
Ну и четвёртое — это документация. Она неплохая, написана очень толково и достаточно подробно. Но не хватает поиска и индекса по ключевым словам (то, к чему мы так привыкли в 1С:Предприятии — синтаксис-помощник). Например, я хочу добавить условное оформление для строки таблицы на в форме. Скажем, если значение поля ПроцентВыполнения (в фузиновском коде procentVypolneniya, чтоб его!) равно 100, подсвечивать строку каким-либо цветом. Как мне найти в справочной системе информацию о том, как это сделать (такая возможность в платформе есть)?

Что в итоге? Может ли Фузина, хотя бы чисто теоретически, занять место 1С:Предприятия на фронте инструментов разработки учётных систем? Нет, конечно. Если пункты 3 и 4 — "дело наживное", то пункты 1 и 2 подтверждают это абсолютно точно. Сила платформы 1С:Предприятие как раз в том, что она предоставляет, с одной стороны, высокий уровень абстракции — вплоть до категорий предметной области, —  а с другой — понятна конечным пользователям, прошедшим минимальную подготовку.

А любая критика конфигуратора как среды разработки и встроенного языка платформы невозможна и неприемлема до тех пор, пока не появится другая среда и другой язык, где, по крайней мере, ключевые слова и названия переменных можно будет писать по-человечески — ОписаниеЗадачи, а не opisaniyeZadachi. И затем в меню Сборка выбрать пункт Собрать…

Пока же Фузина — это экспериментальный прототип для программистов. Прототип интересный, на основании которого можно было бы сделать реальное решение... Но на текущий момент — именно прототип, заготовка, «научный эксперимент», а никак не конечный продукт.
   Bro
 
701 - 26.03.21 - 09:27
(700) И вы туда же :) Серьезно, откопайте старые ветки, там это обсуждалось ооочень долго.
   Bro
 
702 - 26.03.21 - 09:31
(687) Да, binding'и ловятся в любом месте, где бы не был фокус на форме. Соответственно сканеры настраивают так, чтобы в буфер клавиатуры писать.
   Bro
 
703 - 26.03.21 - 09:34
(681) В смысле? Зайдите в MyCompany в любой заказ и нажмите Печать. Или вы о чем?
   Krendel
 
704 - 26.03.21 - 09:54
Пора отключать ветку
   Krendel
 
705 - 26.03.21 - 09:55
начались предложения бесплатно поработать тестером
   fisher
 
706 - 26.03.21 - 10:08
(691) > фиксированный объем памяти жрут загруженные Java классы платформы (не смотрел но это по идее 150-200мб), а дальше все строго линейно зависит от логики
Если так - то это очень хорошо. Другими словами, получится развернуть даже на пятибаксовой VPS от DO с гигом памяти.
   fisher
 
707 - 26.03.21 - 10:13
Даже если с томкатами и постгрями не впихнется, то в два гига точно должно влезть, что тоже в принципе терпимо.
   fisher
 
708 - 26.03.21 - 10:20
Вы там постарайтесь при разработке платформы учесть и это направление тоже и либо не чрезмерно утяжелять платформу, либо предусмотреть модульную структуру платформы с микроядром.
   Bro
 
709 - 26.03.21 - 10:21
(707) Собственно демка MyCompany на 2гб по моему болтается. Причем она легко хабраэффект выдерживала (с >100 одновременными пользователями и 6 автоматически открываемыми не самыми простыми формами).
   fisher
 
710 - 26.03.21 - 10:23
(708) + Для вашего текущего бизнеса это нафиг не надо, но в качестве относительно легковесного веб-фреймворка она тоже может иметь будущее. Во всяком случае именно это применение приходит в голову первым.
   Bro
 
711 - 26.03.21 - 10:23
(708) Вот с микроядром это тонкий момент, безусловно все по максимуму в lsf'ы выносится, но тут все же полностью на 2 стульях будет тяжело усидеть. Все же сейчас основное направление использование это сложные бизнес-приложения с очень навернутой логикой (представьте по 5 задач в течении 5 лет, сколько там у некоторых заказчиков логики). И важный кейс быстрая разработка этой логики.
   fisher
 
712 - 26.03.21 - 10:25
(711) Жаль.
   Bro
 
713 - 26.03.21 - 10:28
(712) Ну это не значит, что мы не стараемся / не будем стараться. Но все же если стоит вопрос жестко : упрощение, ускорение разработки / увеличение производительности и т.п. vs легковесность, сами понимаете что приходится выбирать. Но пока средневесность вроде удается сохранять.
   fisher
 
714 - 26.03.21 - 10:31
(713) Понятно, что базовая бизнес-логика будет только утяжеляться, обрастая фичами. Но хотя бы ту функциональность, которая половине заказчиков может не понадобиться (если платформу рассматривать как общего назначения), имело бы смысл предусмотреть возможность модульно "отсоединять".
   Genayo
 
716 - 26.03.21 - 15:08
(715) Пруфы есть?
   PR
 
717 - 26.03.21 - 15:09
   H A D G E H O G s
 
718 - 26.03.21 - 15:11
Bro, так у вас трехзвенка или нет? Есть сервер приложения?
   PR
 
720 - 26.03.21 - 15:12
(718) Есть, но он просто посредник между клиентом и скулем
  1  2  3  4  5  6  7  8

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.